0001200375-20-000033.txt : 20200826 0001200375-20-000033.hdr.sgml : 20200826 20200807211550 ACCESSION NUMBER: 0001200375-20-000033 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 98 CONFORMED PERIOD OF REPORT: 20200630 FILED AS OF DATE: 20200807 DATE AS OF CHANGE: 20200807 FILER: COMPANY DATA: COMPANY CONFORMED NAME: CODEXIS, INC. CENTRAL INDEX KEY: 0001200375 STANDARD INDUSTRIAL CLASSIFICATION: INDUSTRIAL ORGANIC CHEMICALS [2860] IRS NUMBER: 710872999 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-34705 FILM NUMBER: 201086749 BUSINESS ADDRESS: STREET 1: 200 PENOBSCOT DRIVE CITY: REDWOOD CITY STATE: CA ZIP: 94063 BUSINESS PHONE: 650-421-8100 MAIL ADDRESS: STREET 1: 200 PENOBSCOT DRIVE CITY: REDWOOD CITY STATE: CA ZIP: 94063 FORMER COMPANY: FORMER CONFORMED NAME: CODEXIS INC DATE OF NAME CHANGE: 20021022 10-Q 1 cdxs-20200630.htm 10-Q cdxs-20200630
0001200375false2020Q212/31616161P10M33P10M00012003752020-01-012020-06-30xbrli:shares00012003752020-07-31iso4217:USD00012003752020-06-3000012003752019-12-310001200375country:US2020-06-300001200375country:US2019-12-31iso4217:USDxbrli:shares0001200375cdxs:ProductSalesMember2020-04-012020-06-300001200375cdxs:ProductSalesMember2019-04-012019-06-300001200375cdxs:ProductSalesMember2020-01-012020-06-300001200375cdxs:ProductSalesMember2019-01-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMember2020-04-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMember2019-04-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMember2020-01-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMember2019-01-012019-06-3000012003752020-04-012020-06-3000012003752019-04-012019-06-3000012003752019-01-012019-06-300001200375us-gaap:CommonStockMember2020-03-310001200375us-gaap:AdditionalPaidInCapitalMember2020-03-310001200375us-gaap:RetainedEarningsMember2020-03-3100012003752020-03-310001200375us-gaap:CommonStockMember2020-04-012020-06-300001200375us-gaap:AdditionalPaidInCapitalMember2020-04-012020-06-300001200375us-gaap:RetainedEarningsMember2020-04-012020-06-300001200375us-gaap:CommonStockMember2020-06-300001200375us-gaap:AdditionalPaidInCapitalMember2020-06-300001200375us-gaap:RetainedEarningsMember2020-06-300001200375us-gaap:CommonStockMember2019-03-310001200375us-gaap:AdditionalPaidInCapitalMember2019-03-310001200375us-gaap:RetainedEarningsMember2019-03-3100012003752019-03-310001200375us-gaap:CommonStockMember2019-04-012019-06-300001200375us-gaap:AdditionalPaidInCapitalMember2019-04-012019-06-300001200375us-gaap:RetainedEarningsMember2019-04-012019-06-300001200375us-gaap:CommonStockMember2019-06-300001200375us-gaap:AdditionalPaidInCapitalMember2019-06-300001200375us-gaap:RetainedEarningsMember2019-06-3000012003752019-06-300001200375us-gaap:CommonStockMember2019-12-310001200375us-gaap:AdditionalPaidInCapitalMember2019-12-310001200375us-gaap:RetainedEarningsMember2019-12-310001200375us-gaap:CommonStockMember2020-01-012020-06-300001200375us-gaap:AdditionalPaidInCapitalMember2020-01-012020-06-300001200375us-gaap:RetainedEarningsMember2020-01-012020-06-300001200375us-gaap:CommonStockMember2018-12-310001200375us-gaap:AdditionalPaidInCapitalMember2018-12-310001200375us-gaap:RetainedEarningsMember2018-12-3100012003752018-12-310001200375us-gaap:CommonStockMember2019-01-012019-06-300001200375us-gaap:AdditionalPaidInCapitalMember2019-01-012019-06-300001200375us-gaap:RetainedEarningsMember2019-01-012019-06-300001200375cdxs:NestecLtd.NestleHealthSciencesMemberus-gaap:CollaborativeArrangementMembercdxs:CDX6114Member2018-12-012018-12-31cdxs:program0001200375cdxs:TakedaPharmaceuticalCoLtdMember2020-06-012020-06-300001200375cdxs:TakedaPharmaceuticalCoLtdMember2020-03-012020-03-310001200375us-gaap:SeriesAPreferredStockMembercdxs:MolecularAssembliesIncMember2020-06-300001200375us-gaap:SeriesAPreferredStockMembercdxs:MolecularAssembliesIncMember2020-06-012020-06-30cdxs:reportingUnitxbrli:pure0001200375cdxs:PerformanceEnzymesMember2020-06-300001200375cdxs:NovelBiotherapeuticsMember2020-06-300001200375cdxs:CoreSegmentMembercdxs:ProductSalesMember2020-04-012020-06-300001200375cdxs:BiotherapeuticSegmentMembercdxs:ProductSalesMember2020-04-012020-06-300001200375cdxs:CoreSegmentMembercdxs:ProductSalesMember2019-04-012019-06-300001200375cdxs:BiotherapeuticSegmentMembercdxs:ProductSalesMember2019-04-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:CoreSegmentMember2020-04-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMember2020-04-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:CoreSegmentMember2019-04-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMember2019-04-012019-06-300001200375cdxs:CoreSegmentMember2020-04-012020-06-300001200375cdxs:BiotherapeuticSegmentMember2020-04-012020-06-300001200375cdxs:CoreSegmentMember2019-04-012019-06-300001200375cdxs:BiotherapeuticSegmentMember2019-04-012019-06-300001200375cdxs:CoreSegmentMembersrt:AmericasMember2020-04-012020-06-300001200375cdxs:BiotherapeuticSegmentMembersrt:AmericasMember2020-04-012020-06-300001200375srt:AmericasMember2020-04-012020-06-300001200375cdxs:CoreSegmentMembersrt:AmericasMember2019-04-012019-06-300001200375cdxs:BiotherapeuticSegmentMembersrt:AmericasMember2019-04-012019-06-300001200375srt:AmericasMember2019-04-012019-06-300001200375us-gaap:EMEAMembercdxs:CoreSegmentMember2020-04-012020-06-300001200375us-gaap:EMEAMembercdxs:BiotherapeuticSegmentMember2020-04-012020-06-300001200375us-gaap:EMEAMember2020-04-012020-06-300001200375us-gaap:EMEAMembercdxs:CoreSegmentMember2019-04-012019-06-300001200375us-gaap:EMEAMembercdxs:BiotherapeuticSegmentMember2019-04-012019-06-300001200375us-gaap:EMEAMember2019-04-012019-06-300001200375cdxs:CoreSegmentMembercdxs:APACMember2020-04-012020-06-300001200375cdxs:APACMembercdxs:BiotherapeuticSegmentMember2020-04-012020-06-300001200375cdxs:APACMember2020-04-012020-06-300001200375cdxs:CoreSegmentMembercdxs:APACMember2019-04-012019-06-300001200375cdxs:APACMembercdxs:BiotherapeuticSegmentMember2019-04-012019-06-300001200375cdxs:APACMember2019-04-012019-06-300001200375cdxs:CoreSegmentMembercdxs:ProductSalesMember2020-01-012020-06-300001200375cdxs:BiotherapeuticSegmentMembercdxs:ProductSalesMember2020-01-012020-06-300001200375cdxs:CoreSegmentMembercdxs:ProductSalesMember2019-01-012019-06-300001200375cdxs:BiotherapeuticSegmentMembercdxs:ProductSalesMember2019-01-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:CoreSegmentMember2020-01-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMember2020-01-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:CoreSegmentMember2019-01-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMember2019-01-012019-06-300001200375cdxs:CoreSegmentMember2020-01-012020-06-300001200375cdxs:BiotherapeuticSegmentMember2020-01-012020-06-300001200375cdxs:CoreSegmentMember2019-01-012019-06-300001200375cdxs:BiotherapeuticSegmentMember2019-01-012019-06-300001200375cdxs:CoreSegmentMembersrt:AmericasMember2020-01-012020-06-300001200375cdxs:BiotherapeuticSegmentMembersrt:AmericasMember2020-01-012020-06-300001200375srt:AmericasMember2020-01-012020-06-300001200375cdxs:CoreSegmentMembersrt:AmericasMember2019-01-012019-06-300001200375cdxs:BiotherapeuticSegmentMembersrt:AmericasMember2019-01-012019-06-300001200375srt:AmericasMember2019-01-012019-06-300001200375us-gaap:EMEAMembercdxs:CoreSegmentMember2020-01-012020-06-300001200375us-gaap:EMEAMembercdxs:BiotherapeuticSegmentMember2020-01-012020-06-300001200375us-gaap:EMEAMember2020-01-012020-06-300001200375us-gaap:EMEAMembercdxs:CoreSegmentMember2019-01-012019-06-300001200375us-gaap:EMEAMembercdxs:BiotherapeuticSegmentMember2019-01-012019-06-300001200375us-gaap:EMEAMember2019-01-012019-06-300001200375cdxs:CoreSegmentMembercdxs:APACMember2020-01-012020-06-300001200375cdxs:APACMembercdxs:BiotherapeuticSegmentMember2020-01-012020-06-300001200375cdxs:APACMember2020-01-012020-06-300001200375cdxs:CoreSegmentMembercdxs:APACMember2019-01-012019-06-300001200375cdxs:APACMembercdxs:BiotherapeuticSegmentMember2019-01-012019-06-300001200375cdxs:APACMember2019-01-012019-06-3000012003752020-07-01cdxs:ProductSalesMember2020-06-3000012003752021-01-01cdxs:ProductSalesMember2020-06-3000012003752022-01-01cdxs:ProductSalesMember2020-06-300001200375cdxs:ProductSalesMember2020-06-300001200375cdxs:ResearchandDevelopmentRevenueMember2020-07-012020-06-3000012003752021-01-01cdxs:ResearchandDevelopmentRevenueMember2020-06-300001200375cdxs:ResearchandDevelopmentRevenueMember2022-01-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMember2020-06-3000012003752020-07-012020-06-3000012003752021-01-012020-06-3000012003752022-01-012020-06-300001200375us-gaap:StockCompensationPlanMember2020-04-012020-06-300001200375us-gaap:StockCompensationPlanMember2019-04-012019-06-300001200375us-gaap:StockCompensationPlanMember2020-01-012020-06-300001200375us-gaap:StockCompensationPlanMember2019-01-012019-06-300001200375cdxs:GSKMembersrt:MinimumMember2014-07-310001200375srt:MaximumMembercdxs:GSKMember2014-07-310001200375cdxs:GSKMember2019-01-012019-12-310001200375cdxs:GSKMember2019-01-012019-06-300001200375cdxs:GSKMember2019-04-012019-06-300001200375cdxs:GSKMember2020-01-012020-06-300001200375cdxs:GSKMember2020-04-012020-06-300001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2020-04-012020-06-300001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2020-01-012020-06-300001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2019-04-012019-06-300001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2019-01-012019-06-300001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2015-08-310001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMembercdxs:LicenseFeeMember2019-04-012019-06-300001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMembercdxs:LicenseFeeMember2019-01-012019-06-300001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMemberus-gaap:MaintenanceMember2020-04-012020-06-300001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMemberus-gaap:MaintenanceMember2020-01-012020-06-300001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMemberus-gaap:MaintenanceMember2020-06-300001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMemberus-gaap:MaintenanceMember2019-12-310001200375cdxs:MerckMembercdxs:SupplyAgreementMember2015-12-012015-12-310001200375cdxs:MerckMembercdxs:ProductSalesMembercdxs:SupplyAgreementMember2020-04-012020-06-300001200375cdxs:MerckMembercdxs:ProductSalesMembercdxs:SupplyAgreementMember2020-01-012020-06-300001200375cdxs:MerckMembercdxs:ProductSalesMembercdxs:SupplyAgreementMember2019-04-012019-06-300001200375cdxs:MerckMembercdxs:ProductSalesMembercdxs:SupplyAgreementMember2019-01-012019-06-300001200375cdxs:MerckMembercdxs:ProductSalesMembercdxs:SupplyAgreementMember2020-06-300001200375cdxs:MerckMembercdxs:ProductSalesMembercdxs:SupplyAgreementMember2019-12-310001200375cdxs:SupplyAgreementMember2019-12-310001200375cdxs:SupplyAgreementMember2020-06-300001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2017-10-310001200375cdxs:MilestoneOneMembercdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2017-10-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMembercdxs:MilestoneTwoMember2017-10-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2020-04-012020-06-300001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2020-01-012020-06-300001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2019-04-012019-06-300001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2019-01-012019-06-300001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:CDX6114Member2019-01-012019-12-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:ResearchandDevelopmentAgreementMembersrt:MaximumMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2017-10-310001200375cdxs:NestecLtd.NestleHealthSciencesMembersrt:MaximumMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMembercdxs:SalesBasedMilestoneMember2017-10-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMembercdxs:SalesBasedMilestoneMember2017-10-012017-10-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:StrategicCollaborationAgreementMember2017-12-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:StrategicCollaborationAgreementMember2018-09-300001200375cdxs:NestecLtd.NestleHealthSciencesMember2020-04-012020-06-300001200375cdxs:NestecLtd.NestleHealthSciencesMember2020-01-012020-06-300001200375cdxs:NestecLtd.NestleHealthSciencesMember2019-04-012019-06-300001200375cdxs:NestecLtd.NestleHealthSciencesMember2019-01-012019-06-300001200375cdxs:MilestoneOneMembercdxs:PortonMember2018-04-300001200375cdxs:MilestoneOneMembercdxs:PortonMember2018-04-012018-04-300001200375cdxs:PortonMembercdxs:MilestoneTwoMember2018-04-300001200375cdxs:PortonMember2020-04-012020-04-300001200375cdxs:MilestoneThreeMembercdxs:PortonMember2018-04-300001200375cdxs:PortonMember2018-10-012018-12-310001200375cdxs:PortonMember2020-04-012020-06-300001200375cdxs:PortonMember2020-01-012020-06-300001200375cdxs:PortonMember2019-01-012019-06-300001200375cdxs:PortonMember2019-04-012019-06-300001200375cdxs:NovartisMember2019-05-012019-05-310001200375cdxs:NovartisMember2019-05-310001200375cdxs:NovartisMembercdxs:MilestoneOneMember2020-04-300001200375cdxs:NovartisMembercdxs:MilestoneTwoMember2019-05-310001200375cdxs:NovartisMembercdxs:ComputerEquipmentAndSoftwareMember2019-05-310001200375cdxs:NovartisMemberus-gaap:RoyaltyMember2019-05-012019-05-310001200375cdxs:NovartisMember2020-04-012020-06-300001200375cdxs:NovartisMember2020-01-012020-06-300001200375cdxs:NovartisMember2019-01-012019-06-300001200375cdxs:NovartisMember2019-04-012019-06-300001200375cdxs:MilestoneOneMembercdxs:RocheMember2019-12-012019-12-310001200375cdxs:RocheMembercdxs:MilestoneTwoMember2019-12-012019-12-310001200375cdxs:RocheMember2020-04-012020-06-300001200375cdxs:RocheMember2020-01-012020-06-300001200375cdxs:TakedaPharmaceuticalCoLtdMembercdxs:UpFrontPaymentMember2020-03-310001200375cdxs:TakedaPharmaceuticalCoLtdMembercdxs:ResearchAndDevelopmentReimbursementMember2020-03-310001200375cdxs:MilestonePaymentPerTargetGeneMembercdxs:TakedaPharmaceuticalCoLtdMember2020-03-310001200375cdxs:TakedaPharmaceuticalCoLtdMember2020-04-012020-06-300001200375cdxs:TakedaPharmaceuticalCoLtdMember2020-01-012020-06-300001200375cdxs:TakedaPharmaceuticalCoLtdMember2020-06-3000012003752020-07-01cdxs:MolecularAssembliesIncMembersrt:MinimumMembercdxs:MasterCollaborationResearchAgreementMember2020-06-300001200375srt:MaximumMembercdxs:MolecularAssembliesIncMember2021-05-01cdxs:MasterCollaborationResearchAgreementMember2020-06-300001200375cdxs:ResearchAndDevelopmentAgreementTermFixedConsiderationMembercdxs:MolecularAssembliesIncMembercdxs:MasterCollaborationResearchAgreementMember2020-06-012020-06-300001200375cdxs:MolecularAssembliesIncMembercdxs:MasterCollaborationResearchAgreementMembercdxs:ResearchAndDevelopmentAgreementTermBonusGoalMetMember2020-06-012020-06-300001200375cdxs:CommercializationAndEnzymeSupplyAgreementMemberus-gaap:RoyaltyMembercdxs:MolecularAssembliesIncMember2020-06-300001200375cdxs:CommercializationAndEnzymeSupplyAgreementMembercdxs:MolecularAssembliesIncMember2020-06-012020-06-3000012003752020-07-01cdxs:CommercializationAndEnzymeSupplyAgreementMembercdxs:MolecularAssembliesIncMember2020-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:MolecularAssembliesIncMembercdxs:MasterCollaborationResearchAgreementMember2020-04-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:MolecularAssembliesIncMembercdxs:MasterCollaborationResearchAgreementMember2020-01-012020-06-300001200375us-gaap:MoneyMarketFundsMember2020-06-300001200375us-gaap:MoneyMarketFundsMember2019-12-310001200375us-gaap:CashMember2020-06-300001200375us-gaap:CashMember2019-12-310001200375cdxs:MolecularAssembliesIncMember2020-06-300001200375us-gaap:MoneyMarketFundsMemberus-gaap:FairValueInputsLevel1Member2020-06-300001200375us-gaap:MoneyMarketFundsMemberus-gaap:FairValueInputsLevel1Member2019-12-310001200375cdxs:LaboratoryEquipmentMember2020-06-300001200375cdxs:LaboratoryEquipmentMember2019-12-310001200375us-gaap:LeaseholdImprovementsMember2020-06-300001200375us-gaap:LeaseholdImprovementsMember2019-12-310001200375us-gaap:ComputerEquipmentMember2020-06-300001200375us-gaap:ComputerEquipmentMember2019-12-310001200375cdxs:OfficeEquipmentAndFurnitureMember2020-06-300001200375cdxs:OfficeEquipmentAndFurnitureMember2019-12-310001200375us-gaap:ConstructionInProgressMember2020-06-300001200375us-gaap:ConstructionInProgressMember2019-12-310001200375cdxs:A2019PlanMember2019-06-300001200375cdxs:IncentiveStockOptionsMember2020-01-012020-06-300001200375cdxs:NonStatutoryStockOptionsMember2020-01-012020-06-300001200375us-gaap:EmployeeStockOptionMember2020-01-012020-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:EmployeeStockOptionMember2020-01-012020-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:EmployeeStockOptionMember2020-01-012020-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:RestrictedStockUnitsRSUMember2020-01-012020-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:RestrictedStockUnitsRSUMember2020-01-012020-06-30cdxs:installment0001200375us-gaap:PerformanceSharesMembercdxs:A2019PlanMember2020-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:PerformanceSharesMembercdxs:A2019PlanMember2020-01-012020-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:PerformanceSharesMembercdxs:A2019PlanMember2020-01-012020-06-300001200375us-gaap:PerformanceSharesMember2020-01-012020-06-300001200375us-gaap:PerformanceSharesMembercdxs:A2020PSUAndPBOPlanMember2020-06-300001200375cdxs:A2019PSUandPBOPlanMemberus-gaap:PerformanceSharesMember2020-03-310001200375cdxs:A2019PSUandPBOPlanMemberus-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:PerformanceSharesMember2020-01-012020-03-310001200375cdxs:A2019PSUandPBOPlanMemberus-gaap:ShareBasedCompensationAwardTrancheTwoMembersrt:ScenarioForecastMemberus-gaap:PerformanceSharesMember2021-01-012021-03-310001200375us-gaap:PerformanceSharesMembercdxs:A2018PSUandPBOPlanMember2019-03-310001200375us-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:PerformanceSharesMembercdxs:A2018PSUandPBOPlanMember2019-01-012019-03-310001200375us-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:PerformanceSharesMembercdxs:A2018PSUandPBOPlanMember2020-01-012020-03-310001200375us-gaap:ResearchAndDevelopmentExpenseMember2020-04-012020-06-300001200375us-gaap:ResearchAndDevelopmentExpenseMember2019-04-012019-06-300001200375us-gaap:ResearchAndDevelopmentExpenseMember2020-01-012020-06-300001200375us-gaap:ResearchAndDevelopmentExpenseMember2019-01-012019-06-300001200375us-gaap:SellingGeneralAndAdministrativeExpensesMember2020-04-012020-06-300001200375us-gaap:SellingGeneralAndAdministrativeExpensesMember2019-04-012019-06-300001200375us-gaap:SellingGeneralAndAdministrativeExpensesMember2020-01-012020-06-300001200375us-gaap:SellingGeneralAndAdministrativeExpensesMember2019-01-012019-06-300001200375us-gaap:EmployeeStockOptionMember2020-04-012020-06-300001200375us-gaap:EmployeeStockOptionMember2019-04-012019-06-300001200375us-gaap:EmployeeStockOptionMember2019-01-012019-06-300001200375cdxs:RSAsandRSUsMember2020-04-012020-06-300001200375cdxs:RSAsandRSUsMember2019-04-012019-06-300001200375cdxs:RSAsandRSUsMember2020-01-012020-06-300001200375cdxs:RSAsandRSUsMember2019-01-012019-06-300001200375cdxs:PerformanceStockUnitsMember2020-04-012020-06-300001200375cdxs:PerformanceStockUnitsMember2019-04-012019-06-300001200375cdxs:PerformanceStockUnitsMember2020-01-012020-06-300001200375cdxs:PerformanceStockUnitsMember2019-01-012019-06-300001200375cdxs:PerformanceBasedOptionsPBOsMember2020-04-012020-06-300001200375cdxs:PerformanceBasedOptionsPBOsMember2019-04-012019-06-300001200375cdxs:PerformanceBasedOptionsPBOsMember2020-01-012020-06-300001200375cdxs:PerformanceBasedOptionsPBOsMember2019-01-012019-06-300001200375us-gaap:ShareBasedPaymentArrangementNonemployeeMember2020-06-012020-06-300001200375us-gaap:ShareBasedPaymentArrangementNonemployeeMemberus-gaap:StockCompensationPlanMember2020-06-012020-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:ShareBasedPaymentArrangementNonemployeeMemberus-gaap:StockCompensationPlanMember2020-06-012020-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:ShareBasedPaymentArrangementNonemployeeMemberus-gaap:StockCompensationPlanMember2020-06-012020-06-300001200375us-gaap:ShareBasedPaymentArrangementNonemployeeMemberus-gaap:StockCompensationPlanMember2020-01-012020-06-300001200375us-gaap:ShareBasedPaymentArrangementNonemployeeMemberus-gaap:StockCompensationPlanMember2020-04-012020-06-300001200375us-gaap:EmployeeStockOptionMember2020-06-300001200375us-gaap:StockCompensationPlanMember2020-06-300001200375cdxs:RSAsandRSUsMember2020-06-300001200375cdxs:PerformanceStockUnitsMember2020-06-300001200375cdxs:PerformanceBasedOptionsPBOsMember2020-06-300001200375us-gaap:PrivatePlacementMember2019-06-012019-06-300001200375us-gaap:PrivatePlacementMember2019-06-30utr:sqftcdxs:security0001200375cdxs:A200220PenobscotMember2020-06-300001200375cdxs:A400PenoscotMember2020-06-300001200375cdxs:A501ChesapeakeMember2020-06-300001200375cdxs:A101SaginawMember2020-01-310001200375cdxs:SubleaseMember2020-01-310001200375cdxs:SubleaseMember2020-04-3000012003752019-01-012019-12-310001200375us-gaap:DemandDepositsMember2020-06-300001200375us-gaap:DemandDepositsMember2019-12-3100012003752017-02-012017-02-2800012003752017-02-2800012003752017-04-3000012003752017-04-012017-04-300001200375cdxs:April2016Memberus-gaap:SupplyCommitmentMember2020-06-300001200375cdxs:September2019Memberus-gaap:SupplyCommitmentMember2020-06-300001200375cdxs:March2020Memberus-gaap:SupplyCommitmentMember2020-06-300001200375us-gaap:SupplyCommitmentMember2020-06-300001200375cdxs:TermLoanMember2017-06-300001200375us-gaap:RevolvingCreditFacilityMember2017-06-300001200375us-gaap:RevolvingCreditFacilityMember2017-06-302017-06-300001200375cdxs:TermLoanMemberus-gaap:LondonInterbankOfferedRateLIBORMember2017-06-302017-06-300001200375us-gaap:RevolvingCreditFacilityMemberus-gaap:PrimeRateMember2017-06-302017-06-300001200375us-gaap:IndemnificationGuaranteeMember2020-06-300001200375srt:DirectorMember2020-01-012020-06-300001200375srt:ManagementMembercdxs:TransactionsWithAstraZenecaPLCMember2020-04-012020-06-300001200375srt:ManagementMembercdxs:TransactionsWithAstraZenecaPLCMember2020-01-012020-06-300001200375srt:ManagementMembercdxs:TransactionsWithAstraZenecaPLCMember2019-04-012019-06-300001200375srt:ManagementMembercdxs:TransactionsWithAstraZenecaPLCMember2019-01-012019-06-300001200375srt:ManagementMembercdxs:TransactionsWithAstraZenecaPLCMember2020-06-300001200375srt:ManagementMembercdxs:TransactionsWithAstraZenecaPLCMember2019-12-31cdxs:segment0001200375cdxs:CoreSegmentMembercdxs:ProductSalesMemberus-gaap:OperatingSegmentsMember2020-04-012020-06-300001200375cdxs:ProductSalesMemberus-gaap:OperatingSegmentsMember2020-04-012020-06-300001200375cdxs:CoreSegmentMembercdxs:ProductSalesMemberus-gaap:OperatingSegmentsMember2019-04-012019-06-300001200375cdxs:ProductSalesMemberus-gaap:OperatingSegmentsMember2019-04-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:CoreSegmentMemberus-gaap:OperatingSegmentsMember2020-04-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMemberus-gaap:OperatingSegmentsMember2020-04-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMemberus-gaap:OperatingSegmentsMember2020-04-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:CoreSegmentMemberus-gaap:OperatingSegmentsMember2019-04-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMemberus-gaap:OperatingSegmentsMember2019-04-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMemberus-gaap:OperatingSegmentsMember2019-04-012019-06-300001200375cdxs:CoreSegmentMemberus-gaap:OperatingSegmentsMember2020-04-012020-06-300001200375cdxs:BiotherapeuticSegmentMemberus-gaap:OperatingSegmentsMember2020-04-012020-06-300001200375us-gaap:OperatingSegmentsMember2020-04-012020-06-300001200375cdxs:CoreSegmentMemberus-gaap:OperatingSegmentsMember2019-04-012019-06-300001200375cdxs:BiotherapeuticSegmentMemberus-gaap:OperatingSegmentsMember2019-04-012019-06-300001200375us-gaap:OperatingSegmentsMember2019-04-012019-06-300001200375us-gaap:CorporateNonSegmentMember2020-04-012020-06-300001200375us-gaap:CorporateNonSegmentMember2019-04-012019-06-300001200375cdxs:CoreSegmentMembercdxs:ProductSalesMemberus-gaap:OperatingSegmentsMember2020-01-012020-06-300001200375cdxs:ProductSalesMemberus-gaap:OperatingSegmentsMember2020-01-012020-06-300001200375cdxs:CoreSegmentMembercdxs:ProductSalesMemberus-gaap:OperatingSegmentsMember2019-01-012019-06-300001200375cdxs:ProductSalesMemberus-gaap:OperatingSegmentsMember2019-01-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:CoreSegmentMemberus-gaap:OperatingSegmentsMember2020-01-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMemberus-gaap:OperatingSegmentsMember2020-01-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMemberus-gaap:OperatingSegmentsMember2020-01-012020-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:CoreSegmentMemberus-gaap:OperatingSegmentsMember2019-01-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMemberus-gaap:OperatingSegmentsMember2019-01-012019-06-300001200375cdxs:ResearchandDevelopmentRevenueMemberus-gaap:OperatingSegmentsMember2019-01-012019-06-300001200375cdxs:CoreSegmentMemberus-gaap:OperatingSegmentsMember2020-01-012020-06-300001200375cdxs:BiotherapeuticSegmentMemberus-gaap:OperatingSegmentsMember2020-01-012020-06-300001200375us-gaap:OperatingSegmentsMember2020-01-012020-06-300001200375cdxs:CoreSegmentMemberus-gaap:OperatingSegmentsMember2019-01-012019-06-300001200375cdxs:BiotherapeuticSegmentMemberus-gaap:OperatingSegmentsMember2019-01-012019-06-300001200375us-gaap:OperatingSegmentsMember2019-01-012019-06-300001200375us-gaap:CorporateNonSegmentMember2020-01-012020-06-300001200375us-gaap:CorporateNonSegmentMember2019-01-012019-06-300001200375us-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMembercdxs:CustomerAMember2020-04-012020-06-300001200375us-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMembercdxs:CustomerAMember2019-04-012019-06-300001200375us-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMembercdxs:CustomerAMember2020-01-012020-06-300001200375us-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMembercdxs:CustomerAMember2019-01-012019-06-300001200375us-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMembercdxs:CustomerBMember2020-04-012020-06-300001200375us-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMembercdxs:CustomerBMember2019-04-012019-06-300001200375us-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMembercdxs:CustomerBMember2020-01-012020-06-300001200375us-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMembercdxs:CustomerBMember2019-01-012019-06-300001200375us-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMembercdxs:CustomerCMember2019-04-012019-06-300001200375us-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMembercdxs:CustomerDMember2020-01-012020-06-300001200375cdxs:CustomerEMemberus-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMember2020-04-012020-06-300001200375cdxs:CustomerEMemberus-gaap:SalesRevenueProductLineMemberus-gaap:CustomerConcentrationRiskMember2020-01-012020-06-300001200375us-gaap:CustomerConcentrationRiskMembercdxs:CustomerAMemberus-gaap:AccountsReceivableMember2020-01-012020-06-300001200375us-gaap:CustomerConcentrationRiskMembercdxs:CustomerAMemberus-gaap:AccountsReceivableMember2019-01-012019-12-310001200375us-gaap:CustomerConcentrationRiskMemberus-gaap:AccountsReceivableMembercdxs:CustomerBMember2020-01-012020-06-300001200375us-gaap:CustomerConcentrationRiskMemberus-gaap:AccountsReceivableMembercdxs:CustomerBMember2019-01-012019-12-310001200375us-gaap:CustomerConcentrationRiskMembercdxs:CustomerDMemberus-gaap:AccountsReceivableMember2020-01-012020-06-300001200375cdxs:CustomerFMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:AccountsReceivableMember2020-01-012020-06-300001200375cdxs:PerformanceEnzymesMemberus-gaap:OperatingSegmentsMember2020-06-300001200375cdxs:NovelBiotherapeuticsMemberus-gaap:OperatingSegmentsMember2020-06-300001200375us-gaap:OperatingSegmentsMember2020-06-300001200375us-gaap:FinancingReceivables30To59DaysPastDueMember2020-06-300001200375us-gaap:FinancingReceivables60To89DaysPastDueMember2020-06-300001200375us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember2020-06-300001200375us-gaap:FinancingReceivables30To59DaysPastDueMember2019-12-310001200375us-gaap:FinancingReceivables60To89DaysPastDueMember2019-12-310001200375us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember2019-12-31

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
Washington, D.C. 20549
FORM 10-Q
(Mark One)
QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the quarterly period ended June 30, 2020
or
TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the transition period from              to             
Commission file number: 001-34705
___________________________
Codexis, Inc.
(Exact name of registrant as specified in its charter)
_____________________________________________
Delaware 71-0872999
(State or other jurisdiction of incorporation or organization) (I.R.S. Employer Identification No.)

200 Penobscot Drive,Redwood City,California 94063
(Address of principal executive offices) (Zip Code)


Registrant's telephone number, including area code: (650) 421-8100

Securities registered pursuant to Section 12(b) of the Act:

Title of Each ClassTradingName of Each Exchange on Which Registered
Symbol(s)
Common Stock, par value $0.0001 per shareCDXSThe Nasdaq Global Select Market
Indicate by check mark whether the registrant: (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the Registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.    Yes     No  
Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (§232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).    Yes      No  
Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of "large accelerated filer," "accelerated filer," "smaller reporting company" and "emerging growth company" in Rule 12b-2 of the Exchange Act.
Large accelerated filerAccelerated filer
Non-accelerated filerSmaller reporting company
Emerging growth company
If an emerging growth company, indicate by check mark if the registrant has elected not to use the transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.
Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).    Yes      No  
As of July 31, 2020, there were 59,126,820 shares of the registrant’s Common Stock, par value $0.0001 per share, outstanding.





Codexis, Inc.
Quarterly Report on Form 10-Q
For the Quarter Ended June 30, 2020


TABLE OF CONTENTS


2



PART I. FINANCIAL INFORMATION

Item 1. Financial Statements
Codexis, Inc.
Condensed Consolidated Balance Sheets
(Unaudited)
(In Thousands, Except Per Share Amounts)
June 30, 2020December 31, 2019
Assets
Current assets:
Cash and cash equivalents$75,649  $90,498  
Restricted cash, current619  661  
Financial assets:
Accounts receivable14,035  9,063  
Contract assets  1,027  
Unbilled receivables12,412  10,099  
   Total Financial assets26,447  20,189  
        Less: allowances(34) (34) 
        Total Financial assets, net26,413  20,155  
Inventories686  371  
Prepaid expenses and other current assets3,131  2,520  
Total current assets106,498  114,205  
Restricted cash1,062  1,062  
Investment in Equity Securities1,000    
Right-of-use assets - Operating leases, net22,599  23,837  
Right-of-use assets - Finance leases, net170  268  
Property and equipment, net6,822  6,282  
Goodwill3,241  3,241  
Other non-current assets391  178  
Total assets$141,783  $149,073  
Liabilities and Stockholders' Equity
Current liabilities:
Accounts payable$2,637  $2,621  
Accrued compensation4,979  5,003  
Other accrued liabilities6,943  6,540  
Current portion of lease obligations - Operating leases2,482  1,107  
Current portion of lease obligations - Finance leases  60  
Deferred revenue1,903  57  
Total current liabilities18,944  15,388  
Deferred revenue, net of current portion3,142  1,987  
Long-term lease obligations - Operating leases23,665  24,951  
Other long-term liabilities1,246  1,230  
Total liabilities46,997  43,556  
Commitments and Contingencies (Note 11)
Stockholders' equity:
Preferred stock, $0.0001 par value per share; 5,000 shares authorized, none issued and outstanding
    
Common stock, $0.0001 par value per share; 100,000 shares authorized;
 59,125 shares and 58,877 shares issued and outstanding at June 30, 2020 and December 31, 2019, respectively
6  6  
Additional paid-in capital451,185  447,920  
Accumulated deficit(356,405) (342,409) 
Total stockholders' equity94,786  105,517  
Total liabilities and stockholders' equity$141,783  $149,073  

See accompanying notes to the unaudited condensed consolidated financial statements
3



Codexis, Inc.

Condensed Consolidated Statements of Operations
(Unaudited)
(In Thousands, Except Per Share Amounts)

 Three Months Ended June 30,Six Months Ended June 30,
 2020201920202019
Revenues:
Product revenue$4,504  $6,249  $9,604  $14,236  
Research and development revenue10,463  6,070  20,033  13,665  
Total revenues14,967  12,319  29,637  27,901  
Costs and operating expenses:
Cost of product revenue1,699  2,772  4,240  7,163  
Research and development10,853  8,274  21,820  16,290  
Selling, general and administrative8,522  7,896  17,512  16,311  
Total costs and operating expenses21,074  18,942  43,572  39,764  
Loss from operations(6,107) (6,623) (13,935) (11,863) 
Interest income57  220  323  450  
Other income (expenses), net13  (88) (72) (211) 
Loss before income taxes(6,037) (6,491) (13,684) (11,624) 
Provision for income taxes307  16  312  19  
Net loss$(6,344) $(6,507) $(13,996) $(11,643) 
Net loss per share, basic and diluted$(0.11) $(0.12) $(0.24) $(0.21) 
Weighted average common stock shares used in computing net loss per share, basic and diluted59,000  54,954  58,944  54,564  



See accompanying notes to the unaudited condensed consolidated financial statements
4



Codexis, Inc.

Condensed Consolidated Statements of Stockholders' Equity
(Unaudited)
(In Thousands)

Common StockAdditional
paid-in
Capital
Accumulated DeficitTotal Stockholders' Equity
Three months ended June 30, 2020SharesAmount
Balance as of April 1, 202059,017  $6  $449,121  $(350,061) $99,066  
Exercise of stock options27  —  158  —  158  
Release of stock awards81  —  —  —  —  
Employee stock-based compensation—  —  1,935  —  1,935  
Non-employee stock-based compensation—  —  4  —  4  
Taxes paid related to net share settlement of equity awards  —  (33) —  (33) 
Net loss—  —  —  (6,344) (6,344) 
Balance as of June 30, 202059,125  $6  $451,185  $(356,405) $94,786  


Common StockAdditional
paid-in
Capital
Accumulated DeficitTotal Stockholders' Equity
Three months ended June 30, 2019SharesAmount
Balance as of April 1, 201954,541  $5  $386,815  $(335,610) $51,210  
Exercise of stock options310  —  2,067  —  2,067  
Release of stock awards40  —  —  —  —  
Employee stock-based compensation—  —  1,988  —  1,988  
Issuance of common stock, net of issuance costs of $74
3,049  1  49,925  —  49,926  
Net loss—  —  —  (6,507) (6,507) 
Balance as of June 30, 201957,940  $6  $440,795  $(342,117) $98,684  


See accompanying notes to the unaudited condensed consolidated financial statements
5




Codexis, Inc.
Condensed Consolidated Statements of Stockholders' Equity
(Unaudited)
(In Thousands)

Common StockAdditional paid-in CapitalAccumulated DeficitTotal Stockholders' Equity
Six months ended June 30, 2020SharesAmount
Balance as of January 1, 202058,877  $6  $447,920  $(342,409) $105,517  
Exercise of stock options32  —  197  —  197  
Release of stock awards300  —  —  —  —  
Employee stock-based compensation—  —  4,104—  4,104  
Non-employee stock-based compensation—  —  4—  4  
Taxes paid related to net share settlement of equity awards(84) —  (1,040) —  (1,040) 
Net loss—  —  —  (13,996) (13,996) 
Balance as of June 30, 202059,125  $6  $451,185  $(356,405) $94,786  


Common StockAdditional paid-in CapitalAccumulated DeficitTotal Stockholders' Equity
Six months ended June 30, 2019SharesAmount
Balance as of January 1, 201954,065  $5  $386,775  $(330,474) $56,306  
Exercise of stock options529  —  2,843  —  2,843  
Release of stock awards441  —  —  —  —  
Employee stock-based compensation—  —  4,051  —  4,051  
Taxes paid related to net share settlement of equity awards(144) —  (2,799) —  (2,799) 
Issuance of common stock, net of issuance costs of $74
3,049  1  49,925  —  49,926  
Net loss—  —  —  (11,643) (11,643) 
Balance as of June 30, 201957,940  $6  $440,795  $(342,117) $98,684  


See accompanying notes to the unaudited condensed consolidated financial statements
6



Codexis, Inc.
Condensed Consolidated Statements of Cash Flows
(Unaudited, in Thousands)
Six Months Ended June 30,
 20202019
Operating activities:
Net loss$(13,996) $(11,643) 
Adjustments to reconcile net loss to net cash used in operating activities:
Depreciation900  693  
Amortization expense - right-of-use assets - operating and finance leases1,336  1,486  
Gain on disposal of property and equipment  (1) 
Stock-based compensation4,108  4,051  
Unrealized loss on investment in equity securities  168  
Changes in operating assets and liabilities:
Accounts receivable, net(4,972) (262) 
Contract assets1,027  35  
Unbilled receivables(2,313) 365  
Inventories(315) (131) 
Prepaid expenses and other current assets(611) (882) 
Other non-current assets(213) 59  
Accounts payable(19) (1,625) 
Accrued compensation(24) (721) 
Other accrued liabilities1,863  402  
Other long-term liabilities(1,270) (715) 
Deferred revenue3,001  812  
Net cash used in operating activities(11,498) (7,909) 
Investing activities:
Purchase of property and equipment(1,490) (1,258) 
Proceeds from disposal of property and equipment  1  
Investment in equity securities(1,000)   
Net cash used in investing activities(2,490) (1,257) 
Financing activities:
Proceeds from exercises of stock options197  2,843  
Proceeds from issuance of common stock in connection with private placement  50,000  
Costs incurred in connection with private placement  (74) 
Payments of lease obligations - Finance leases(60) (119) 
Taxes paid related to net share settlement of equity awards(1,040) (2,799) 
Net cash provided by (used in) financing activities(903) 49,851  
Net increase (decrease) in cash, cash equivalents and restricted cash(14,891) 40,685  
Cash, cash equivalents and restricted cash at the beginning of the period92,221  54,485  
Cash, cash equivalents and restricted cash at the end of the period$77,330  $95,170  
Supplemental disclosure of cash flow information
Interest paid$4  $9  
Income taxes paid$5  $  
Purchase of property and equipment recorded in accounts payable and accrued expenses$90  $773  

7





The following table provides a reconciliation of cash, cash equivalents and restricted cash reported within the unaudited condensed consolidated balance sheets as of June 30, 2020 and 2019 to the total of the same such amounts shown above:


 June 30,
 20202019
Cash and cash equivalents$75,649  $93,421  
Restricted cash, current and non-current 1,681  1,749  
Total cash, cash equivalents and restricted cash at the end of the period$77,330  $95,170  

See accompanying notes to the unaudited condensed consolidated financial statements
8



Codexis Inc.

Notes to Condensed Consolidated Financial Statements
(Unaudited)
Note 1. Description of Business
In these notes to the unaudited condensed consolidated financial statements, the “Company,” “we,” “us,” and “our” refers to Codexis, Inc. and its subsidiaries on a consolidated basis.
We discover, develop and sell proteins that deliver value to our clients in a growing set of industries. We view proteins as a vast untapped source of value-creating materials, and we are using our proven technologies, which we have been continuously improving since our inception in 2002, to commercialize an increasing number of novel proteins, both as proprietary Codexis products and in partnership with our customers.
We are a pioneer in the harnessing of computational technologies to drive biology advancements. Since 2002, we have made substantial investments in the development of our CodeEvolver® protein engineering technology platform, the primary source of our competitive advantage. Our technology platform is powered by proprietary, artificial intelligence-based, computational algorithms that rapidly mine our large and continuously growing library of protein variants’ performance attributes. These computational outputs enable increasingly reliable predictions for next generation protein variants to be engineered, enabling delivery of targeted performance enhancements in a time-efficient manner. In addition to its computational prowess, our CodeEvolver® protein engineering technology platform integrates additional modular competencies, including robotic high-throughput screening and genomic sequencing, organic chemistry and process development which are all coordinated to create our novel protein innovations.
Our approach to developing commercially viable biocatalytic manufacturing processes begins by conceptually designing the most cost-effective and practical process for a targeted product. We then develop optimized protein catalysts to enable that process design, using our CodeEvolver® protein engineering platform technology. Engineered protein catalyst candidates - many thousands for each protein engineering project - are then rapidly screened and validated in high throughput screening under relevant manufacturing operating conditions. This approach results in an optimized protein catalyst enabling cost-efficient processes that typically are relatively simple to run in conventional manufacturing equipment. This also allows for the efficient technical transfer of our process to our manufacturing partners.
The successful embodiment of our CodeEvolver® protein engineering technology platform in commercial manufacturing processes requires well-integrated expertise in a number of technical disciplines. In addition to those directly involved in practicing our CodeEvolver® protein engineering platform technology, such as molecular biology, enzymology, microbiology, cellular engineering, metabolic engineering, bioinformatics, biochemistry and high throughput analytical chemistry, our process development projects also involve integrated expertise in organic chemistry, chemical process development, chemical engineering, fermentation process development and fermentation engineering. Our integrated, multi-disciplinary approach to biocatalyst and process development is a critical success factor for the Company.
We initially commercialized our CodeEvolver® protein engineering technology platform and products in the pharmaceuticals market, which remains a primary business focus. Our customers, which include many large global pharmaceutical companies, use our technology, products and services in their manufacturing processes and process development. We have also licensed our proprietary CodeEvolver® protein engineering technology platform to global pharmaceutical companies so that they may in turn use this technology to engineer enzymes for their own businesses. Most recently, in May 2019, we entered into a Platform Technology Transfer and License Agreement (the “Novartis CodeEvolver® Agreement”) with Novartis Pharma AG (“Novartis”). The Novartis CodeEvolver® Agreement allows Novartis to use our proprietary CodeEvolver® protein engineering platform technology in the field of human healthcare.
As evidence of our strategy to extend our technology beyond pharmaceutical manufacturing, we have also used the technology to develop protein catalysts and industrial enzymes for use in a wider set of industrial markets. These target industries consist of several large market verticals, including food and food ingredients, animal feed, consumer care, flavors, fragrances and agricultural chemicals. In addition, we are using our technology to develop enzymes for customers using next generation sequencing ("NGS") and polymerase chain reaction ("PCR/qPCR") for in vitro molecular diagnostic and genomic research applications. In December 2019, we entered into a license agreement to provide Roche Sequencing Solutions, Inc. (“Roche”) with our first enzyme for this target market, the Company's EvoT4™ DNA ligase. In June 2020, we entered into a co-marketing and enzyme supply collaboration agreement with Alphazyme LLC for the production and co-marketing of enzymes for life science applications including, initially, high-fidelity DNA polymerase, T7 RNA polymerase and reverse transcriptase enzymes.
9



We have also begun using the CodeEvolver® protein engineering technology platform to develop early stage, novel biotherapeutic product candidates, both for our customers and for our own business. In October 2017, we entered into the "Nestlé Agreement” with Nestlé Health Science to advance CDX-6114, our enzyme biotherapeutic product candidate for the potential treatment of phenylketonuria ("PKU"). PKU is an inherited metabolic disorder in which the enzyme that converts the essential amino acid phenylalanine into tyrosine is deficient. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive license to develop and commercialize CDX-6114. In March 2020, we entered into a Strategic Collaboration and License Agreement (“Takeda Agreement”) with Shire Human Genetic Therapies, Inc., a wholly-owned subsidiary of Takeda Pharmaceutical Company Limited (“Takeda”), for the research and development of novel gene therapies for certain disease indications, including the treatment of lysosomal storage disorders and blood factor deficiencies.
Below are brief descriptions of our business segments:
Performance Enzymes
We initially commercialized our CodeEvolver® protein engineering technology platform and products in the pharmaceuticals market, and to date this continues to be our largest market served. Our customers, which include many large global pharmaceutical companies, use our technology, products and services in their manufacturing processes and process development. We have also used the technology to develop customized enzymes for use in other industrial markets. These markets consist of several large industrial verticals, including food and food ingredients, animal feed, consumer care, flavors, fragrances, and agricultural chemicals. We also use our technology to develop enzymes for customers using NGS and PCR/qPCR for in vitro molecular diagnostic and molecular biology research applications.
Novel Biotherapeutics
We are also targeting new opportunities in the pharmaceutical industry to discover, improve, and/or develop biotherapeutic drug candidates. We believe that our CodeEvolver® protein engineering platform technology can be used to discover novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. Similarly, we believe that we can deploy our platform technology to improve specific characteristics of a customer’s pre-existing biotherapeutic drug candidate, such as its activity, stability or immunogenicity.
Our first lead program was for the potential treatment of hyperphenylalaninemia (“HPA”) (also referred to as PKU) in humans. PKU is an inherited metabolic disorder in which the enzyme that converts the essential amino acid phenylalanine into tyrosine is deficient. In October 2017, we announced a global development, option and license agreement with Nestlé Health Science to advance CDX-6114, our own novel orally administrable enzyme therapeutic candidate for the potential treatment of PKU. In July 2018, we announced that we had dosed the first subjects in a first-in-human Phase 1a dose-escalation trial with CDX-6114, which was conducted in Australia. In November 2018, we announced top-line results from the Phase 1a study in healthy volunteers with CDX-6114. In December 2018, Nestlé Health Science became obligated to pay us an additional $1.0 million within 60 days after the achievement of a milestone relating to formulation of CDX-6114. In January 2019, we received notice from the U.S. Food and Drug Administration that it had completed its review of our investigational drug application for CDX-6114 and concluded that we may proceed with the proposed Phase 1b multiple ascending dose study in healthy volunteers in the United States. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive, worldwide, royalty-bearing, sub-licensable license for the global development and commercialization of CDX-6114 for the management of PKU. In January 2020, we and Nestlé Health Science entered into a development agreement pursuant to which we and Nestlé Health Science are collaborating to advance a lead candidate targeting a gastro-intestinal disorder discovered through our Strategic Collaboration Agreement into pre-clinical and early clinical studies. The Strategic Collaboration Agreement was extended through December 2021. Using our CodeEvolver® protein engineering platform technology, we have also developed a pipeline of other biotherapeutic drug candidates, all of which are in preclinical development.
Our most recent achievement in novel biotherapeutics came in March 2020, when we announced a strategic collaboration and license agreement with Takeda in which we will collaborate with Takeda to research and develop protein sequences for use in gene therapy products for certain disease indications. Under the terms of the Takeda Agreement, we will generate novel gene sequences encoding protein variants tailored to enhance efficacy as a result of increased activity, stability, and cellular uptake using our CodeEvolver® protein engineering platform. Takeda will combine these improved transgenes with its gene therapy capabilities to generate novel candidates for the treatment of rare genetic disorders. We are currently collaborating on three initial programs for the treatment of Fabry disease, Pompe disease, and an unnamed blood factor deficiency. The Company is responsible for the creation of novel enzyme sequences for advancement as gene therapies into pre-clinical development. Takeda is responsible for the pre-clinical and clinical development and commercialization of gene therapy products resulting from the collaboration programs. Under the terms of the agreement, in addition to the three initial programs, Takeda may initiate up to four additional programs for separate target indications. In March 2020, we began research and development activities under the program plans and received a $8.5 million one-time, non-refundable cash payment.
10




We expect to continue to make additional investments in our pipeline with the aim of advancing additional product candidates targeting other therapeutic areas.
For additional discussion of our business segments, see Note 13, "Segment, Geographical and Other Revenue Information."

Business Update Regarding COVID-19
We are subject to risks and uncertainties as a result of the current COVID-19 pandemic. The COVID-19 pandemic has presented a substantial public health and economic challenge around the world and is affecting our employees, communities and business operations, as well as the U.S. economy and other economies worldwide. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition will depend on future developments that are highly uncertain and cannot be accurately predicted, including the duration and severity of the pandemic and the extent and severity of the impact on our customers, new information that may emerge concerning COVID-19, the actions taken to contain it or treat its impact and the economic impact on local, regional, national and international markets.
To date, we and our collaboration partners have been able to continue to supply our enzymes to our customers worldwide. However, we are dependent on our manufacturing and logistics partners and consequently, disruptions in operations of our partners and customers may affect our ability to supply enzymes to our customers. Furthermore, our ability to provide future research and development ("R&D") services will continue to be impacted as a result of governmental orders and any disruptions in operations of our customers with whom we collaborate. We are continuing to assess the potential impact of the COVID-19 pandemic on our business and operations, including our product sales, R&D service revenue, expenses and manufacturing. However, we are unable to fully determine and quantify the extent to which this pandemic affected our total revenues due to complex accounting judgments.
In the U.S., the impact of COVID-19, including governmental orders ("Orders") governing the operation of businesses during the pandemic, caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Research and development operations for all other projects were temporarily suspended from mid-March 2020 through the end of April in accordance with these Orders. In May 2020, we initiated limited operations and gradually ramped up our R&D operations so that we are currently utilizing the majority of our normal R&D capacity. Additionally, we have resumed small scale manufacturing at our Redwood City pilot plant in May 2020.
Our future results of operations and liquidity could be adversely impacted by delays in payments of outstanding receivable amounts beyond normal payment terms, supply chain disruptions and uncertain demand, and the impact of any initiatives or programs that we may undertake to address financial and operations challenges faced by our customers. As of the date of issuance of the unaudited condensed consolidated financial statements, the extent to which the COVID-19 pandemic may materially impact our financial condition, liquidity, or results of operations is uncertain in the future.

Recent Investing Activities
In June 2020, we entered into a Master Collaboration and Research Agreement with Molecular Assemblies, Inc. (“MAI”), a privately held company, to engineer enzymes to deliver differentiated and cost-effective solutions for the enzymatic synthesis of DNA (“MAI Agreement”). Under an associated stock purchase agreement, we purchased 1,587,050 shares of MAI's Series A preferred stock for $1.0 million, and in connection with our investment, John Nicols, our chief executive officer joined MAI’s board of directors. Under the MAI Agreement, for a fixed monthly fee payable in shares of Series A preferred stock, we will apply our CodeEvolver® protein engineering platform technology to improve the DNA polymerase enzymes that are critical for enzymatic DNA synthesis. Through the provision of these services, we are eligible to earn additional shares of Series A preferred stock. MAI will combine its advanced chemistries with our enzymes to drive the process to commercialization. For additional information, see Note 12, "Related Party Transactions," in the Notes to Unaudited Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q.

11


Note 2. Basis of Presentation and Summary of Significant Accounting Policies
Basis of Presentation and Principles of Consolidation
The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States of America ("GAAP") and the applicable rules and regulations of the Securities and Exchange Commission ("SEC") for interim financial information. Accordingly, they do not include all the information and notes required by GAAP for complete financial statements. These interim unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto contained in our Annual Report on Form 10-K for the year ended December 31, 2019. The condensed consolidated balance sheet at December 31, 2019 has been derived from the audited consolidated financial statements at that date, but does not include all disclosures, including notes, required by GAAP for complete financial statements. The significant accounting policies used in preparation of the unaudited condensed consolidated financial statements for the three and six months ended June 30, 2020 are consistent with those discussed in Note 2 to the audited consolidated financial statements in the Company’s 2019 Annual Report on Form 10-K and are updated below as necessary.
Certain prior year amounts have been reclassified to conform to 2020 presentation. In June 2016, the Financial Accounting Standards Board (“FASB”) issued guidance requiring implementation of a new impairment model applicable to financial assets measured at amortized cost which, among other things required that accounts receivable, contract assets, unbilled receivables and related allowances be reclassified as financial assets.
Except as noted above, the unaudited condensed consolidated financial statements have been prepared on the same basis as the audited consolidated financial statements and, in the opinion of management, reflect all adjustments of a normal recurring nature considered necessary to present fairly our financial position as of June 30, 2020, results of our operations for the three and six months ended June 30, 2020 and 2019, changes in stockholders' equity for the three and six months ended June 30, 2020 and 2019, and cash flows for the six months ended June 30, 2020 and 2019. The interim results are not necessarily indicative of the results for any future interim period or for the entire year. The results of the six months ended June 30, 2020 reflect the adoption of the accounting standards including: Accounting Standard Update ("ASU") 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments which added a new impairment model applicable to our financial assets measured at amortized cost, and (ii) ASU No. 2017-04, Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment, which adjusts testing for goodwill impairment. See "Recently adopted accounting pronouncements" for details regarding the adoption of these standards.
The unaudited interim condensed consolidated financial statements include the accounts of Codexis, Inc. and its wholly owned subsidiaries. All significant intercompany balances and transactions have been eliminated in consolidation.
Use of Estimates
The preparation of our unaudited condensed consolidated financial statements in conformity with GAAP requires us to make estimates, judgments and assumptions that may affect the reported amounts of assets, liabilities, equity, revenues and expenses and related disclosure of contingent assets and liabilities. We regularly assess these estimates which primarily affect revenue recognition, the interest rate used to adjust the promised amount of consideration for the effects of significant financial assets (comprised of accounts receivable, contract assets, and unbilled receivables), inventories, goodwill arising out of business acquisitions, accrued liabilities, stock awards, and the valuation allowances associated with deferred tax assets. Actual results could differ from those estimates and such differences may be material to the unaudited condensed consolidated financial statements. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition, including sales, expenses, reserves and allowances, manufacturing, research and development costs and employee-related amounts, will depend on future developments that are highly uncertain, including as a result of new information that may emerge concerning COVID-19 and the actions taken to contain or treat COVID-19, as well as the economic impact on local, regional, national and international customers, markets and economies.
Financial assets and Allowances
We currently sell enzymes primarily to pharmaceutical and fine chemicals companies throughout the world by the extension of trade credit terms based on an assessment of each customer's financial condition. Trade credit terms are generally offered without collateral and may include an insignificant discount for prompt payment for specific customers. To manage our credit exposure, we perform ongoing evaluations of our customers' financial conditions. In addition, accounts receivable include amounts owed to us under our collaborative research and development agreements. We recognize accounts receivable at invoiced amounts and we maintain a valuation allowance as follows:
12


Allowance for credit losses from January 1, 2020
On and subsequent to January 1, 2020, our financial results reflect an impairment model (known as the “current expected credit loss model” or “CECL”) based on estimates and forecasts of future conditions requiring recognition of a lifetime of expected credit losses at inception on our financial assets measured at amortized costs which is comprised of accounts receivable, contract assets, and unbilled receivables. We have determined that our financial assets share similar risk characteristics including: (i) customer origination in the pharmaceutical and fine chemicals industry, (ii) similar historical credit loss pattern of customers (iii) no meaningful trade receivable differences in terms, (iv) similar historical credit loss experience and (v) our belief that the composition of certain assets are comparable to our historical portfolio used to develop loss history. As a result, we measured the allowance for credit loss (“ACL”) on a collective basis. Our ACL methodology considers how long the asset has been past due, the financial condition of the customers, which includes ongoing quarterly evaluations and assessments of changes in customer credit ratings, and other market data that we believe are relevant to the collectability of the assets. Nearly all financial assets are due from customers that are highly rated by major rating agencies and have a long history of no credit loss. We derive our ACL by establishing an impairment rate attributable to assets not yet identified as impaired.
We derive our ACL by initially relying on our historical financial asset loss rate which contemplates the full contractual life of the assets sharing similar risk characteristics, adjusted to reflect (i) the extent to which we have determined current conditions differ from the conditions that existed for the period over which historical loss information was evaluated and (ii) by taking into consideration the changes in certain macroeconomic historical and forecasted information. We apply the ACL to past due financial assets and record charges to the ACL as a provision to credit loss expense in the Statement of Operations. Financial assets we identify as uncollectible are also charged against the ACL. We adjust the impairment rate to reflect the extent to which we have determined current conditions differ from the conditions that existed for the period over which historical loss information was evaluated. Adjustments to historical loss information may be qualitative or quantitative in nature and reflect changes related to relevant data.
In the three and six months ended June 30, 2020, inputs to our CECL forecast incorporated forward-looking adjustments associated with the COVID-19 pandemic which we believe are appropriate to incorporate due to the uncertainty of the economic impact on cash flows from our financial assets.
Allowance for credit losses before January 1, 2020
Prior to January 1, 2020, the allowances for doubtful accounts reflected our best estimates of probable losses inherent in our accounts receivable, contract assets, and unbilled receivables balances. The allowance determination was based on known troubled accounts, historical experience, and other currently available evidence. Uncollectible accounts receivable were written off against the allowance for doubtful accounts when all efforts to collect them have been exhausted. Recoveries were recognized when they were received. Actual collection losses may differ from our estimates and could be material to our consolidated financial position, results of operations, and cash flows.
Investment in Equity Securities
We own an equity investment in Molecular Assemblies, Inc. (“MAI”) which is a privately held company. Concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors, and we entered into the MAI Agreement pursuant to which we will provide technical services and expertise in exchange for compensation in the form of additional shares of voting preferred stock. We and MAI envision entering into an arrangement to commercialize products developed under the MAI Agreement.
To analyze the fair value measurement of our equity investment in MAI, we perform a qualitative analysis using significant unobservable inputs. Significant changes to the unobservable inputs may result in a significantly higher or lower fair value estimate. We may value our equity investment based on significant recent arms-length equity transactions with sophisticated non-strategic unrelated new investors, providing the terms of these equity transactions are substantially similar to the equity transactions terms between the company and us. The impact of the difference in transaction terms on the market value of the portfolio company may be difficult or impossible to quantify.
We evaluate our investment for impairment when circumstances indicate that we may not be able to recover the carrying value. We impair our investment when we determine that there has been an “other-than-temporary” decline in the company's estimated fair value compared to its carrying value. We calculate the estimated fair value of the investment using information from the company, which may include:
Audited and unaudited financial statements;
Projected technological developments of the company;
Projected ability of the company to service its debt obligations;
13


If a deemed liquidation event were to occur;
Current fundraising transactions;
Current ability of the company to raise additional financing if needed;
Changes in the economic environment which may have a material impact on the operating results of the company;
Qualitative assessment of key management;
Contractual rights, obligations or restrictions associated with the investment; and
Other factors deemed relevant by our management to assess valuation.
The valuation may be reduced if the company's potential has deteriorated significantly. If the factors that led to a reduction in valuation are overcome, the valuation may be readjusted.

Goodwill
Goodwill represents the excess of consideration transferred over the fair value of net assets of businesses acquired and is assigned to reporting units. We test goodwill for impairment considering amongst other things, whether there have been sustained declines in the trading price of our stock on the Nasdaq Global Select Market. If we conclude it is more likely than not that the fair value of a reporting unit is less than its carrying amount, a quantitative fair value test is performed. We manage our business as two reporting units and we test goodwill for impairment at the reporting unit level. We allocated goodwill to the two reporting units using a relative fair value allocation methodology that primarily relied on our estimates of revenue and future earnings for each reporting unit. Using the relative fair value allocation methodology, we have determined that approximately 76% of goodwill was to be allocated to the Performance Enzymes segment and 24% allocated to the Novel Biotherapeutics segment. As a result of the calculation, $2.4 million of the goodwill is assigned to the Performance Enzymes segment and $0.8 million is assigned to the Novel Biotherapeutics segment. We test goodwill for impairment on an annual basis on the last day of the fourth fiscal quarter and, when specific circumstances dictate, between annual tests, by first assessing qualitative factors to determine whether it is more likely than not that the fair value of a reporting unit is less than its carrying amount. During 2020 and 2019, we did not record impairment charges related to goodwill. We test for goodwill impairment is as follows:
Goodwill impairment testing from January 1, 2020
On and subsequent to January 1, 2020, we test for goodwill impairment by comparing the fair value of each reporting unit to its respective carrying value. Using the relative fair value allocation methodology for assets and liabilities used in both of our reporting units, we compare the allocated carrying amount of each reporting unit’s net assets and the assigned goodwill to its fair value. If the fair value of the reporting unit exceeds its carrying amount, goodwill of the reporting unit is considered not impaired. Any excess of the reporting unit’s carrying amount of goodwill over its fair value is recognized as an impairment.
Goodwill impairment testing before January 1, 2020
Prior to January 1, 2020, the goodwill impairment test consisted of a two-step process. The first step of the goodwill impairment test, used to identify potential impairment, compared the fair value of each reporting unit to its carrying value. Using the relative fair value allocation methodology for assets and liabilities used in both of our reporting units, we compared the allocated carrying amount of each reporting unit’s net assets and the assigned goodwill to its fair value. If the fair value of the reporting unit exceeded its carrying amount, goodwill of the reporting unit was considered not impaired, and the second step of the impairment test was not required. The second step, if required, compared the implied fair value of the reporting unit’s goodwill with the carrying amount of that goodwill. Implied fair value was the excess of the fair value of the reporting unit over the fair value of all identified or allocated assets and liabilities. Any excess of the reporting unit’s carrying amount goodwill over the respective implied fair value was recognized as an impairment.
Interim Goodwill Impairment Testing
We tested goodwill for impairment in the quarter ended June 30, 2020. In late 2019, COVID-19 was reported to have surfaced and has since spread worldwide. The impact of COVID-19 has caused a decline in global and domestic macroeconomic conditions, the general deterioration of the U.S. economy and other economies worldwide, all of which may negatively impact our overall financial performance, driving a reduction in our cash flows. We believe that the impact of the COVID-19 pandemic was a triggering event that gave rise to the need to perform a goodwill impairment test. We tested for goodwill impairment by comparing the fair value of each reporting unit to its respective carrying value. We used the relative fair value allocation methodology for assets and liabilities used in both of our reporting units. We compared the allocated carrying amounts of each reporting unit’s net assets at June 30, 2020 and the assigned goodwill to its fair value at June 30, 2020. We concluded that there was no goodwill impairment at June 30, 2020.
14


Segment Reporting
We report two business segments, Performance Enzymes and Novel Biotherapeutics, which are based on our operating segments. Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the chief operating decision maker ("CODM"), or decision making group, in deciding how to allocate resources, and in assessing performance. Our CODM is our Chief Executive Officer. Our business segments are primarily based on our organizational structure and our operating results as used by our CODM in assessing performance and allocating resources for the Company. We do not allocate or evaluate assets by segment.
The Novel Biotherapeutics segment focuses on new opportunities in the pharmaceutical industry to discover or improve novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. The Performance Enzymes segment consists of protein catalyst products and services with focus on pharmaceutical, food, molecular diagnostics, and other industrial markets.
Income Taxes
Changes to Tax Law
On March 27, 2020, the Coronavirus Aid, Relief, and Economic Security Act (“CARES Act”), P.L. 116-136,was passed into law, amending portions of certain relevant US tax laws. The CARES Act includes a number of federal income tax law changes, including, but not limited to: (i) permitting net operating loss carrybacks to offset 100% of taxable income for taxable years beginning before 2021, (ii) accelerating alternative minimum tax credit refunds, (iii) temporarily increasing the allowable business interest deduction from 30% to 50% of adjusted taxable income, and (iv) providing a technical correction for depreciation related to qualified improvement property. The Company is currently evaluating if it will claim the Employee Retention Credit and apply for payroll tax deferrals under the CARES Act.
Accounting Pronouncements
Recently adopted accounting pronouncements
In June 2016, the FASB issued ASU 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments, which amends the FASB's guidance on the impairment of financial instruments. The standard adds a new impairment model, known as CECL, which replaces the probable loss model. The CECL impairment model is based on estimates and forecasts of future conditions which requires recognition of a lifetime of expected credit losses at inception on financial assets measured at amortized costs. Our financial assets measured at amortized cost are comprised of accounts receivable, contract assets, and unbilled receivables. We adopted the new standard in the first quarter of 2020 using a modified retrospective approach requiring a cumulative-effect adjustment to the opening accumulated deficit as of the date of adoption. The ASU establishes a new valuation account “allowance for credit losses” replacing the “allowance for doubtful accounts” in the consolidated balance sheet, which is used to adjust the amortized cost basis of assets in presentation of the net amount expected to be collected. The adoption required certain additional disclosures but had no other impact on our unaudited condensed consolidated financial statements.
In January 2017, the FASB issued ASU No. 2017-04, Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment. The amendments eliminate Step 2 from the goodwill impairment test. The annual, or interim, goodwill impairment test is performed by comparing the fair value of a reporting unit to its carrying amount. An impairment charge should be recognized for the amount by which the carrying amount exceeds the reporting unit’s fair value; however, the loss recognized should not exceed the total amount of goodwill allocated to that reporting unit. In addition, income tax effects from any tax-deductible goodwill on the carrying amount of the reporting unit should be considered when measuring the goodwill impairment loss, if applicable. The amendments eliminate the requirements for any reporting unit with a zero or negative carrying amount to perform a qualitative assessment, and if it fails that qualitative test, to perform Step 2 of the goodwill impairment test. An entity still has the option to perform the qualitative assessment for a reporting unit to determine if the quantitative impairment test is necessary. We adopted the standard in the first quarter of 2020 using a prospective approach. The adoption required certain additional disclosures but had no impact on our unaudited condensed consolidated financial statements.
15


In August 2018, the FASB issued ASU 2018-13, Fair Value Measurement (Topic 820): Disclosure Framework—Changes to the Disclosure Requirements for Fair Value Measurement. The primary focus of the standard is to improve the effectiveness of the disclosure requirements for fair value measurements. The changes affect all companies that are required to include fair value measurement disclosures. The standard requires the use of the prospective method of transition for disclosures related to changes in unrealized gains and losses, the range and weighted average of significant unobservable inputs used to develop fair value measurements categorized within Level 3 of the fair value hierarchy, and narrative description of measurement uncertainty. All other amendments in the standard are required to be adopted retrospectively. We adopted the standard in the first quarter of 2020 and the adoption had no impact on our unaudited condensed consolidated financial statements and related disclosures.
In November 2018, the FASB issued ASU 2018-18, Collaborative Arrangements (Topic 808): Clarifying the Interaction Between Topic 808 and Topic 606. ASU 2018-18 provides guidance on how to assess whether certain transactions between collaborative arrangement participants should be accounted for within the revenue recognition standard. The standard also provides more comparability in the presentation of revenue for certain transactions between collaborative arrangement participants. The standard is to be applied retrospectively to the date of the initial application of Topic 606 which also requires recognition of the cumulative effect of applying the amendments as an adjustment to the opening balance of retained earnings of the later or the earliest annual period presented and the annual period inclusive of the initial application of Topic 606. We adopted the standard in the first quarter of 2020. The adoption will adjust certain annual disclosures but had no impact on our unaudited condensed consolidated financial statements and related disclosures.
Recently issued accounting pronouncements not yet adopted
From time to time, new accounting pronouncements are issued by the FASB or other standards setting bodies that are adopted by us as of the specified effective date. Unless otherwise discussed, we believe that the impact of recently issued standards that are not yet effective will not have a material impact on our unaudited condensed consolidated financial statements upon adoption.
In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes which is intended to simplify various aspects related to accounting for income taxes. The standard is effective for fiscal years, and interim periods within those years, beginning after December 15, 2020, with early adoption permitted. The standard will be adopted upon the effective date for us beginning January 1, 2021. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
In March 2020, the FASB issued ASU 2020-04, Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting. The standard provides optional expedients and exceptions for applying GAAP to contracts, hedging relationships, and other transactions in which the reference LIBOR or another reference rate are expected to be discontinued as a result of the Reference Rate Reform. The standard is effective for all entities. The standard may be adopted as of any date from the beginning of an interim period that includes or is subsequent to March 12, 2020 through December 31, 2022. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
In May 2020, the Securities and Exchange Commission formally adopted amendments to financial disclosure regulations regarding the acquisition and disposition of certain business and among other things, amends the definition of a “significant subsidiary” by altering prescribed significance tests under Rule 1-02(w) of Regulation S-X, as well as under Rule 405 of the Securities Act of 1933 and Rule 12b-2 under the Securities Exchange Act of 1934. The amendments apply to reports and information filings as of January 1, 2021, with early adoption permitted. The effect of adoption will adjust certain annual disclosures but we expect no impact on our consolidated financial statements.

Note 3. Revenue Recognition
Disaggregation of Revenue
The following table provides information about disaggregated revenue from contracts with customers into the nature of the products and services and geographic regions, and includes a reconciliation of the disaggregated revenue with reportable segments. The geographic regions that are tracked are the Americas (United States, Canada and Latin America), EMEA (Europe, Middle East and Africa), and APAC (Australia, New Zealand, Southeast Asia and China).
16


Segment information is as follows (in thousands):
Three months ended June 30, 2020Three months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Major products and service:
       Product Revenue$4,504  $  $4,504  $6,249  $  $6,249  
Research and development revenue3,002  7,461  10,463  4,340  1,730  6,070  
Total revenues$7,506  $7,461  $14,967  $10,589  $1,730  $12,319  
Primary geographical markets:
Americas
$1,173  $5,733  $6,906  $4,076  $  $4,076  
EMEA
1,586  1,728  3,314  3,011  1,730  4,741  
APAC
4,747    4,747  3,502    3,502  
Total revenues$7,506  $7,461  $14,967  $10,589  $1,730  $12,319  

Six months ended June 30, 2020Six months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Major products and service:
Product revenue$9,604  $  $9,604  $14,236  $  $14,236  
Research and development revenue8,775  11,258  20,033  6,440  7,225  13,665  
Total revenues$18,379  $11,258  $29,637  $20,676  $7,225  $27,901  
Primary geographical markets:
Americas$4,171  $7,960  $12,131  $6,913  $  $6,913  
EMEA5,987  3,298  9,285  5,241  7,225  12,466  
APAC8,221    8,221  8,522    8,522  
Total revenues$18,379  $11,258  $29,637  $20,676  $7,225  $27,901  

Contract Balances
The following table presents balances of contract assets, unbilled receivables, contract costs, and contract liabilities (in thousands):
June 30, 2020December 31, 2019
Contract Assets$  $1,027  
Unbilled receivables$12,412  $10,099  
Contract Costs$172  $  
Contract Liabilities: Deferred Revenue$5,045  $2,044  


We had no asset impairment charges related to contract assets in the three and six months ended June 30, 2020 and 2019.
During the six months ended June 30, 2020, decreases in contract assets were primarily due to contract assets that were subsequently invoiced as our right to consideration for goods and services became unconditional. Increases in unbilled receivables were primarily due to the timing of billings. The increase in deferred revenue were primarily due to cash advances received in excess of revenue recognized.
17


During the three and six months ended June 30, 2020 and 2019, we recognized the following revenues (in thousands):
Three months ended June 30,Six months ended June 30,
2020201920202019
Amounts included in contract liabilities at the beginning of the period:
     Performance obligations satisfied$4,272  $1,367  $57  $3,752  
Changes in the period:
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods1,357  (92) 637  43  
Performance obligations satisfied from new activities in the period - contract revenue9,338  11,044  28,943  24,106  
Total revenues$14,967  $12,319  $29,637  $27,901  

Performance Obligations
The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting periods. The estimated revenue does not include contracts with original durations of one year or less, amounts of variable consideration attributable to royalties, or contract renewals that are unexercised as of June 30, 2020.
The balances in the table below are partially based on judgments involved in estimating future orders from customers subject to the exercise of material rights pursuant to respective contracts (in thousands):
Remainder of 202020212022 and ThereafterTotal
Product Revenue$567  $385  $1,883  $2,835  
Research and development revenue1,107  624  479  2,210  
Total revenues$1,674  $1,009  $2,362  $5,045  

Note 4. Net loss per Share
Basic net loss per share is computed by dividing the net loss by the weighted-average number of shares of common stock outstanding, less restricted stock awards ("RSAs") subject to forfeiture. Diluted net loss per share is computed by dividing net loss by the weighted-average number of shares of common stock outstanding, less RSAs subject to forfeiture, plus all additional common stock shares that would have been outstanding, assuming dilutive potential common stock shares had been issued for other dilutive securities. For periods of net loss, diluted and basic net loss per share are identical since potential common stock shares are excluded from the calculation, as their effect was anti-dilutive.
Anti-Dilutive Securities
In periods of net loss, the weighted average number of shares outstanding, prior to the application of the treasury stock method, excludes potentially dilutive securities from the computation of diluted net loss per common share because including such shares would have an anti-dilutive effect. The following shares were not included in the computation of diluted net loss per share (in thousands):
 Three months ended June 30,Six months ended June 30,
 2020201920202019
Shares issuable under the Equity Incentive Plan5,2896,2545,2896,254

18



Note 5. Collaborative Arrangements
GSK Platform Technology Transfer, Collaboration and License Agreement
In July 2014, we entered into a CodeEvolver® protein engineering platform technology transfer collaboration and license agreement (the "GSK CodeEvolver® Agreement") with GlaxoSmithKline ("GSK"). Pursuant to the terms of the agreement, we granted GSK a non-exclusive license to use the CodeEvolver® protein engineering platform technology to develop novel enzymes for use in the manufacture of GSK's pharmaceutical and health care products.
We received an upfront fee upon the execution of the agreement in July 2014 and milestone payments in each of the years from 2014 through April 2016. We completed the transfer of the CodeEvolver® protein engineering platform technology to GSK in April 2016 and all revenues relating to the technology transfer have been recognized as of April 2016. We have the potential to receive additional cumulative contingent payments that range from $5.75 million to $38.5 million per project based on GSK’s successful application of the licensed technology. We are also eligible to receive royalties based on net sales of GSK's sales of licensed enzyme products that are currently not being recognized.
In 2019, we received a $2.0 million milestone payment on the advancement of an enzyme developed by GSK using our CodeEvolver® protein engineering platform technology. We recognized no research and development revenue for the three and six months ended June 30, 2020 and 2019.
Merck Platform Technology Transfer and License Agreement
In August 2015, we entered into a CodeEvolver® platform technology transfer collaboration and license agreement (the "Merck CodeEvolver® Agreement") with Merck, Sharp & Dohme ("Merck") which allows Merck to use the CodeEvolver® protein engineering technology platform in the field of human and animal healthcare.
We received an up-front license fee upon execution of the Merck CodeEvolver® Agreement, and milestone payments in September 2015 and in September 2016, when we completed the transfer of the engineering platform technology. We recognized research and development revenues $0.2 million and $1.0 million for the three and six months ended June 30, 2020, respectively, compared to $1.0 million and $2.0 million for the three and six months ended June 30, 2019, respectively, for various research projects under our collaborative arrangement.
We have the potential to receive payments of up to a maximum of $15.0 million for each commercial active pharmaceutical ingredient ("API") that is manufactured by Merck using one or more novel enzymes developed by Merck using the CodeEvolver® protein engineering technology platform. The API payments, which are currently not recognized in revenue, are based on the quantity of API developed and manufactured by Merck and will be recognized as usage-based royalties.
In January 2019, we entered into an amendment to the Merck CodeEvolver® Agreement to install certain CodeEvolver® protein engineering technology upgrades into Merck’s platform license installation and maintain those upgrades for a multi-year term. The license installation was completed in 2019 and we recognized $0.9 million in the three and six months ended June 30, 2019 as a license fee revenue accordingly under the amendment. Pursuant to the agreement, Merck has options to future technology enhancements for a specified fee. As of June 30, 2020, Merck has not exercised its option for technology enhancements. We recognized $25 thousand and $50 thousand in research and development revenues under the terms of the amendment in the three and six months ended June 30, 2020, respectively. As of June 30, 2020 and December 31, 2019, we had deferred revenue balances of $0.1 million and nil, respectively.
Merck Sitagliptin Catalyst Supply Agreement
In February 2012, we entered into a five-year Sitagliptin Catalyst Supply Agreement (“Sitagliptin Catalyst Supply Agreement”) with Merck whereby Merck may obtain commercial scale enzyme for use in the manufacture of Januvia®, its product based on the active ingredient sitagliptin. In December 2015, Merck exercised its option under the terms of the sitagliptin Catalyst Supply Agreement to extend the agreement for an additional five years through February 2022.
Effective as of January 2016, we and Merck amended the Sitagliptin Catalyst Supply Agreement to prospectively provide for variable pricing based on the cumulative volume of sitagliptin catalyst purchased by Merck and to allow Merck to purchase a percentage of its requirements for sitagliptin catalyst from a specified third-party supplier. Merck received a distinct, functional license to manufacture a portion of its demand beginning January 1, 2018, which we recognized as research and development revenue.
19


We have determined that the variable pricing, which provides a discount based on the cumulative volume of sitagliptin catalyst purchased by Merck, provides Merck material rights and we are recognizing product revenues using the alternative method. Under the alternative approach, we estimate the total expected consideration and allocate it proportionately with the expected sales.
The Sitagliptin Catalyst Supply Agreement requires Merck to pay an annual fee for the rights to the sitagliptin technology each year for the term of the Sitagliptin Catalyst Supply Agreement. Amounts of annual license fees are based on contractually agreed prices and are on a declining scale over the term of the contract.
Pursuant to the terms of the Sitagliptin Catalyst Supply Agreement, Merck may purchase supply from us for a fee based on contractually stated prices. Deferred revenues were offset against contract assets where the right of offset exists within the contract. We recognized revenue of $2.0 million and $3.8 million for the three and six months ended June 30, 2020, respectively, compared to $2.5 million and $7.8 million in the three and six months ended June 30, 2019, respectively, in product revenue under this agreement. As of June 30, 2020 and December 31, 2019, we had deferred revenue balances related to the Sitagliptin Catalyst Supply Agreement of $0.3 million and nil, respectively. 
Enzyme Supply Agreement
In November 2016, we entered into a supply agreement whereby our customer may purchase quantities of one of our proprietary enzymes for use in its commercial manufacture of a product. Pursuant to the supply agreement, we received an upfront payment in December 2016 which was recorded as deferred revenues. Such upfront payment will be recognized over the period of the supply agreement as the customer purchases our proprietary enzyme. We additionally have determined that the volume discounts under the supply agreement provides the customer material rights and we are recognizing revenues using the alternative method. As of June 30, 2020 and December 31, 2019, we had deferred revenue balances from the supply agreement of $2.0 million. 
Global Development, Option and License Agreement, Strategic Collaboration Agreement, and Development Agreement
In October 2017, we entered into a Global Development, Option and License Agreement (the “Nestlé Agreement”) with Société des Produits Nestlé (formerly known as Nestec Ltd.) (“Nestlé Health Science”) and, solely for the purpose of the integration and the dispute resolution clauses of the Nestlé Agreement, Nestlé Health Science S.A., to advance CDX-6114, our enzyme biotherapeutic product candidate for the potential treatment of PKU.
We received an upfront cash payment of $14.0 million in 2017 upon the execution of the Nestlé Agreement, a $4.0 million milestone payment after dosing the first subjects in a first-in-human Phase 1a dose-escalation trial with CDX-6114, and a $1.0 million milestone payment upon achievement of a milestone relating to formulation of CDX-6114. The $4.0 million milestone payment that was triggered by the initiation of the trial was received in 2018 and the $1.0 million milestone payment that was triggered by the achievement of a formulation relating to CDX-6114 was received in February 2019. The upfront payment and the variable consideration relating to the progress payment of $4.0 million and milestone payment of $1.0 million were recognized over time as the development work was performed. Revenue was recognized using a single measure of progress that depicted our performance in transferring control of the services, which was based on the ratio of level of effort incurred to date compared to the total estimated level of effort required to complete all performance obligations under the agreement. We recognized nominal research and development revenue for the three and six months ended June 30, 2020, respectively, compared to $0.5 million and $1.7 million for the three and six months ended June 30, 2019, respectively.
In January 2019, we received notice from the FDA that it had completed its review of our investigational new drug application ("IND") for CDX-6114 and concluded that we may proceed with the proposed Phase 1b multiple ascending dose study in healthy volunteers in the United States. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive, worldwide, royalty-bearing, sub-licensable license for the global development and commercialization of CDX-6114 for the management of PKU and paid us $3.0 million which we recognized as research and development revenue in 2019. Upon exercising its option, Nestlé Health Science assumed all responsibilities for future clinical development and commercialization of CDX-6114, with the exception of the completion of an extension study, CDX-6114-004, which was substantially completed in the fourth quarter of 2019. Other potential payments from Nestlé Health Science to us under the Nestlé Agreement include (i) development and approval milestones of up to $85.0 million, (ii) sales-based milestones of up to $250.0 million in the aggregate, which aggregate amount is achievable if net sales exceed $1.0 billion in a single year, and (iii) tiered royalties, at percentages ranging from the middle single digits to low double-digits, of net sales of product.
20


In October 2017, we also entered into a Strategic Collaboration Agreement (the “Strategic Collaboration Agreement”) with Nestlé Health Science pursuant to which we and Nestlé Health Science are collaborating to leverage the CodeEvolver® protein engineering technology platform to develop novel enzymes for Nestlé Health Science’s established Consumer Care and Medical Nutrition business areas. Under the Strategic Collaboration Agreement, we received an upfront payment of $1.2 million in 2017 and an incremental payment of $0.6 million in September 2018 for additional services. The Strategic Collaboration Agreement has been extended through December 2021.
In January 2020, we entered into a development agreement with Nestlé Health Science pursuant to which we and Nestlé Health Science are collaborating to advance a lead candidate targeting a gastro-intestinal disorder discovered through our Strategic Collaboration Agreement into pre-clinical and early clinical studies.
We recognized research and development fees of $1.7 million and $3.3 million for the three and six months ended June 30, 2020, respectively, compared to $1.2 million and $2.5 million in the three and six months ended June 30, 2019, respectively.
Strategic Collaboration Agreement
In April 2018, we entered into the Porton Agreement with Porton to license key elements of our biocatalyst technology for use in Porton’s global custom intermediate and API development and manufacturing business. Under the Porton Agreement, we are eligible to receive annual collaboration fees and research and development revenues. We received an initial collaboration fee of $0.5 million within 30 days of the effective date of the Porton Agreement, $1.5 million upon the first anniversary of the effective date of the agreement. In the second quarter of 2020, we recognized $1.0 million in research and development revenue on the second anniversary of the effective date of the agreement. We are eligible to receive $1.0 million on the third anniversary of the effective date of the agreement. We completed the technical transfer in the fourth quarter of 2018 and recognized $2.8 million in research and development revenue. We recognized revenue related to the functional license provided to Porton at a point in time when control of the license was transferred to the customer. We recognized research and development revenue related to the Porton Agreement of $1.0 million and $1.1 million in the three and six months ended June 30, 2020, respectively, and no revenue in the three and six months ended June 30, 2019.
Platform Technology Transfer and License Agreement
In May 2019, we entered into a Platform Technology Transfer and License Agreement (the “Novartis CodeEvolver® Agreement”) with Novartis Pharma AG (“Novartis”). The Agreement allows Novartis to use our proprietary CodeEvolver® protein engineering platform technology in the field of human healthcare. Under the Novartis CodeEvolver® Agreement, we are transferring our proprietary CodeEvolver® protein engineering platform technology to Novartis over approximately 23 months, starting with the date on which we commenced the technology transfer (the “Technology Transfer Period”). As a part of this technology transfer, the Company provided to Novartis our proprietary enzymes, proprietary protein engineering protocols and methods, and proprietary software algorithms. In addition, teams of the Company and Novartis scientists participated in technology training sessions and collaborative research projects at the our laboratories in Redwood City, California and at a designated Novartis laboratory in Basel, Switzerland. Upon completion of technology transfer, Novartis will have the CodeEvolver® protein engineering platform technology installed at its designated laboratory.
Pursuant to the agreement, we received an upfront payment of $5.0 million shortly after the effective date of the Novartis CodeEvolver® Agreement. In the second quarter of 2020, we completed the second technology milestone transfer under the agreement and became eligible to receive a milestone payment of $4.0 million, which we subsequently received in July 2020. We are eligible to receive an additional $5.0 million upon satisfactory completion of the third technology transfer milestone. In consideration for the continued disclosure and license of improvements to our technology and materials during a multi-year period that begins on the conclusion of the Technology Transfer Period, Novartis will pay us annual payments which amount to an additional $8.0 million. The Company also has the potential to receive quantity-dependent, usage payments for each API that is manufactured by Novartis using one or more enzymes that have been developed or are in development using the CodeEvolver® protein engineering platform technology during the period that begins on the conclusion of the Technology Transfer Period and ends on the expiration date of the last to expire licensed patent. These product-related usage payments, if any, will be paid by Novartis to us for each quarter that Novartis manufactures API using a CodeEvolver®-developed enzyme. The usage payments will be based on the total volume of API produced using the CodeEvolver®-developed enzyme. These usage payments can begin in the clinical stage and will extend throughout the commercial life of each API. Revenue for the combined initial license and technology transfer performance obligation, which is expected to occur over twenty-three months, is being recognized using a single measure of progress that depicts our performance in transferring control of the services, which is based on the ratio of level of effort incurred to date compared to the total estimated level of effort required to complete the performance obligation relating to the combined initial license and technology transfer. Revenue allocated to future improvements will be recognized during the Improvement Term. We recognized $0.9 million and $3.7 million in research and
21


development revenue for the three and six months ended June 30, 2020, respectively and no revenue in the three and six months ended June 30, 2019 from the Novartis CodeEvolver® Agreement.
License Agreement
In December 2019, we entered a license agreement with Roche Sequencing Solutions, Inc. (“Roche”) to provide Roche with our EvoT4 DNA™ ligase high-performance molecular diagnostic enzyme. The royalty bearing license grants Roche worldwide rights to include the EvoT4 DNA™ ligase in its nucleic acid sequencing products and workflows. Under the license agreement, we received an initial collaboration fee payment within 45 days of the effective date of the agreement and we are eligible to receive an additional milestone within 60 days after the completion of technology transfer. The agreement also contemplates milestone payments to the Company upon the achievement of various development and commercialization events and royalty payments from commercial sales of the enzyme. We recognized research and development fees of $0.2 million and $0.8 million for the three and six months ended June 30, 2020, respectively.
Strategic Collaboration and License Agreement
In March 2020, we entered into a Strategic Collaboration and License Agreement (the “Takeda Agreement”) with Shire Human Genetic Therapies, Inc., a wholly-owned subsidiary of Takeda Pharmaceutical Co. Ltd. (“Takeda”) under which we will research and develop protein sequences for use in gene therapy products for certain diseases (each, a “Field”) in accordance with each applicable program plan (each, a “Program Plan”).
In March 2020, we received an up-front nonrefundable cash payment of $8.5 million and we initiated activities under three Program Plans for Fabry Disease, Pompe Disease, and an unnamed blood factor deficiency respectively (the “Initial Programs”). We are primarily responsible for the research and development of protein sequences under the Program Plans (the “Protein Sequences”) and we are eligible to receive up to $22.3 million of research and development fees and pre-clinical milestone payments for the Initial Programs. Takeda has the right, but not the obligation, to develop, manufacture and commercialize gene therapy products that include nucleic acid sequences that encode the Protein Sequences (“Products”) at their expense. Takeda has the right to a certain number of additional disease indications (“Reserved Target Indications”) for a limited period in which Takeda may initiate a Program Plan for one or more Reserved Target Indications (“Additional/Option Program,” with Initial Programs, the “Programs”), provided, (a) if Takeda elects to initiate an Additional/Option Program while the parties are collaborating on three other Programs at the time of such election, or (b) if Takeda elects to initiate an Additional/Option Program using the last remaining Reserved Target Indication, then Takeda must pay us an option exercise fee to initiate such Additional/Option Program. We will own all rights to the Protein Sequences and corresponding nucleic acid sequences and related intellectual property rights and Takeda will own all rights to Products and related intellectual property rights.
We granted to Takeda an exclusive, worldwide, royalty-bearing, sublicensable license to use the Protein Sequences and their corresponding nucleic acid sequences to develop, manufacture and commercialize the applicable Products in the applicable Field. We also granted to Takeda a limited non-exclusive, worldwide, sublicensable license (a) to research the Protein Sequences within or outside the applicable Fields and (b) to research the Products outside of the applicable Fields, which such rights exclude Takeda's right to perform any Investigational New Drug-enabling activities. The licenses to research the Protein Sequences expire after a pre-determined period of time.
The term of the Takeda Agreement begins on the Effective Date and continues on a Product-by-Product and country-by-country basis, until the expiration of Takeda’s obligation to pay royalties to the Company with respect to that Product in that country. The Takeda Agreement expires in its entirety upon the expiration of Takeda’s obligation to pay royalties to the Company with respect to the Products in all countries worldwide. Subject to the terms of the Takeda Agreement, and after the first anniversary of the Effective Date with respect to the Initial Programs or after the first anniversary of confirmation of the applicable Program Plan by the parties with respect to the Additional/Option Programs, Takeda may terminate a Program upon specified prior written notice to the Company. Subject to the terms of the Takeda Agreement, Takeda may terminate the Takeda Agreement, at will, on a Product-by-Product basis upon specified prior written notice to the Company and the Takeda Agreement in its entirety upon specified prior written notice to the Company. Subject to the terms of the Takeda Agreement, Takeda may terminate the Takeda Agreement on a Product-by-Product basis for safety reasons upon specified prior written notice to the Company. Either party may terminate the Takeda Agreement for an uncured material breach by the other party, or the other party’s insolvency or bankruptcy.
22


We are eligible to receive certain development and commercialization milestone payments up to $100.0 million per target gene, the modulation of which would lead to the treatment of the disease indications by the applicable Product. We are also eligible to receive tiered royalties based on net sales of Products at percentages ranging from the middle-single digits to low single-digits. We recognized research and development revenue related to the Takeda Agreement of $5.7 million and $8.0 million in the three and six months ended June 30, 2020, respectively. As of June 30, 2020, we had a deferred revenue balance of $2.2 million from Takeda.
Master Collaboration and Research Agreement and Stock Purchase Agreement
In June 2020, we entered into a Stock Purchase Agreement with Molecular Assemblies, Inc. ("MAI") pursuant to which we purchased 1,587,050 shares of MAI's Series A preferred stock for $1.0 million in connection with the transaction, our chief executive officer, John Nicols, also joined MAI’s board of directors.
At the same time, we entered into a Master Collaboration and Research Agreement (the “MAI Agreement”) with MAI to engineer DNA polymerase enzymes to deliver differentiated and cost-effective solutions for the enzymatic synthesis of DNA. Under the MAI Agreement and its related statement of work (“SOW”), we will apply our CodeEvolver® protein engineering platform technology to improve the DNA polymerase enzymes that are critical for enzymatic DNA synthesis. Based on these services, the Company is eligible to earn additional shares of MAI's Series A preferred stock. MAI will combine its advanced chemistries with our enzymes to drive the process to commercialization. Under the MAI Agreement and its associated SOW, we will engage in research and development activities to engineer DNA polymerase enzymes for the enzymatic synthesis of DNA in exchange for monthly fees in the form of shares of Series A preferred stock in MAI. We are eligible to earn such non-monetary payments over ten to thirteen months, and any such shares would be issued thirty days in arrears after each calendar quarter-end. We are also eligible to receive amounts for bonuses, targets and milestones on achievement of timeline and project goals specified in the SOW. Payments for bonuses, targets and milestones on achievement of timeline and project goals are to be issued thirty days after the Company provides notification of completion. Under the MAI Agreement, the Company will have the right to use and sell the engineered enzymes to third parties for any purpose other than for the synthesis of native DNA. Under the MAI Agreement, we would make a $0.5 million payment to MAI upon our achievement of a milestone of $5.0 million in aggregate commercial sales to third parties of the engineered enzymes or any product incorporating or derived from the engineered enzymes for any purpose other than the synthesis of native DNA. The MAI Agreement contemplates that we and MAI will enter into a Commercialization and Enzyme Supply Agreement (the “CESA”) within six months following the completion of certain timelines specified in the SOW. In addition, we and MAI have agreed pursuant to the MAI Agreement to certain terms to be contained within the CESA in the event that the CESA becomes executed in the future. Those include: (a) that MAI would receive an exclusive license to use the DNA polymerase enzymes engineering by us under the MAI Agreement in the synthesis of native DNA and a non-exclusive license to use these enzymes for research and development on the synthesis of non-native DNA, and (b) we would become the exclusive manufacturer of these enzymes for MAI, its affiliates and licensees.
We recognized no research and development revenue in the three and six months ended June 30, 2020 from transactions with MAI.



Note 6. Cash Equivalents and Equity Securities
Cash equivalents at June 30, 2020 and December 31, 2019 consisted of the following (in thousands):
 June 30, 2020December 31, 2019
 Adjusted CostEstimated
Fair Value
Adjusted CostEstimated Fair Value
Money market funds (1)
$58,482  $58,482  $71,248  $71,248  
(1) Money market funds are classified in cash and cash equivalents on our unaudited condensed consolidated balance sheets.

As of June 30, 2020, the total cash and cash equivalents balance of $75.6 million was comprised of money market funds of $58.5 million and cash of $17.1 million held with major financial institutions worldwide. As of December 31, 2019, the total cash and cash equivalents balance of $90.5 million was comprised of money market funds of $71.2 million and cash of $19.3 million held with major financial institutions worldwide.
23


Investment in Equity Securities
No single investor in MAI holds 20% or more of the voting stock. Our investment represented approximately 4% of MAI's voting stock at the time of the transaction. Concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors, and we entered into the MAI Agreement pursuant to which we will provide technical services and expertise in exchange for compensation in the form of additional shares of voting preferred stock. Our investment was $1.0 million at June 30, 2020. For additional information, see Note 12, "Related Party Transactions."


Note 7. Fair Value Measurements
The following tables present the financial instruments that were measured at fair value on a recurring basis at June 30, 2020 and December 31, 2019 by level within the fair value hierarchy (in thousands):
 June 30, 2020
 Level 1Level 2Level 3Total
Money market funds $58,482  $—  $—  $58,482  

 December 31, 2019
 Level 1Level 2Level 3Total
Money market funds$71,248  $—  $—  $71,248  


Note 8. Balance Sheets Details
Inventories
Inventories consisted of the following (in thousands):
June 30, 2020December 31, 2019
Raw materials$77  $7  
Work-in-process28  26  
Finished goods581  338  
    Inventories$686  $371  

Property and Equipment, net
Property and equipment, net consisted of the following (in thousands):
June 30, 2020December 31, 2019
Laboratory equipment$24,717  $23,561  
Leasehold improvements10,774  10,804  
Computer equipment and software3,135  3,016  
Office equipment and furniture1,115  1,461  
Construction in progress648  691  
Property and equipment40,389  39,533  
       Less: accumulated depreciation and amortization(33,567) (33,251) 
     Property and equipment, net$6,822  $6,282  
24



Goodwill
Goodwill had a carrying value of approximately $3.2 million as of June 30, 2020 and December 31, 2019.
Other Accrued Liabilities
Other accrued liabilities consisted of the following (in thousands):
June 30, 2020December 31, 2019
Accrued purchases $3,669  $4,386  
Accrued professional and outside service fees2,949  1,802  
Other325  352  
     Total$6,943  $6,540  


Note 9. Stock-based Compensation
Equity Incentive Plans
In June 2019, our board of directors (the "Board") and stockholders approved the 2019 Incentive Award Plan (the "2019 Plan"). The 2019 Plan superseded and replaced in its entirety our 2010 Equity Incentive Plan (the “2010 Plan”) which was effective in March 2010, and no further awards will be granted under the 2010 Plan; however, the terms and conditions of the 2010 Plan will continue to govern any outstanding awards thereunder. 
The 2010 Plan provided for the grant of incentive stock options, non-statutory stock options, restricted stock units ("RSUs"), restricted stock awards ("RSAs"), performance-contingent restricted stock units ("PSUs"), performance based options ("PBOs"), stock appreciation rights, and stock purchase rights to our employees, non-employee directors and consultants.
The number of shares of our common stock available for issuance under the 2019 Plan is equal to the sum of (i) 7,897,144 shares, and (ii) any shares subject to awards granted under the 2010 Plan that were outstanding as of April 22, 2019 and thereafter terminate, expire, lapse or are forfeited; provided that no more than 14,000,000 shares may be issued upon the exercise of incentive stock options (“ISOs”). In June 2019, 8.1 million shares authorized for issuance under the 2019 Plan were registered under the Securities Act of 1933, as amended (the “Securities Act”).
The 2019 Plan provides for the grant of stock options, including incentive stock options and non-qualified stock options, stock appreciation rights, restricted stock, restricted stock units, other stock or cash based awards and dividend equivalents to eligible employees and consultants of the Company or any parent or subsidiary, as well as members of the Board.
Stock Options
The option exercise price for incentive stock options must be at least 100% of the fair value of our common stock on the date of grant and the option exercise price for non-statutory stock options is 85% of the fair value of our common stock on the date of grant, as determined by the Board. If, at the time of a grant, the optionee directly or by attribution owns stock possessing more than 10% of the total combined voting power of all of our outstanding capital stock, the exercise price for these options must be at least 110% of the fair value of the underlying common stock. Stock options granted to employees generally have a maximum term of 10 years and vest over four years from the date of grant, of which 25% vest at the end of one year, and 75% vest monthly over the remaining three years. We may grant options with different vesting terms from time to time. Unless an employee's termination of service is due to disability or death, upon termination of service, any unexercised vested options will be forfeited at the end of three months or the expiration of the option, whichever is earlier.
25


Restricted Stock Units (RSUs)
We also grant employees RSUs, which generally vest over either a three year period with one-third of the shares subject to the RSUs vesting on each yearly anniversary of the vesting commencement date or over a four year period with 25% of the shares subject to the RSU vesting on each yearly anniversary of the vesting commencement date, in each case contingent upon such employee’s continued service on such vesting date. RSUs are generally subject to forfeiture if employment terminates prior to the release of vesting restrictions. We may grant RSUs with different vesting terms from time to time.
Performance-contingent Restricted Stock Units (PSUs) and Performance Based Options (PBOs)
We also grant our executives and our non-executive employees PSUs, and we grant our executives PBOs. The PSUs and PBOs vest based upon both the successful achievement of certain corporate operating milestones in specified timelines and continued employment through the applicable vesting date. When the performance goals are deemed to be probable of achievement for these types of awards, recognition of stock-based compensation expense commences. Once the number of shares eligible to vest is determined, those shares vest in two equal installments with 50% vesting upon achievement and the remaining 50% vesting on the first anniversary of achievement, in each case, subject to the recipient’s continued service through the applicable vesting date. If the performance goals are achieved at the threshold level, the number of shares eligible to vest in respect of the PSUs and PBOs would be equal to half the number of PSUs granted and one-quarter the number of shares underlying the PBOs granted. If the performance goals are achieved at the target level, the number of shares eligible to vest in respect of the PSUs and PBOs would be equal to the number of PSUs granted and half of the shares underlying the PBOs granted. If the performance goals are achieved at the superior level, the number of shares eligible to vest in respect of the PSUs would be equal to two times the number of PSUs granted and equal to the number of PBOs granted. The number of shares issuable upon achievement of the performance goals at the levels between the threshold and target levels for the PSUs and PBOs or between the target level and superior levels for the PSUs would be determined using linear interpolation. Achievement below the threshold level would result in no shares being eligible to vest in respect of the PSUs and PBOs.
In the first quarter of 2020, we awarded PSUs ("2020 PSUs") and PBOs ("2020 PBOs"), each of which commence vesting based upon the achievement of various weighted performance goals, including sustained revenue and performance enzyme growth, strategic advancements of biotherapeutics pipeline, safety and technology development. As of June 30, 2020, we estimated that the 2020 PSUs and 2020 PBOs performance goals would be achieved at 100% of the target level, and recognized expenses accordingly.
In 2019, we awarded PSUs ("2019 PSUs") and PBOs ("2019 PBOs"), each of which commenced vesting based upon the achievement of various weighted performance goals, including sustained revenue and performance enzyme growth, strategic advancement of biotherapeutics, cash balance and strategic plan development. In the first quarter of 2020, we determined that the 2019 PSUs and 2019 PBOs performance goals had been achieved at 106% of the target level, and recognized expenses accordingly. Accordingly, 50% of the shares underlying the 2019 PSUs and PBOs vested in the first quarter of 2020 and 50% of the shares underlying the 2019 PSUs and PBOs will vest in the first quarter of 2021, in each case subject to the recipient’s continued service on each vesting date.
In 2018, we awarded PSUs ("2018 PSUs") and PBOs ("2018 PBOs"), each of which commenced vesting based upon the achievement of various weighted performance goals, including core business revenue growth, cash balance, new licensing collaborations, new research and development service revenue arrangements, technology advancement and novel therapeutic enzymes advancement. In the first quarter of 2019, we determined that the 2018 PSUs and 2018 PBOs performance goals had been achieved at 118% of the target level, and recognized expenses accordingly. Accordingly, 50% of the shares underlying the 2018 PSUs and PBOs vested in the first quarter of 2019 and 50% of the shares underlying the 2018 PSUs and PBOs vested in the first quarter of 2020, in each case subject to the recipient’s continued service on each vesting date.
Stock-Based Compensation Expense
Stock-based compensation expense is included in the unaudited condensed consolidated statements of operations as follows (in thousands):
 Three Months Ended June 30,Six months ended June 30,
 2020201920202019
Research and development $471  $403  $894  $791  
Selling, general and administrative1,468  1,585  3,214  3,260  
   Total$1,939  $1,988  $4,108  $4,051  
26



The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations for the three and six months ended June 30, 2020 and 2019 (in thousands):
 Three Months Ended June 30,Six months ended June 30,
 2020201920202019
Stock options$575  $581  $1,116  $1,135  
RSUs and RSAs610  386  1,210  847  
PSUs296  316  627  707  
PBOs458  705  1,155  1,362  
   Total$1,939  $1,988  $4,108  $4,051  


In June 2020, we granted an option to purchase 60,000 shares of common stock to a non-employee as compensation for services. The estimated fair value of the grant was valued at $0.3 million using the Black-Scholes-Merton option pricing model with the following assumptions used to estimate the fair value of non-employee stock options: (i) volatility rate at 51.9%, (ii) risk-free interest rate of 0.4% and (iii) no expected dividend yield. The option vests over 2 years from the date of grant with 50% vesting after one year and the remaining 50% vesting monthly in the second year. We recognized stock-based compensation expense related to the non-employee of $4 thousand for the three and six months ended June 30, 2020.
As of June 30, 2020, unrecognized stock-based compensation expense, net of expected forfeitures, was $4.8 million related to unvested employee stock options, $0.2 million related to unvested non-employee stock options, $2.7 million related to unvested RSUs and RSAs, $1.1 million related to unvested PSUs, and $1.7 million related to unvested PBOs based on current estimates of the level of achievement. Stock-based compensation expense for these awards will be recognized through the year of 2024.


Note 10. Capital Stock
Exercise of Options
For the six months ended June 30, 2020 and June 30, 2019, we issued 32,749 and 529,187 shares, respectively, upon option exercises at a weighted-average exercise price of $6.03 and $5.37 per share, respectively, with net cash proceeds of $0.2 million and $2.8 million, respectively.
Private Offering
In June 2019, we entered into a Securities Purchase Agreement with an affiliate of Casdin pursuant to which we issued and sold to Casdin 3,048,780 shares of our common stock at a purchase price of $16.40 per share. After deducting legal fees of $74 thousand from the Private Offering, our net proceeds were $49.9 million.
The Private Offering was exempt from registration pursuant to the exemption for transactions by an issuer not involving any public offering under Section 4(a)(2) the Securities Act, and Regulation D under the Securities Act.


27


Note 11. Commitments and Contingencies
Operating Leases
Our headquarters are located in Redwood City, California, where we occupy approximately 77,300 square feet of office and laboratory space in four buildings within the same business park of Metropolitan Life Insurance Company ("MetLife"). Our lease (“Lease”) with MetLife includes approximately 28,200 square feet of space located at 200 and 220 Penobscot Drive, Redwood City, California (the “Penobscot Space”), approximately 37,900 square feet of space located at 400 Penobscot Drive, Redwood City, California (the “Building 2 Space”), and approximately 11,200 square feet of space located at 501 Chesapeake Drive, Redwood City, California (the “501 Chesapeake Space”).
Until January 31, 2020, we also leased approximately 29,900 square feet of space located at 101 Saginaw Drive, Redwood City, California (the “Saginaw Space”). During the period January 1, 2020 through January 31, 2020, we subleased approximately 26,500 square feet of the Saginaw Space to Minerva Surgical, Inc. The lease and sublease for the Saginaw Space both expired at the end of January 2020. During the period from February 1, 2020 through April 30, 2020, we subleased approximately 3,400 square feet of the Saginaw Space from Minerva Surgical, Inc. The sublease expired at the end of April 2020.
We entered into the initial lease with MetLife for a portion of this space in 2004 and the lease has been amended multiple times since then to adjust space and terms of the lease ("Lease"). In February 2019, we entered into an Eighth Amendment to the Lease ( the “Eighth Amendment”) with MetLife with respect to the Penobscot Space, the Building 2 Space and the 501 Chesapeake Space to extend the term of the Lease for additional periods. Pursuant to the Eighth Amendment, the term of the lease of the Penobscot Space and the Building 2 Space has been extended through May 2027. The lease term for the 501 Chesapeake Space has been extended to May 2029. We have two consecutive options to extend the term of the lease for the Penobscot Space, the Building 2 Space and the 501 Chesapeake Space for an additional period of five years per option.
We are required to restore certain areas of the Redwood City facilities that we are renting to their original form. We are expensing the asset retirement obligation over the terms of the respective leases. We review the estimated obligation each reporting period and make adjustments if our estimates change. We recorded asset retirement obligations of $0.2 million as of June 30, 2020 and December 31, 2019, which are included in other liabilities on the unaudited condensed consolidated balance sheets. Accretion expense related to our asset retirement obligations was nominal.
Pursuant to the terms of the Lease, we exercised our right to deliver a letter of credit in lieu of a security deposit. The letter of credit is collateralized by deposit balances held by the bank in the amount of $1.1 million as of June 30, 2020 and December 31, 2019, and are recorded as non-current restricted cash on the unaudited condensed consolidated balance sheets.
Finance Leases
In December 2016, we entered into a three-year financing lease agreement with a third party supplier for the purchase of laboratory equipment that was partially financed through a finance lease of approximately $0.4 million. The lease became effective upon delivery of the equipment in February 2017, and term of the three-year lease was from February 2017 and expired in February 2020. This financing agreement was accounted for as a finance lease due to bargain purchase options at the end of the lease. In April 2017, we entered into a three-year financing lease agreement with a third-party supplier for the purchase of information technology equipment for approximately $0.3 million. The effective term of the three-year lease was from May 2017 and expired in April 2020.
28


Lease Costs and other information
Lease related costs were as follows (in thousands):
Three months ended June 30,Six months ended June 30,
 2020201920202019
Finance lease costs:
Amortization of right-of-use assets$45  $54  $99  $109  
Interest on lease obligations1  3  1  6  
Finance lease costs46  57  100  115  
Operating lease cost1,032  1,100  2,100  2,278  
Short-term lease cost (1)
16    47    
Sublease income  (254) (55) (465) 
Total lease cost$1,094  $903  $2,192  $1,928  
(1) Short-term lease costs on leases with terms of over one month and less than one year.
Other information related to non-cancellable finance leases and operating leases under non-cancellable subleases as of June 30, 2020 was as follows:
Operating Leases
Weighted-average remaining lease term (in years)7.2 years
Weighted-average discount rate6.6 %

Cash paid for amounts included in the measurement of lease obligations was as follows (in thousands):
Six months ended June 30,
20202019
Operating cash flows from operating leases$774  $1,633  
Operating cash flows from finance leases$  $6  
Financing cash flows from finance leases$60  $119  


As of June 30, 2020, our maturity analysis of annual undiscounted cash flows of the non-cancellable finance and operating leases are as follows (in thousands):
Years ending December 31,Operating Leases
2020 (remaining 6 months)$2,042  
20214,197  
20224,285  
20234,589  
20244,726  
2025 and thereafter13,494  
Total minimum lease payments33,333  
Less: imputed interest(7,186) 
Lease Obligations$26,147  

29


Other Commitments
We enter into supply and service arrangements in the normal course of business. Supply arrangements are primarily for fixed-price manufacture and supply. Service agreements are primarily for the development of manufacturing processes and certain studies. Commitments under service agreements are subject to cancellation at our discretion which may require payment of certain cancellation fees. The timing of completion of service arrangements is subject to variability in estimates of the time required to complete the work.
The following table provides quantitative data regarding our other commitments. Future minimum payments reflect amounts that we expect to pay including potential obligations under services agreements subject to risk of cancellation by us (in thousands):
Other Commitment Agreement TypeAgreement DateFuture Minimum Payment
Manufacture and supply agreement with expected future payment date of December 2022April 2016$704  
Development and manufacturing services agreementsSeptember 20193,785  
Strategic Collaboration and License AgreementMarch 2020364  
Total other commitments$4,853  

Credit Facility
In June 30, 2017, we entered into a credit facility (the “Credit Facility”) consisting of term loans (“Term Debt”) up to $10.0 million, and advances (“Advances”) under a revolving line of credit ("Revolving Line of Credit") up to $5.0 million with an accounts receivable borrowing base of 80% of eligible accounts receivable. At June 30, 2020 and December 31, 2019, we have not drawn from the Credit Facility. We may draw on the Revolving Line of Credit at any time prior to the September 30, 2020 maturity date. On October 1, 2023, loans drawn under the Term Debt mature and the Revolving Line of Credit terminates. Loans made under the Term Debt bears interest through maturity at a variable rate based on the LIBOR plus 3.60%. Advances under the Revolving Line of Credit bear interest at a variable annual rate equal to the greater of (i) 1.00% above the prime rate and (ii) 5.00%.
Our obligations under the Credit Facility are secured by a lien on substantially all of our personal property other than our intellectual property. The Credit Facility includes a number of customary covenants and restrictive financial covenants including meeting minimum product revenue levels and maintaining certain minimum cash levels with the lender. The Credit Facility's financial covenants restrict the ability of the Company to transfer collateral, incur additional indebtedness, engage in mergers or acquisitions, pay dividends or make other distributions, make investments, create liens, sell assets, or sell certain assets held at foreign subsidiaries. A failure to comply with these covenants could permit the lender to exercise remedies against us and the collateral securing the Credit Facility, including foreclosure of our properties securing the Credit Facilities and our cash. At June 30, 2020, we were in compliance with the covenants for the Credit Facility.
The Credit Facility allows for interest-only payments on the Term Debt through November 1, 2021. Monthly payments of principal and interest on the Term Debt are required following the applicable amortization date. We may elect to prepay in full the Term Debt and Advances under the Revolving Line of Credit at any time.
Legal Proceedings
We are not currently a party to any material pending litigation or other material legal proceedings.
Indemnifications
We are required to recognize a liability for the fair value of any obligations we assume upon the issuance of a guarantee. We have certain agreements with licensors, licensees and collaborators that contain indemnification provisions. In such provisions, we typically agree to indemnify the licensor, licensee and collaborator against certain types of third party claims. The maximum amount of the indemnifications is not limited. We accrue for known indemnification issues when a loss is probable and can be reasonably estimated. There were no accruals for expenses related to indemnification issues for any periods presented.
30


Impact of COVID-19
We are subject to risks and uncertainties as a result of the current COVID-19 pandemic. The COVID-19 pandemic has presented a substantial public health and economic challenge around the world and is affecting our employees, communities and business operations, as well as the U.S. economy and other economies worldwide. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition will depend on future developments that are highly uncertain and cannot be accurately predicted, including the duration and severity of the pandemic and the extent and severity of the impact on our customers, new information that may emerge concerning COVID-19, the actions taken to contain it or treat its impact and the economic impact on local, regional, national and international markets.
To date, we and our collaboration partners have been able to continue to supply our enzymes to our customers worldwide. However, we are dependent on our manufacturing and logistics partners and consequently, disruptions in operations of our partners and customers may affect our ability to supply enzymes to our customers. Furthermore, our ability to provide future research and development ("R&D") services will continue to be impacted as a result of governmental orders and any disruptions in operations of our customers with whom we collaborate. We are continuing to assess the potential impact of the COVID-19 pandemic on our business and operations, including our product sales, R&D service revenue, expenses and manufacturing. However, we are unable to fully determine and quantify the extent to which this pandemic affected our total revenues due to complex accounting judgments.

In the U.S., the impact of COVID-19, including governmental orders ("Orders") governing the operation of businesses during the pandemic, caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Research and development operations for all other projects were temporarily suspended from mid-March 2020 through the end of April in accordance with these Orders. In May 2020, we initiated limited operations and gradually ramped up our R&D operations so that we are currently utilizing the majority of our normal R&D capacity. Additionally, we have resumed small scale manufacturing at our Redwood City pilot plant in May 2020.
Our future results of operations and liquidity could be adversely impacted by delays in payments of outstanding receivable amounts beyond normal payment terms, supply chain disruptions and uncertain demand, and the impact of any initiatives or programs that we may undertake to address financial and operations challenges faced by our customers. As of the date of issuance of these condensed consolidated financial statements, the extent to which the COVID-19 pandemic may materially impact our financial condition, liquidity, or results of operations is uncertain.

Note 12. Related Party
AstraZeneca PLC
Pam P. Cheng, a member of our board of directors for a three-year term expiring at our Annual Shareholder Meeting in June 2020, joined AstraZeneca PLC as Executive Vice President, Operations and Information Technology in June 2015. We sell biocatalyst products to AstraZeneca PLC and its controlled purchasing agents and contract manufacturers.
We recognized $20 thousand and $0.1 million in revenue in the three and six months ended June 30, 2020, respectively, compared to $0.4 million and $0.4 million in the three and six months ended June 30, 2019, respectively, from transactions with AstraZeneca PLC and its controlled purchasing agents and contract manufacturers. At June 30, 2020 and December 31, 2019, we had nominal and $0.3 million, respectively, of receivables from AstraZeneca PLC and its controlled purchasing agents and contract manufacturers, respectively.

Molecular Assemblies, Inc.

In June 2020, we entered into a Stock Purchase Agreement with Molecular Assemblies, Inc (“MAI”) pursuant to which we purchased 1,587,050 shares of Series A preferred stock for $1.0 million in MAI and, concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors.
At the same time, we entered into a Master Collaboration and Research Agreement (the “MAI Agreement”) with MAI to engineer DNA polymerase enzymes to deliver differentiated and cost-effective solutions for the enzymatic synthesis of DNA. Under the MAI Agreement and its related statement of work (“SOW”), we will apply our CodeEvolver® protein engineering platform technology to improve the DNA polymerase enzymes that are critical for enzymatic DNA synthesis.
31


Based on these services, we are eligible to earn additional Series A preferred stock of MAI. MAI will combine its advanced chemistries with our enzymes to drive the process to commercialization. Under the MAI Agreement and its associated SOW, we will engage in research and development activities to engineer DNA polymerase enzymes for the enzymatic synthesis of DNA and will receive monthly fees in the form of shares of Series A preferred stock in MAI. Such non-monetary payments will be earned over ten to thirteen months and issued thirty days in arrears after each calendar quarter-end. We are also eligible to receive amounts for bonuses, targets and milestones on achievement of timeline and project goals specified in the SOW. Payments for bonuses, targets and milestones on achievement of timeline and project goals are to be issued thirty days after the Company provides notification of completion. Under the MAI Agreement, we will have the right to use and sell the engineered enzymes to third parties for any purpose other than for the synthesis of native DNA. Under the MAI Agreement, we would make a $0.5 million payment to MAI on meeting a milestone of $5.0 million in aggregate commercial sales by the Company to third parties of the engineered enzymes or any product incorporating or derived from the engineered enzymes for any purpose other than the synthesis of native DNA. The MAI Agreement contemplates that we and MAI will enter into a Commercialization and Enzyme Supply Agreement (the “CESA”) within six months following the completion of certain timelines specified in the SOW. In addition, we and MAI have agreed pursuant to the MAI Agreement to certain terms to be contained within the CESA in the event that the CESA becomes executed in the future. Those include: (a) that MAI would receive an exclusive license to use the DNA polymerase enzymes engineering by us under the MAI Agreement in the synthesis of native DNA and a non-exclusive license to use these enzymes for research and development on the synthesis of non-native DNA, and (b) that we would become the exclusive manufacturer of these enzymes for MAI, its affiliates and licensees.
We recognized no research and development revenue in the three and six months ended June 30, 2020 from transactions with MAI.


Note 13. Segment, Geographical and Other Revenue Information
Segment Information
We manage our business as two business segments: Performance Enzymes and Novel Biotherapeutics, which are based on our operating segments. Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the CODM, or decision making group, in deciding how to allocate resources, and in assessing performance. Our CODM is our Chief Executive Officer. Our business segments are primarily based on our organizational structure and our operating results as used by our CODM in assessing performance and allocating resources for the Company.
We report corporate-related expenses such as legal, accounting, information technology, and other costs that are not otherwise included in our reportable business segments as "Corporate costs." All items not included in income (loss) from operations are excluded from the business segments.
We manage our assets on a total company basis, not by business segment, as the majority of our operating assets are shared or commingled. Our CODM does not review asset information by business segment in assessing performance or allocating resources, and accordingly, we do not report asset information by business segment.
Performance Enzymes
We initially commercialized our CodeEvolver® protein engineering technology platform and products in the pharmaceuticals market, and to date this continues to be our largest market served. Our customers, which include many large global pharmaceutical companies, use our technology, products and services in their manufacturing processes and process development. We have also used the technology to develop customized enzymes for use in other industrial markets. These markets consist of several large industrial verticals, including food and food ingredients, animal feed, flavors, fragrances, and agricultural chemicals. We also use our technology to develop enzymes for customers using NGS and PCR/qPCR for in vitro molecular diagnostic and molecular biology research applications.
32


Novel Biotherapeutics
We are also targeting new opportunities in the pharmaceutical industry to discover, improve, and/or develop biotherapeutic drug candidates. We believe that our CodeEvolver® protein engineering platform technology can be used to discover novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. Similarly, we believe that we can deploy our platform technology to improve specific characteristics of a customer’s pre-existing biotherapeutic drug candidate, such as its activity, stability or immunogenicity. Most notable is our lead program for the potential treatment of PKU in humans. PKU is an inherited metabolic disorder in which the enzyme that converts the essential amino acid phenylalanine into tyrosine is deficient.
We have also developed a pipeline of other biotherapeutic drug candidates, which are in preclinical development, and in which we expect to continue to make additional investments with the aim of advancing additional product candidates targeting other therapeutic areas. In March 2020 we entered into the Takeda Agreement with Takeda under which we will research and develop protein sequences for use in gene therapy products for certain diseases.
Factors considered in determining the two reportable segments of the Company include the nature of business activities, the management structure directly accountable to our CODM for operating and administrative activities, availability of discrete financial information and information presented to the Board of Directors. Our CODM regularly reviews our segments and the approach provided by management for performance evaluation and resource allocation.
Operating expenses that directly support the segment activity are allocated based on segment headcount, revenue contribution or activity of the business units within the segments, based on the corporate activity type provided to the segment. The expense allocation excludes certain corporate costs that are separately managed from the segments. This provides the CODM with more meaningful segment profitability reporting to support operating decisions and allocate resources.

33


The following tables provide financial information by our reportable business segments along with a reconciliation to consolidated loss before income taxes (in thousands):
Three months ended June 30, 2020Three months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Revenues:
  Product revenue$4,504  $—  $4,504  $6,249  $—  $6,249  
  Research and development revenue3,002  7,461  10,463  4,340  1,730  6,070  
Total revenues7,506  7,461  14,967  10,589  1,730  12,319  
Costs and operating expenses:
  Cost of product revenue1,699  —  1,699  2,772  —  2,772  
  Research and development(1)
4,997  5,490  10,487  5,134  2,856  7,990  
  Selling, general and administrative(1)
2,375  621  2,996  2,362  561  2,923  
Total segment costs and operating expenses9,071  6,111  15,182  10,268  3,417  13,685  
Income (loss) from operations$(1,565) $1,350  $(215) $321  $(1,687) $(1,366) 
Corporate costs (2)
(5,316) (4,698) 
Depreciation and amortization(506) (427) 
Loss before income taxes$(6,037) $(6,491) 
(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.
(2) Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses.

Six months ended June 30, 2020Six months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Revenues:
Product revenue$9,604  $—  $9,604  $14,236  $—  $14,236  
Research and development revenue8,775  11,258  20,033  6,440  7,225  13,665  
Total revenues18,379  11,258  29,637  20,676  7,225  27,901  
Costs and operating expenses:
Cost of product revenue4,240  —  4,240  7,163  —  7,163  
Research and development(1)
10,693  10,415  21,108  9,576  6,172  15,748  
Selling, general and administrative(1)
4,720  1,213  5,933  4,463  1,078  5,541  
Total segment costs and operating expenses19,653  11,628  31,281  21,202  7,250  28,452  
Loss from operations(1,274) (370) (1,644) (526) (25) (551) 
Corporate costs (2)
(11,042) (10,271) 
Depreciation and amortization(998) (802) 
Loss before income taxes$(13,684) $(11,624) 
(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.
(2) Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses.

34


The following tables provides stock-based compensation expense included in loss from operations (in thousands):
Three months ended June 30,
20202019
Performance EnzymesNovel BiotherapeuticsCorporate costTotalPerformance EnzymesNovel BiotherapeuticsCorporate costTotal
Stock-based compensation$741  $252  $946  $1,939  $601  $197  $1,190  $1,988  
Six months ended June 30,
20202019
Performance EnzymesNovel BiotherapeuticsCorporate costTotalPerformance EnzymesNovel BiotherapeuticsCorporate costTotal
Stock-based compensation$1,496  $494  $2,118  $4,108  $1,237  $338  $2,476  $4,051  

Significant Customers
Customers that each accounted for 10% or more of our total revenues were as follows:
Percentage of Total Revenues for the
Three Months Ended June 30,Six Months Ended June 30,
2020201920202019
Customer A16%35%20%38%
Customer B12%14%11%26%
Customer C*11%**
Customer D**13%*
Customer E38%*27%*

Customers that each accounted for 10% or more of accounts receivable had balances as of the periods presented as follows:

Percentage of Accounts Receivables as of
June 30, 2020December 31, 2019
Customer A26 %38 %
Customer B11 %10 %
Customer D30 %*
Customer F10 %*

* Percentage was less than 10%
35



Geographical Information
Geographic revenues are identified by the location of the customer and consist of the following (in thousands):
 Three Months Ended June 30,Six months ended June 30,
2020201920202019
Revenues
Americas$6,906  $4,076  $12,131  $6,913  
EMEA3,314  4,741  9,285  12,466  
APAC4,747  3,502  8,221  8,522  
Total revenues$14,967  $12,319  $29,637  $27,901  

Identifiable long-lived assets by location was as follows (in thousands):
Long-lived assetsJune 30, 2020December 31, 2019
United States$6,822  $6,282  

Identifiable goodwill was as follows (in thousands):
As of June 30, 2020 and December 31, 2019
Performance EnzymesNovel BiotherapeuticsTotal
Goodwill$2,463  $778  $3,241  

Note 14. Allowance for Credit Losses
An analysis of the allowance for credit losses is as follows (in thousands):
Three and six months
ended
June 30, 2020
Beginning Balance January 1, 2020$34  
Write-offs charged against the allowance  
Recoveries of amounts previously written off  
Ending Balance June 30, 2020$34  
36



The following tables below summarizes accounts receivable by aging category (in thousands):

June 30, 2020
31-60 Days61-90 Days91 days and overTotal over 31 daysCurrentTotal balance
Accounts receivable$  $1,000  $39  $1,039  $12,996  $14,035  

December 31, 2019
31-60 Days61-90 Days91 days and overTotal over 31 daysCurrentTotal balance
Accounts receivable$185  $7  $65  $257  $8,806  $9,063  




ITEM 2.MANAGEMENT'S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS
The following management's discussion and analysis of our financial condition and results of operations should be read in conjunction with the unaudited condensed consolidated financial statements and the related notes thereto included elsewhere in this Quarterly Report on Form 10-Q and the audited consolidated financial statements and notes thereto and management's discussion and analysis of financial condition and results of operations for the year ended December 31, 2019 included in our Annual Report on Form 10-K for the year ended December 31, 2019, as filed with the SEC on February 28, 2020 (the “Annual Report”). 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 (the "Exchange Act"). These statements include, but are not limited to, expectations regarding our strategy, business plans, financial performance and developments relating to our industry. These statements are often identified by the use of words such as “may,” “will,” “expect,” “believe,” “anticipate,” “intend,” “could,” “should,” “estimate,” or “continue,” and similar expressions or variations. Such forward-looking statements are subject to risks, uncertainties and other factors that could cause actual results and the timing of certain events to differ materially from future results expressed or implied by such forward-looking statements. Factors that could cause or contribute to such differences include, but are not limited to, those discussed in Part II, Item 1A: “Risk Factors” of this Quarterly Report on Form 10-Q and Part I, Item 1A: “Risk Factors” of our Annual Report, as incorporated herein and referenced in Part II, Item 1A: “Risk Factors" of this Quarterly Report on Form 10-Q and elsewhere in this report. The forward-looking statements in this Quarterly Report on Form 10-Q represent our views as of the date of this Quarterly Report on Form 10-Q. We anticipate that subsequent events and developments will cause our views to change. However, while we may elect to update these forward-looking statements at some point in the future, we have no current intention of doing so except to the extent required by applicable law. You should, therefore, not rely on these forward-looking statements as representing our views as of any date subsequent to the date of this Quarterly Report on Form 10-Q.


Business Overview
We discover, develop and sell proteins that deliver value to our clients in a growing set of industries. We view proteins as a vast untapped source of value-creating materials, and we are using our proven technologies, which we have been continuously improving since our inception in 2002, to commercialize an increasing number of novel proteins, both as proprietary Codexis products and in partnership with our customers.
We are a pioneer in the harnessing of computational technologies to drive biology advancements. Since 2002, we have made substantial investments in the development of our CodeEvolver® protein engineering technology platform, the primary source of our competitive advantage. Our technology platform is powered by proprietary, artificial intelligence-based, computational algorithms that rapidly mine our large and continuously growing library of protein variants’ performance attributes. These computational outputs enable increasingly reliable predictions for next generation protein variants to be engineered, enabling delivery of targeted performance enhancements in a time-efficient manner. In addition to its computational prowess, our CodeEvolver® protein engineering technology platform integrates additional modular competencies, including robotic high-throughput screening and genomic sequencing, organic chemistry and process development which are all coordinated to create our novel protein innovations.
Our approach to developing commercially viable biocatalytic manufacturing processes begins by conceptually designing the most cost-effective and practical process for a targeted product. We then develop optimized protein catalysts to enable that process design using our CodeEvolver® protein engineering platform technology. Engineered protein catalyst candidates many thousands for each protein engineering project are then rapidly screened and validated in high throughput screening under relevant manufacturing operating conditions. This approach results in an optimized protein catalyst enabling cost-efficient processes that typically are relatively simple to run in conventional manufacturing equipment. This also allows for the efficient technical transfer of our process to our manufacturing partners.
The successful embodiment of our CodeEvolver® protein engineering technology platform in commercial manufacturing processes requires well-integrated expertise in a number of technical disciplines. In addition to those directly involved in practicing our CodeEvolver® protein engineering platform technology, such as molecular biology, enzymology, microbiology, cellular engineering, metabolic engineering, bioinformatics, biochemistry and high throughput analytical chemistry, our process development projects also involve integrated expertise in organic chemistry, chemical process development, chemical engineering, fermentation process development and fermentation engineering. Our integrated, multi-disciplinary approach to biocatalyst and process development is a critical success factor for the Company.
38


We initially commercialized our CodeEvolver® protein engineering technology platform and products in the pharmaceuticals market, which remains a primary business focus. Our customers, which include many large global pharmaceutical companies, use our technology, products and services in their manufacturing processes and process development. We have also licensed our proprietary CodeEvolver® protein engineering technology platform to global pharmaceutical companies so that they may in turn use this technology to engineer enzymes for their own businesses. Most recently, in May 2019, we entered into a Platform Technology Transfer and License Agreement (the “Novartis CodeEvolver® Agreement”) with Novartis Pharma AG (“Novartis”). The Novartis CodeEvolver® Agreement allows Novartis to use our proprietary CodeEvolver® protein engineering platform technology in the field of human healthcare.
As evidence of our strategy to extend our technology beyond pharmaceutical manufacturing, we have also used the technology to develop protein catalysts and industrial enzymes for use in a wider set of industrial markets. These target industries consist of several large market verticals, including food and food ingredients, animal feed, consumer care, flavors, fragrances and agricultural chemicals. In addition, we are using our technology to develop enzymes for customers using next generation sequencing ("NGS") and polymerase chain reaction ("PCR/qPCR") for in vitro molecular diagnostic and genomic research applications. In December 2019, we entered into a license agreement to provide Roche Sequencing Solutions, Inc. ("Roche") with our first enzyme for this target market, the Company's EvoT4™ DNA ligase. In June 2020, we entered into a co-marketing and enzyme supply collaboration agreement with Alphazyme LLC for the production and co-marketing of enzymes for life science applications including, initially, high-fidelity DNA polymerase, T7 RNA polymerase and reverse transcriptase enzymes
We have also begun using the CodeEvolver® protein engineering technology platform to develop early stage, novel biotherapeutic product candidates, both for our customers and for our own business. Our first lead program was for the potential treatment of phenylketonuria ("PKU") in humans. PKU is an inherited metabolic disorder in which the enzyme that converts the essential amino acid phenylalanine into tyrosine is deficient. In October 2017, we entered into the "Nestlé Agreement” with Nestlé Health Science to advance CDX-6114, our enzyme biotherapeutic product candidate for the potential treatment of PKU. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive license to develop and commercialize CDX-6114. In January 2020, we entered a development agreement with Nestlé Health Science to advance a lead candidate, CDX-7108, into preclinical development and early clinical studies. CDX-7108 is the lead candidate for a potential treatment for a gastro-intestinal disorder. In parallel, the original Strategic Collaboration Agreement was extended through December 2021 to support the discovery of therapeutic candidates for additional disorders. In March 2020, we entered into a Strategic Collaboration and License Agreement (“Takeda Agreement”) with Shire Human Genetic Therapies, Inc., a wholly-owned subsidiary of Takeda Pharmaceutical Company Limited (“Takeda”), for the research and development of novel gene therapies for certain disease indications, including the treatment of lysosomal storage disorders and blood factor deficiencies.
Business Segments
We manage our business as two business segments: Performance Enzymes and Novel Biotherapeutics.
Performance Enzymes
We initially commercialized our CodeEvolver® protein engineering technology platform and products in the pharmaceuticals market, and to date this continues to be our largest market served. Our customers, which include many large global pharmaceutical companies, use our technology, products and services in their manufacturing processes and process development. We have also used the technology to develop customized enzymes for use in other industrial markets. These markets consist of several large industrial verticals, including food and food ingredients, animal feed, consumer care, flavors, fragrances, and agricultural chemicals. We also use our technology to develop enzymes for customers using NGS and PCR/qPCR for in vitro molecular diagnostic and molecular biology research applications.
39


Novel Biotherapeutics
We are also targeting new opportunities in the pharmaceutical industry to discover, improve, and/or develop biotherapeutic drug candidates. We believe that our CodeEvolver® protein engineering platform technology can be used to discover novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. Similarly, we believe that we can deploy our platform technology to improve specific characteristics of a customer’s pre-existing biotherapeutic drug candidate, such as its activity, stability or immunogenicity. Our first lead program was for the potential treatment of hyperphenylalaninemia (“HPA”) (also referred to as PKU) in humans. PKU is an inherited metabolic disorder in which the enzyme that converts the essential amino acid phenylalanine into tyrosine is deficient. In October 2017, we announced a global development, option and license agreement with Nestlé Health Science, to advance CDX-6114, our own novel orally administrable enzyme therapeutic candidate for the potential treatment of PKU. In July 2018, we announced that we had dosed the first subjects in a first-in-human Phase 1a dose-escalation trial with CDX-6114 for the potential treatment of PKU. The initiation of the trial triggered a $4.0 million milestone payment from Nestlé Health Science. The $1.0 million milestone payment that was triggered by the achievement of a formulation relating to CDX-6114 was received in February 2019. In January 2019, we received notice from the U.S. Food and Drug Administration (the “FDA”) that it had completed its review of our investigational new drug application (“IND”) for CDX-6114 and concluded that we may proceed with the proposed Phase 1b multiple ascending dose study in healthy volunteers in the United States. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive, worldwide, royalty-bearing, sub-licensable license for the global development and commercialization of CDX-6114 for the management of PKU. As a result of the option exercise, we earned a milestone and recognized $3.0 million in revenues in the first quarter of 2019. Upon exercising its option, Nestlé Health Science assumed all responsibilities for future clinical development and commercialization of CDX-6114, with the exception of the completion of an extension study, CDX-6114-004, which was substantially completed in the fourth quarter of 2019.
In October 2017, we separately entered into a Strategic Collaboration Agreement with Nestlé Health Science pursuant to which we and Nestlé Health Science are collaborating to leverage the CodeEvolver® platform technology to develop other novel enzymes for Nestlé Health Science’s established Consumer Care and Medical Nutrition business areas. In January 2020, we and Nestlé Health Science entered into a development agreement pursuant to which we and Nestlé Health Science are collaborating to advance a lead candidate targeting a gastro-intestinal disorder discovered through our Strategic Collaboration Agreement into pre-clinical and early clinical studies. The Strategic Collaboration Agreement was extended through December 2021.
Using our CodeEvolver® protein engineering platform technology, we have also developed a pipeline of other biotherapeutic drug candidates, which are in preclinical development. We expect to continue to make additional investments in our pipeline with the aim of advancing additional product candidates targeting other therapeutic areas.
In March 2020, we entered into the Takeda Agreement with Takeda pursuant to which we are collaborating to research and develop protein sequences for use in gene therapy products for certain disease indications in accordance with each applicable program plans for Fabry Disease, Pompe Disease, and an unnamed blood factor deficiency. In March 2020, we received a one-time, non-refundable cash payment of $8.5 million.
For further description of our business segments, see Note 13, "Segment, Geographical and Other Revenue Information" in the Notes to Unaudited Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q.
Business Update Regarding COVID-19
We are subject to risks and uncertainties as a result of the current COVID-19 pandemic. The COVID-19 pandemic has presented a substantial public health and economic challenge around the world and is affecting our employees, communities and business operations, as well as the U.S. economy and other economies worldwide. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition will depend on future developments that are highly uncertain and cannot be accurately predicted, including the duration and severity of the pandemic and the extent and severity of the impact on our customers, new information that may emerge concerning COVID-19, the actions taken to contain it or treat its impact and the economic impact on local, regional, national and international markets.
To date, we and our collaboration partners have been able to continue to supply our enzymes to our customers worldwide. However, we are dependent on our manufacturing and logistics partners and consequently, disruptions in operations of our partners and customers may affect our ability to supply enzymes to our customers. Furthermore, our ability to provide future research and development ("R&D") services will continue to be impacted as a result of governmental orders and any disruptions in operations of our customers with whom we collaborate. We are continuing to assess the potential impact of the COVID-19 pandemic on our business and operations, including our product sales, R&D service revenue, expenses and manufacturing. However, we are unable to fully determine and quantify the extent to which this pandemic affected our total revenues due to complex accounting judgments.
40


In the U.S., the impact of COVID-19, including governmental orders ("Orders") governing the operation of businesses during the pandemic, caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Research and development operations for all other projects were temporarily suspended from mid-March 2020 through the end of April in accordance with these Orders. In May 2020, we initiated limited operations and gradually ramped up our R&D operations so that we are currently utilizing the majority of our normal R&D capacity. Additionally, we have resumed small scale manufacturing at our Redwood City pilot plant in May 2020.
Our future results of operations and liquidity could be adversely impacted by delays in payments of outstanding receivable amounts beyond normal payment terms, supply chain disruptions and uncertain demand, and the impact of any initiatives or programs that we may undertake to address financial and operations challenges faced by our customers. The extent to which the COVID-19 pandemic may materially impact our financial condition, liquidity, or results of operations is uncertain.
For additional information on the various risks posed by the COVID-19 pandemic, please read Item 1A. Risk Factors included in this Quarterly Report on Form 10-Q.

Recent Investing Activities
In June 2020, we entered into a Master Collaboration and Research Agreement (“MAI Agreement”) with Molecular Assemblies, Inc. (“MAI”), to engineer enzymes to deliver differentiated and cost-effective solutions for the enzymatic synthesis of DNA. Under an associated stock purchase agreement, we purchased 1,587,050 shares of MAI's Series A preferred stock for $1.0 million and in connection with our investment, John Nicols, our chief executive officer, joined MAI’s board of directors. Under the MAI Agreement, for a fixed monthly fee payable in shares of Series A preferred stock, we will apply our CodeEvolver® protein engineering platform technology to improve the DNA polymerase enzymes that are critical for enzymatic DNA synthesis. Through the provision of these services, we are eligible to earn additional shares of Series A preferred stock. MAI will combine its advanced chemistries with our enzymes to drive the process to commercialization. For additional information, see Note 12, "Related Party Transactions," in the Notes to Unaudited Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q.

Results of Operations Overview
Total revenues increased to $15.0 million for the second quarter of 2020 from $12.3 million for the second quarter of 2019, due to increases in research and development revenue partially offset by decreases in product revenue.
Product revenue for the second quarter of 2020 decreased by $1.7 million to $4.5 million from $6.2 million for the second quarter of 2019 due to timing of customer demand for branded products.
Research and development revenue increased by $4.4 million for the second quarter of 2020 to $10.5 million from $6.1 million in the second quarter of 2019, primarily due to revenues from Novartis under the Novartis CodeEvolver® Agreement and recognition of license fees from Takeda under the Takeda Agreement, partially offset by lower revenue as a result of delays attributable to the COVID-19 pandemic.
Product gross margins were 62% for the second quarter of 2020, compared to 56% in the second quarter of 2019, due to improved product mix. Our profit margins are affected by many factors including product pricing and costs of internal and third-party fixed and variable costs. Profit margin data are used as a management performance measure to provide additional information regarding our results of operations on a consolidated basis.
Research and development expense increased by $2.6 million, or 31%, to $10.9 million for the second quarter of 2020, compared to the second quarter of 2019, primarily due to an increase in costs associated with outside services relating to Chemistry, Manufacturing and Controls ("CMC") and regulatory expenses, higher headcount, and higher allocable expenses, partially offset by lower lab supply expenses and outside services.
Selling, general and administrative expense increased by $0.6 million, or 8%, to $8.5 million for the second quarter of 2020 compared to the second quarter of 2019, primarily due to an increase in costs associated with legal and accounting fees, higher facilities and headcount offset by lower allocable expenses.
Income earned in certain countries outside of the United States is subject to the imposition of income tax withholding by foreign taxing authorities when the income is paid to the United States. We recognized $0.3 million in income tax expense in the second quarter of 2020 due to the imposition of income tax on revenue by foreign taxing authorities.
41


Net loss for the second quarter of 2020 was $6.3 million, representing a net loss of $0.11 per basic and diluted share. This compares to a net loss of $6.5 million, representing a net loss of $0.12 per basic and diluted share for the second quarter of 2019. The decrease in net loss for the second quarter over the same period of the prior year is primarily related to increases in research and development revenue partially offset by higher research and development expenses and lower product revenue and related costs.
Cash and cash equivalents decreased by $14.8 million to $75.6 million as of June 30, 2020 compared to $90.5 million as of December 31, 2019. Net cash used in operating activities increased to $11.5 million in the six months ended June 30, 2020 compared to $7.9 million in the six months ended June 30, 2019. We believe that based on our current level of operations, our existing cash, and cash equivalents will provide adequate funds for ongoing operations, planned capital expenditures and working capital requirements for at least the next 12 months.
In June 2017, we entered into a loan and security agreement that allows us to borrow up to $10.0 million under a term loan, and up to $5.0 million under a revolving credit facility with 80% of certain eligible accounts receivable as a borrowing base (the "Credit Facility"). Obligations under the Credit Facility are secured by a lien on substantially all of our personal property other than our intellectual property. In September 2019, we entered into a Seventh Amendment to the Credit Facility whereby the draw period on the term debt was extended to September 30, 2020. We may draw on the Term Debt at any time prior to September 30, 2020, subject to customary conditions for funding including, among others, that no event of default exists. As of June 30, 2020, no amounts were borrowed under the Credit Facility and we were in compliance with the covenants for the Credit Facility. See Note 11, "Commitments and Contingencies" in the Notes to Unaudited Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q.
Below is an overview of our results of operations by business segments:
Performance Enzymes
Revenues decreased by $3.1 million, or 29%, to $7.5 million for the second quarter of 2020, compared to the second quarter of 2019,
Product gross margins were 62% in the second quarter of 2020, compared to 56% in the corresponding period in 2019 due to variations in product mix.
Research and development expense decreased by $0.1 million, or 3%, to $5.0 million for the second quarter of 2020, compared to the second quarter of 2019, primarily due to lower allocable expenses and lab supplies costs partially offset by an increase in costs associated with higher headcount and outside services.
Selling, general and administrative expense increased by $13 thousand, or 1%, to $2.4 million for the second quarter of 2020, compared to the second quarter of 2019, primarily due to higher stock compensation expense and allocable expenses partially offset by lower costs associated with travel and outside services.
Novel Biotherapeutics
Revenues increased by $5.7 million, or 331%, to $7.5 million for the second quarter of 2020, compared to the second quarter of 2019, primarily due to recognition of license fees from Takeda under the Takeda Strategic Collaboration and License Agreement, partially offset by a decrease in prior year functional license fee revenue from Nestlé Health Science.
Research and development expense increased by $2.6 million, or 92%, to $5.5 million for the second quarter of 2020, compared to the second quarter of 2019, primarily due to an increase in costs associated with outside services relating to CMC regulatory expenses, higher outside services, higher headcount and higher stock compensation expense.
Selling, general and administrative expense increased by $0.1 million, or 11%, to $0.6 million for the second quarter of 2020 compared to the second quarter of 2019, primarily due to an increase in costs associated with higher headcount, higher allocable expense and higher stock-based compensation.
GSK Platform Technology Transfer, Collaboration and License Agreement
In July 2014, we entered into a CodeEvolver® protein engineering platform technology transfer collaboration and license agreement (the "GSK CodeEvolver® Agreement") with GlaxoSmithKline ("GSK"). Pursuant to the terms of the agreement, we granted GSK a non-exclusive license to use the CodeEvolver® protein engineering platform technology to develop novel enzymes for use in the manufacture of GSK's pharmaceutical and health care products.
42


We received an up-front fee upon the execution of the agreement in July 2014 and milestone payments in each of the years from 2014 through April 2016. We completed the transfer of the CodeEvolver® protein engineering platform technology to GSK in April 2016 and all revenues relating to the technology transfer have been recognized as of April 2016. We have the potential to receive additional cumulative contingent payments that range from $5.75 million to $38.5 million per project based on GSK’s successful application of the licensed technology. We are also eligible to receive royalties based on net sales, if any, of a limited set of products developed by GSK using our CodeEvolver® protein engineering platform technology.
In September 2019, we recognized revenue of $2.0 million for the milestone payment from GSK relating to the advancement of an enzyme developed by GSK using our CodeEvolver® protein engineering platform technology. We recognized no research and development revenue for the three and six months ended June 30, 2020 and 2019.
Merck Platform Technology Transfer and License Agreement
In August 2015, we entered into a CodeEvolver® platform technology transfer collaboration and license agreement (the "Merck CodeEvolver® Agreement") with Merck, Sharp & Dohme ("Merck"), which allows Merck to use the CodeEvolver® protein engineering technology platform in the field of human and animal healthcare.
We received an up-front license fee upon execution of the Merck CodeEvolver® Agreement, and milestone payments in September 2015 and in September 2016, when we completed the transfer of the engineering platform technology. Additionally, we recognized research and development revenues of $0.2 million and $1.0 million for the three and six months ended June 30, 2020, respectively, compared to $1.0 million and $2.0 million for the three and six months ended June 30, 2019, respectively, for various research projects under our collaborative arrangement.
We have the potential to receive payments of up to a maximum of $15.0 million for each commercial active pharmaceutical ingredient ("API") that is manufactured by Merck using one or more novel enzymes developed by Merck using the CodeEvolver® protein engineering technology platform. The API payments are based on the quantity of API developed and manufactured by Merck and will be recognized as usage-based royalties.
In January 2019, we entered into an amendment to the Merck CodeEvolver® Agreement to install certain CodeEvolver® protein engineering technology upgrades into Merck’s platform license installation and maintain those upgrades for a multi-year term. The license installation was completed in 2019 and we recognized $0.9 million as license fee revenue accordingly in three and six months ended June 30, 2019, respectively, under the amendment. Pursuant to the agreement, Merck has options to future technology enhancements for a specified fee. As of June 30, 2020, Merck has not exercised its option for technology enhancements. We recognized $25 thousand and $0.1 million in research and development revenues for the three and six months ended June 30, 2020, respectively. As of June 30, 2020 and December 31, 2019, we had deferred revenue balances of $0.1 million and nil, respectively.
Global Development, Option and License Agreement, Strategic Collaboration Agreement, and Development Agreement
In October 2017, we entered into the Nestlé Agreement with Societé des Produits Néstle S.A., formerly known as Nestec Ltd. ("Nestlé Health Science") and, solely for the purpose of the integration and the dispute resolution clauses of the Agreement, Nestlé Health Science S.A., to advance CDX-6114, our enzyme biotherapeutic product candidate for the potential treatment of PKU.
We received an upfront cash payment of $14.0 million upon the execution of the Nestlé Agreement, a $4.0 million milestone payment after dosing the first subjects in a first-in-human Phase 1a dose-escalation trial with CDX-6114, and a $1.0 million milestone payment upon achievement of a milestone relating to formulation of CDX-6114. The $4.0 million milestone payment that was triggered by the initiation of the trial was received in September 2018 and the $1.0 million milestone payment that was triggered by the achievement of a formulation relating to CDX-6114 was received in February 2019. The upfront payment and the variable consideration relating to the progress payment of $4.0 million and milestone payment of $1.0 million were recognized over time as the development work was performed. Revenue was recognized using a single measure of progress that depicted our performance in transferring control of the services, which was based on the ratio of level of effort incurred to date compared to the total estimated level of effort required to complete all performance obligations under the agreement. We recognized nominal research and development revenue for the three and six months ended June 30, 2020, respectively, compared to $0.5 million and $1.7 million for the three and six months ended June 30, 2019, respectively.
43


In January 2019, we received notice from the U.S. Food and Drug Administration (the "FDA") that it had completed its review of our investigational new drug application (" IND") for CDX-6114 and concluded that we may proceed with the proposed Phase 1b multiple ascending dose study in healthy volunteers in the United States. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive, worldwide, royalty-bearing, sub-licensable license for the global development and commercialization of CDX-6114 for the management of PKU. The option payment of $3.0 million was recognized in the first quarter of 2019 as research and development revenue. Upon exercising its option, Nestlé Health Science assumed all responsibilities for future clinical development and commercialization of CDX-6114, with the exception of the completion of an extension study, CDX-6114-004, which was substantially completed in the fourth quarter of 2019. We are eligible to receive payments from Nestlé Health Science under the Nestlé Agreement that include (i) development and approval milestones of up to $85.0 million, (ii) sales-based milestones of up to $250.0 million in the aggregate, which aggregate amount is achievable if net sales exceed $1.0 billion in a single year, and (iii) tiered royalties, at percentages ranging from the middle single digits to low double-digits, of net sales of Product.
In October 2017, we also entered into a Strategic Collaboration Agreement (the “Strategic Collaboration Agreement”) with Nestlé Health Science pursuant to which we and Nestlé Health Science are collaborating to leverage the CodeEvolver® protein engineering technology platform to develop novel enzymes for Nestlé Health Science’s established Consumer Care and Medical Nutrition business areas. Under the Strategic Collaboration Agreement, we received an upfront payment of $1.2 million in 2017 and an incremental $0.6 million payment in September 2018 for additional services.
In January 2020, we and Nestlé Health Science entered into a development agreement pursuant to which we and Nestlé Health Science are collaborating to advance a lead candidate, CDX-7108, targeting a gastro-intestinal disorder discovered through our Strategic Collaboration Agreement into pre-clinical and early clinical studies. The Strategic Collaboration Agreement was extended through December 2021.
We recognized research and development fees of $1.7 million and $3.3 million for the three and six months ended June 30, 2020, respectively, compared to $1.2 million and $2.5 million for the three and six months ended June 30, 2019, respectively.
Strategic Collaboration Agreement
In April 2018, we entered into the Porton Agreement with Porton to license key elements of our biocatalyst technology for use in Porton’s global custom intermediate and API development and manufacturing business. Under the Porton Agreement, we are eligible to receive annual collaboration fees and research and development revenues. We received an initial collaboration fee of $0.5 million within 30 days of the effective date, $1.5 million upon the first anniversary of the effective date of the agreement. We recognized revenue of $1.0 million upon the second anniversary of the effective date of the agreement. We are eligible to receive $1.0 million on the third anniversary of the effective date of the agreement. We completed the technical transfer in the fourth quarter of 2018. Revenue relating to the functional license provided to Porton was recognized at a point in time when control of the license transferred to the customer. We recognized research and development revenue related to the Porton Agreement of $1.0 million and $1.1 million in the three and six months ended June 30, 2020, respectively, compared to nil in the three and six months ended June 30, 2019.
44


Platform Technology Transfer and License Agreement
In May 2019, we entered into a Platform Technology Transfer and License Agreement (the “Novartis CodeEvolver® Agreement”) with Novartis Pharma AG (“Novartis”). The Agreement allows Novartis to use our proprietary CodeEvolver® protein engineering platform technology in the field of human healthcare. Under the Novartis CodeEvolver® Agreement, we are transferring our proprietary CodeEvolver® protein engineering platform technology to Novartis over approximately 23 months starting with the date on which we commenced the technology transfer (the “Technology Transfer Period”). As a part of this technology transfer, the Company provided to Novartis our proprietary enzymes, proprietary protein engineering protocols and methods, and proprietary software algorithms. In addition, teams of the Company and Novartis scientists participated in technology training sessions and collaborative research projects at our laboratories in Redwood City, California and at a designated Novartis laboratory in Basel, Switzerland. Upon completion of technology transfer, Novartis will have the CodeEvolver® protein engineering platform technology installed at its designated laboratory. Pursuant to the agreement, we received an upfront payment of $5.0 million shortly after the effective date of the Novartis CodeEvolver® Agreement. In the second quarter of 2020, we completed the second technology milestone transfer under the agreement and became eligible to receive a milestone payment of $4.0 million, which we subsequently received in July 2020. We are eligible to receive an additional $5.0 million upon satisfactory completion of the third technology transfer milestone. In consideration for the continued disclosure and license of improvements to our technology and materials during a multi-year period that begins on the conclusion of the Technology Transfer Period (“Improvements Term”), Novartis will pay us annual payments which amount to an additional $8.0 million. The Company also has the potential to receive quantity-dependent, usage payments for each API that is manufactured by Novartis using one or more enzymes that have been developed or are in development using the CodeEvolver® protein engineering platform technology during the period that begins on the conclusion of the Technology Transfer Period and ends on the expiration date of the last to expire licensed patent. These product-related usage payments, if any, will be paid by Novartis to the Company for each quarter that Novartis manufactures API using a CodeEvolver®-developed enzyme. The usage payments will be based on the total volume of API produced using the CodeEvolver®-developed enzyme. These usage payments can begin in the clinical stage and will extend throughout the commercial life of each API. Revenue for the combined initial license and technology transfer performance obligation, which is expected to occur over twenty-three months, is being recognized using a single measure of progress that depicts our performance in transferring control of the services, which is based on the ratio of level of effort incurred to date compared to the total estimated level of effort required to complete the performance obligation relating to the combined initial license and technology transfer. Revenue allocated to future improvements will be recognized during the Improvement Term. We recognized $0.9 million and $3.7 million in research and development revenue for the three and six months ended June 30, 2020, respectively, and no revenue for the three and six months ended June 30, 2019, respectively, from the Novartis CodeEvolver® Agreement.
Strategic Collaboration and License Agreement
In March 2020, we entered into a Strategic Collaboration and License Agreement (the “Takeda Agreement”) with Shire Human Genetic Therapies, Inc., a wholly-owned subsidiary of Takeda Pharmaceutical Co. Ltd. (“Takeda”), under which we will collaborate to research and develop protein sequences for use in gene therapy products for certain diseases. On execution of the Takeda Agreement, we received an up-front non-refundable cash payment of $8.5 million. Revenue relating to the functional licenses provided to Takeda was recognized at a point in time when the control of the license transferred to the customer. We recognized license fees of $5.7 million and $8.0 million as research & development revenue in the three and six months ended June 30, 2020, respectively. Other potential payments from Takeda include (i) reimbursement of research and development fees and pre-clinical approval milestones for initial programs of up to $22.3 million, (ii) development and commercialization-based milestones, per target gene, of up to $100.0 million, the modulation of which leads to treatment of certain diseases by the applicable product, and (iii) tiered royalties, at percentages ranging from the middle-single digit to low single-digit of sales of the applicable product.
Master Collaboration and Research Agreement and Stock Purchase Agreement
In June 2020, we entered into a Stock Purchase Agreement with Molecular Assemblies, Inc. (“MAI”) pursuant to which we purchased 1,587,050 shares of MAI's Series A preferred stock for $1.0 million. In connection with the transaction, our chief executive officer, John Nicols, also joined MAI’s board of directors.
45


At the same time, we entered into a Master Collaboration and Research Agreement (the “MAI Agreement”) with MAI to engineer DNA polymerase enzymes to deliver differentiated and cost-effective solutions for the enzymatic synthesis of DNA. Under the MAI Agreement and its related statement of work (“SOW”), we will apply our CodeEvolver® protein engineering platform technology to improve the DNA polymerase enzymes that are critical for enzymatic DNA synthesis. Based on these services, the Company is eligible to earn additional shares of MAI's Series A preferred stock. MAI will combine its advanced chemistries with our enzymes to drive the process to commercialization. Under the MAI Agreement and its associated SOW, we will engage in research and development activities to engineer DNA polymerase enzymes for the enzymatic synthesis of DNA in exchange for monthly fees in the form of shares of Series A preferred stock in MAI. We are eligible to earn such non-monetary payments over ten to thirteen months, and any such shares would be issued thirty days in arrears after each calendar quarter-end. We are also eligible to receive amounts for bonuses, targets and milestones on achievement of timeline and project goals specified in the SOW. Payments for bonuses, targets and milestones on achievement of timeline and project goals are to be issued thirty days after the Company provides notification of completion. Under the MAI Agreement, the Company will have the right to use and sell the engineered enzymes to third parties for any purpose other than for the synthesis of native DNA. Under the MAI Agreement, we would make a $0.5 million payment to MAI on meeting a milestone of $5.0 million in aggregate commercial sales by the Company to third parties of the engineered enzymes or any product incorporating or derived from the engineered enzymes for any purpose other than the synthesis of native DNA. The MAI Agreement contemplates that we and MAI will enter into a Commercialization and Enzyme Supply Agreement (the “CESA”) within six months following the completion of certain timelines specified in the SOW. In addition, we and MAI have agreed pursuant to the MAI Agreement to certain terms to be contained within the CESA in the event that the CESA becomes executed in the future. Those include: (a) that MAI would receive an exclusive license to use the DNA polymerase enzymes engineering by us under the MAI Agreement in the synthesis of native DNA and a non-exclusive license to use these enzymes for research and development on the synthesis of non-native DNA, and (b) that we would become the exclusive manufacturer of these enzymes for MAI, its affiliates and licensees.
We recognized no research and development revenue in the three and six months ended June 30, 2020 from transactions with MAI.

Results of Operations
The following table shows the amounts from our unaudited condensed consolidated statements of operations for the periods presented (in thousands):
 Three months ended June 30,ChangeSix months ended June 30,Change
 20202019$%20202019$%
Revenues:
Product revenue$4,504  $6,249  $(1,745) (28)%$9,604  $14,236  $(4,632) (33)%
Research and development revenue10,463  6,070  4,393  72%20,033  13,665  6,368  47%
Total revenues14,967  12,319  2,648  21%29,637  27,901  1,736  6%
Costs and operating expenses:
Cost of product revenue1,699  2,772  (1,073) (39)%4,240  7,163  (2,923) (41)%
Research and development10,853  8,274  2,579  31%21,820  16,290  5,530  34%
Selling, general and administrative8,522  7,896  626  8%17,512  16,311  1,201  7%
Total costs and operating expenses21,074  18,942  2,132  11%43,572  39,764  3,808  10%
Loss from operations(6,107) (6,623) 516  8%(13,935) (11,863) (2,072) (17)%
Interest income57  220  (163) (74)%323  450  (127) (28)%
Other income (expenses), net13  (88) 101  115%(72) (211) 139  66%
Loss before income taxes(6,037) (6,491) 454  7%(13,684) (11,624) (2,060) (18)%
Provision for income taxes307  16  291  1,819%312  19  293  1,542%
Net loss$(6,344) $(6,507) $163  3%$(13,996) $(11,643) $(2,353) (20)%
46



Revenues
Our revenues comprise product revenue and research and development revenue as follows:
Product revenue consists of sales of protein catalysts, pharmaceutical intermediates, and Codex® biocatalyst panels and kits.
Research and development revenue include license, technology access and exclusivity fees, research services fees, milestone payments, royalties, optimization and screening fees.
The following table shows the amounts of our product revenue and research and development revenue from our unaudited condensed consolidated statements of operations for the periods presented (in thousands):
Three months ended June 30,ChangeSix months ended June 30,Change
(In Thousands)20202019$%20202019$%
Product revenue$4,504  $6,249  $(1,745) (28)%$9,604  $14,236  $(4,632) (33)%
Research and development revenue10,463  6,070  4,393  72%20,033  13,665  6,368  47%
Total revenues$14,967  $12,319  $2,648  21%$29,637  $27,901  $1,736  6%

Revenues typically fluctuate on a quarterly basis due to the variability in our customers' manufacturing schedules and the timing of our customers' clinical trials. In addition, we have limited internal capacity to manufacture enzymes. As a result, we are dependent upon the performance and capacity of third-party manufacturers for the commercial scale manufacturing of the enzymes used in our pharmaceutical and fine chemicals business.
We accept purchase orders for deliveries covering periods from one day up to approximately 14 months from the date on which the order is placed. However, a majority of the purchase orders can be revised or cancelled by the customer without penalty. Considering these industry practices and our experience, we do not believe the total of customer purchase orders outstanding (backlog) provides meaningful information that can be relied on to predict actual sales for future periods.
Total revenues increased by $2.6 million and $1.7 million in the three and six months ended June 30, 2020, respectively, compared to the same periods in 2019, primarily due to higher research and development revenue offset by lower product revenue.
Product revenue decreased by $1.7 million and $4.6 million in the three and six months ended June 30, 2020, respectively, compared to the same periods in 2019, primarily due to timing of customer demand for branded products.
Research and development revenue increased by $4.4 million and $6.4 million in the three and six months ended June 30, 2020, respectively, compared to the same periods in 2019. The increase in research and development revenue was primarily due to revenues from Novartis Pharma AG under the Novartis CodeEvolver® Agreement, recognition of license fees from Takeda under the Takeda Strategic Collaboration and License Agreement, and recognition of license fees from Porton, partially offset by lower revenue and prior year functional license fee revenue from Nestlé Health Science.
47


Cost and Operating Expenses
Our cost and operating expenses comprise cost of product revenue, research and development expense, and selling, general and administrative expense. The following table shows the amounts of our cost of product revenue, research and development expense, and selling, general and administrative expense from our unaudited condensed consolidated statements of operations for the periods presented (in thousands):
Three months ended June 30,ChangeSix months ended June 30,Change
(In Thousands)20202019$%20202019$%
Cost of product revenue$1,699  $2,772  $(1,073) (39)%4,240  7,163  $(2,923) (41)%
Research and development10,853  8,274  2,579  31%21,820  16,290  5,530  34%
Selling, general and administrative8,522  7,896  626  8%17,512  16,311  1,201  7%
Total costs and operating expenses$21,074  $18,942  $2,132  11%$43,572  $39,764  $3,808  10%

Cost of Product Revenue and Product Gross Margin
Our revenues from product revenue are derived entirely from our Performance Enzymes segment. Revenues from the Novel Biotherapeutics segment are from collaborative research and development activities and not from product revenue.
The following table shows the amounts of our product revenue, cost of product revenue, product gross profit and product gross margin from our unaudited condensed consolidated statements of operations for the periods presented (in thousands):
Three months ended June 30,ChangeSix months ended June 30,Change
(In Thousands)20202019$%20202019$%
Product revenue$4,504  $6,249  $(1,745) (28)%$9,604  $14,236  $(4,632) (33)%
Cost of product revenue1,699  2,772  (1,073) (39)%4,240  7,163  (2,923) (41)%
Product gross profit$2,805  $3,477  $(672) (19)%$5,364  $7,073  $(1,709) (24)%
Product gross margin (%)62 %56 %56 %50 %

Cost of product revenue comprises both internal and third-party fixed and variable costs, including materials and supplies, labor, facilities and other overhead costs associated with our product revenue.
Product gross margins were 62% and 56% in the three and six months ended June 30, 2020, respectively, compared to 56% and 50% and in the corresponding periods in 2019 due to variations in product mix.

Research and Development Expenses
Research and development expenses consist of costs incurred for internal projects as well as collaborative research and development activities. These costs primarily consist of (i) employee-related costs, which include salaries and other personnel-related expenses (including stock-based compensation), (ii) various allocable expenses, which include occupancy-related costs, supplies, and depreciation of facilities and laboratory equipment, and (iii) external costs. Research and development expenses are expensed when incurred.
Research and development expenses increased by $2.6 million, or 31%, during the three months ended June 30, 2020 and by $5.5 million, or 34%, in the six months ended June 30, 2020, compared to the same periods in 2019. The increase in research and development expenses was primarily due to an increase in costs associated with outside services relating to CMC and regulatory expenses, higher headcount, and higher allocable expenses partially offset by lower lab supplies and outside services.

48


Selling, General and Administrative Expenses
Selling, general and administrative expenses consist of employee-related costs, which include salaries and other personnel-related expenses (including stock-based compensation), hiring and training costs, consulting and outside services expenses (including audit and legal costs), marketing costs, building lease costs, and depreciation and amortization expense.
Selling, general and administrative expenses increased by $0.6 million, or 8%, in the three months ended June 30, 2020. and by $1.2 million, or 7%, in the six months ended June 30, 2020 compared to the same periods in 2019. The increase in selling, general and administrative expense was primarily due to an increase in costs associated with legal and accounting fees, higher facilities and headcount, and licensed technology partially offset by lower allocable expenses and lower travel expenses.

Interest Income and Other Expense
Three months ended June 30,ChangeSix months ended June 30,Change
(In Thousands)20202019$%20202019$%
Interest income$57  $220  $(163) (74)%323  450  $(127) (28)%
Other income (expense), net13  (88) 101  115%(72) (211) 139  66%
Total other income$70  $132  $(62) (47)%$251  $239  $12  5%

Interest Income
Interest income decreased by $0.2 million and $0.1 million in the three and six months ended June 30, 2020, respectively, compared to the same periods in 2019 due to lower average interest rates on declining average cash balances.

Other Income (Expense)
Other income increased by $0.1 million in three and six months ended June 30, 2020, respectively, compared to the same period in 2019 due to increases in fluctuations in foreign currency.

Provision for Income Taxes
We recognized an income tax provision of $0.3 million in the three and six months ended June 30, 2020, respectively. We recognized an income tax provision of $16 thousand and $19 thousand in the three and six months ended June 30, 2019, respectively. The increase in income tax provision was primarily due to mandatory income tax withheld by a foreign taxing authority and additional interest recorded on uncertain tax positions from previous years.

Net loss
The net loss for the second quarter of 2020 was $6.3 million, representing a net loss of $0.11 per basic and diluted share. This compares to a net loss of $6.5 million, representing a net loss of $0.12 per basic and diluted share for the second quarter of 2019. The decrease in net loss for the three months ended June 30, 2020 compared to the same period of the prior year was primarily related to increases in revenue partially offset by higher operating expenses and the impact of the COVID-19 pandemic.
For the six months ended June 30, 2020, the net loss was $14.0 million, representing a net loss of $0.24 per basic and diluted share. This compares to a net loss of $11.6 million, representing a net loss of $0.21 per basic and diluted share for the six months ended June 30, 2019. The increase in net loss for the six months ended June 30, 2020 compared to the same period of the prior year was primarily related to higher operating expenses and the impact of the COVID-19 pandemic partially offset by increases in revenue.

49


Results of Operations by Segment (in thousands, except percentages)
Revenue by segment
Three months ended June 30,Change
20202019Performance EnzymesNovel Biotherapeutics
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal$%$%
Revenues:
Product revenue$4,504  $—  $4,504  $6,249  $—  $6,249  $(1,745) (28)%$—  — %
Research and development revenue3,002  7,461  10,463  4,340  1,730  6,070  (1,338) (31)%5,731  331 %
Total revenues$7,506  $7,461  $14,967  $10,589  $1,730  $12,319  $(3,083) (29)%$5,731  331 %

Six months ended June 30,Change
20202019Performance EnzymesNovel Biotherapeutics
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal$%$%
Revenues:
Product revenue$9,604  $—  $9,604  $14,236  $—  $14,236  $(4,632) (33)%$—  — %
Research and development revenue8,775  11,258  20,033  6,440  7,225  13,665  2,335  36 %4,033  56 %
Total revenues$18,379  $11,258  $29,637  $20,676  $7,225  $27,901  $(2,297) (11)%$4,033  56 %

Revenues from the Performance Enzymes segment decreased by $3.1 million, or 29%, to $7.5 million for the three months ended June 30, 2020, compared to the three months ended June 30, 2019. Revenues decreased by $2.3 million, or 11%, to $18.4 million for the six months ended June 30, 2020, compared to the six months ended June 30, 2019, primarily due to a decrease in product revenue due to timing of customer demand for branded products partially offset by recognition of revenue from Novartis Pharma AG under the Novartis CodeEvolver® Agreement, revenue under a license agreement with Roche Sequencing Solutions, Inc. licensing our EvoT4 DNA™ ligase high-performance molecular diagnostic enzyme, and license fees from Porton.
Revenues from the Novel Biotherapeutics segment increased by $5.7 million, or 331%, to $7.5 million for the three months ended June 30, 2020, compared to the three months ended June 30, 2019. Revenues increased by $4.0 million, or 56%, to $11.3 million for the six months ended June 30, 2020, compared to the six months ended June 30, 2019, primarily due to recognition of license fees from Takeda under the Takeda Strategic Collaboration and License Agreement, partially offset by a decrease in prior year functional license fee revenue from Nestlé Health Science.

50


Cost and Operating Expenses by Segment
Three months ended June 30,Change
20202019Performance EnzymesNovel Biotherapeutics
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal$%$%
Cost of product revenue$1,699  $—  $1,699  $2,772  $—  $2,772  $(1,073) (39)%$—  — %
Research and development (1)
4,997  5,490  10,487  5,134  2,856  7,990  (137) (3)%2,634  92 %
Selling, general and administrative (1)
2,375  621  2,996  2,362  561  2,923  13  %60  11 %
Total segment costs and operating expenses$9,071  $6,111  15,182  $10,268  $3,417  13,685  $(1,197) (12)%$2,694  79 %
Corporate costs5,386  4,830  
Depreciation and amortization506  427  
Total costs and operating expenses$21,074  $18,942  

(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.

Six months ended June 30,Change
20202019Performance EnzymesNovel Biotherapeutics
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal$%$%
Cost of product revenue$4,240  $—  $4,240  $7,163  $—  $7,163  $(2,923) (41)%$—  %
Research and development(1)
10,693  10,415  21,108  9,576  6,172  15,748  1,117  12 %4,243  69 %
Selling, general and administrative(1)
4,720  1,213  5,933  4,463  1,078  5,541  257  %135  13 %
Total segment costs and operating expenses$19,653  $11,628  31,281  $21,202  $7,250  28,452  $(1,549) (7)%$4,378  60 %
Corporate costs11,293  10,510  
Depreciation and amortization998  802  
Total costs and operating expenses$43,572  $39,764  
(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.

51


For a discussion of product cost of revenue, see "Results of Operations".
Research and development expense in the Performance Enzymes segment decreased by $0.1 million, or 3%, to $5.0 million in the second quarter of 2020, compared to the second quarter of 2019. The decrease was primarily due to lower allocable expenses partially offset by an increase in costs associated with higher headcount and outside services. Research and development expense in the Performance Enzymes segment increased by $1.1 million, or 12%, to $10.7 million in the six months ended June 30, 2020 compared to the corresponding period in 2019. The increase was primarily due to an increase in costs associated with higher headcount partially offset by lower allocable expenses and lab supplies costs.
Selling, general and administrative expense in the Performance Enzymes segment increased by $13.0 thousand, or 1%, to $2.4 million in the second quarter of 2020, compared to the second quarter of 2019. Selling, general and administrative expense in the Performance Enzymes segment increased by $0.3 million, or 6%, to $4.7 million in the six months ended June 30, 2020, compared to the corresponding period in 2019. The increase was primarily due to higher stock compensation expense and allocable expenses partially offset by lower costs associated with travel and outside services.
Research and development expense in the Novel Biotherapeutics segment increased by $2.6 million, or 92%, to $5.5 million in the second quarter of 2020, compared to the second quarter of 2019. Research and development expense in the Novel Biotherapeutics segment increased by $4.2 million, or 69%, to $10.4 million in the second quarter 2020, compared to the same corresponding period in 2019. The increase was primarily due to an increase in costs associated with outside services relating to CMC regulatory expenses for CDX-7108 which we are developing pursuant to our development agreement with Nestlé Health Science and higher headcount and higher allocable expenses.
Selling, general and administrative expense in the Novel Biotherapeutics segment increased by $0.1 million, or 11%, to $0.6 million in the second quarter of 2020, compared to the second quarter of 2019. Selling, general and administrative expense in the Novel Biotherapeutics segment increased by $0.1 million, or 13%, to $1.2 million in the six months ended June 30, 2020, compared to the corresponding period in 2019. The increase was primarily due to an increase in costs associated with higher headcount and higher stock-based compensation partially offset by a reduction in allocable expenses.

Liquidity and Capital Resources
Liquidity is the measurement of our ability to meet working capital needs and to fund capital expenditures. We have historically funded our operations primarily through cash generated from operations, stock option exercises and public and private offerings of our common stock. We also have the ability to borrow up to $15.0 million under our Credit Facility. We actively manage our cash usage and investment of liquid cash to ensure the maintenance of sufficient funds to meet our working capital needs. The majority of our cash and cash equivalents are held in U.S. banks, and our foreign subsidiaries maintain a limited amount of cash in their local banks to cover their short-term operating expenses.
The following is a summary of cash and cash equivalents balances and working capital as of June 30, 2020 and December 31, 2019 (in thousands):
(In Thousands)June 30, 2020December 31, 2019
Cash and cash equivalents$75,649  $90,498  
Working capital$87,554  $98,817  

We have historically experienced negative cash flows from operations as we continue to invest in key technology development projects and improvements to our CodeEvolver® protein engineering technology platform and expand our business development and collaboration with new customers. Our cash flows from operations will continue to be affected principally by sales and gross margins from licensing our technology to major pharmaceutical companies, product revenue and collaborative research and development services provided to customers, as well as our headcount costs, primarily in research and development. Our primary source of cash flows from operating activities is cash receipts from licensing our technology to major pharmaceutical companies, and our customers for purchases of products and/or collaborative research and development services. Our largest uses of cash from operating activities are for employee-related expenditures, rent payments, inventory purchases to support our product revenue and non-payroll research and development costs.
We are actively collaborating with new and existing customers in the pharmaceutical and food industries. We believe that we can utilize our current products and services, and develop new products and services, to increase our revenues and gross margins in future periods.
52



In addition to our existing cash and cash equivalents, we are eligible to earn milestone and other contingent payments for the achievement of defined collaboration objectives and certain royalty payments under our collaboration agreements. Our ability to earn these milestone and contingent payments and the timing of achieving these milestones is primarily dependent upon the outcome of our collaborators’ research and development activities and is uncertain at this time. In 2016, we completed the final phase in the transfer of CodeEvolver® technology to Merck under the Merck CodeEvolver® Agreement. Following the completion of the technology transfer to Merck, we are now eligible to receive payments of up to $15.0 million for each commercial API that is manufactured by Merck using one or more novel enzymes developed by Merck using the CodeEvolver® technology. In addition, depending upon GSK's successful application of the licensed technology, we have the potential to receive additional contingent payments that range from $5.75 million to $38.5 million per project. In May 2019, we entered into a Platform Technology Transfer and License Agreement with Novartis Pharma AG. The Novartis CodeEvolver® Agreement allows Novartis to use the Company's proprietary CodeEvolver® protein engineering platform technology in the field of human healthcare. Pursuant to the agreement, we received an upfront payment of $5.0 million shortly after the effective date of the Novartis CodeEvolver® Agreement. In the second quarter of 2020, we completed the second technology transfer milestone under the agreement and became eligible to receive a milestone payment of $4.0 million, which we subsequently received in July 2020. We are eligible to receive an additional $5.0 million upon satisfactory completion of the third technology transfer milestone. In consideration for the continued disclosure and license of improvements to the our technology and materials during a multi-year period that begins on the conclusion of the Technology Transfer Period, Novartis will pay us annual payments which amount to an additional $8.0 million.
In October 2017, we entered into the Nestlé Agreement with Nestlé Health Science. Pursuant to the Nestlé Agreement, Nestlé Health Science paid us an upfront cash payment of $14.0 million. In July 2018, we announced that we had dosed the first subjects in a first-in-human Phase 1a dose-escalation trial with CDX-6114 for the potential treatment of PKU. The initiation of the trial triggered a $4.0 million milestone payment from Nestlé Health Science and the $1.0 million milestone payment that was triggered by the achievement of a formulation relating to CDX-6114 was received in February 2019. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive, worldwide, royalty-bearing, sub-licensable license for the global development and commercialization of CDX-6114 for the management of PKU. The option payment of $3.0 million was recognized in the first quarter of 2019 as research and development revenue. Upon exercising its option, Nestlé Health Science assumed all responsibilities for future clinical development and commercialization of CDX-6114, with the exception of the completion of an extension study, CDX-6114-004, which was substantially completed in the fourth quarter of 2019. Other potential payments from Nestlé Health Science to us under the Nestlé Agreement include (i) development and approval milestones of up to $85.0 million, (ii) sales-based milestones of up to $250.0 million in the aggregate, which aggregate amount is achievable if net sales exceed $1.0 billion in a single year, and (iii) tiered royalties, at percentages ranging from the middle single digits to low double-digits, of net sales of Product.
In March 2020, we entered into a Strategic Collaboration and License Agreement with Takeda under which we received an up-front non-refundable cash payment of $8.5 million in March 2020. Other potential payments from Takeda include (i) of research and development fees and pre-clinical approval milestones for initial programs of up to $22.3 million, (ii) development and commercialization-based milestones, per target gene, of up to $100.0 million, the modulation of which leads to treatment of certain diseases by the applicable product, and (iii) tiered royalties, at percentages ranging from the middle-single digit to low single-digit of sales of the applicable product.
In December 2018, we filed an automatic shelf registration statement on Form S-3 (the “2018 Registration Statement”) with the SEC, under which we may sell common stock, preferred stock, debt securities, warrants, purchase contract and/or units, which immediately became effective upon filing. Subsequently in 2019, we entered into a Securities Purchase Agreement with an affiliate of Casdin Capital, LLC (“Casdin”) pursuant to which we issued and sold to Casdin 3,048,780 shares of our common stock at a purchase price of $16.40 per share (the “Private Offering”). After deducting issuance costs of $0.1 million from the Private Offering, our net proceeds were $49.9 million.
53


In June 2017, we entered into the Credit Facility, which consists of term debt for loans that allow us to borrow up to $10.0 million and a revolving credit facility that allows us to borrow up to $5.0 million with a certain eligible accounts receivable borrowing base of 80% of eligible accounts receivable. In January 2019, we entered into a Fifth Amendment to the Credit Facility to allow for the Company to obtain a letter of credit of up to $1.1 million to secure its obligations under the Lease with MetLife. In July 2019, we entered into a Sixth Amendment to the Credit Facility to increase permitted indebtedness to $0.7 million for financing insurance premiums in the ordinary course of business. In September 2019, we entered into a Seventh Amendment to the Credit Facility whereby the draw period on the term debt was extended to September 30, 2020. We may draw on the term debt at any time prior to September 30, 2020, subject to customary conditions for funding including, among others, that no event of default exists. Draws on the Credit Facility are secured by a lien on substantially all of our personal property other than our intellectual property. We may draw on the revolving line of credit at any time prior to the maturity date. On October 1, 2023, any loans for Term Debt mature and the Revolving Line of Credit terminates. No amounts were drawn down under the credit facility as of June 30, 2020. At June 30, 2020, we believe we were in compliance with the covenants for the Credit Facility. The Credit Facility requires us to maintain compliance with certain financial covenants including attainment of certain lender-approved projections or maintenance of certain minimum cash levels. Restrictive covenants in the Credit Facility restrict the payment of dividends or other distributions. For additional information about our contractual obligations, see Note 11, "Commitments and Contingencies" in the Notes to Unaudited Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q.
We are subject to risks and uncertainties as a result of the current COVID-19 pandemic. The COVID-19 pandemic has presented a substantial public health and economic challenge around the world and is affecting our employees, communities and business operations, as well as the U.S. economy and other economies worldwide. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition will depend on future developments that are highly uncertain and cannot be accurately predicted, including the duration and severity of the pandemic and the extent and severity of the impact on our customers, new information that may emerge concerning COVID-19, the actions taken to contain it or treat its impact and the economic impact on local, regional, national and international markets. To date, we and our collaboration partners have been able to continue to supply our enzymes to our customers worldwide. However, we are dependent on our manufacturing and logistics partners and consequently, disruptions in operations of our partners and customers may affect our ability to supply enzymes to our customers. Furthermore, our ability to provide future research and development ("R&D") services will continue to be impacted as a result of governmental orders and any disruptions in operations of our customers with whom we collaborate. We are continuing to assess the potential impact of the COVID-19 pandemic on our business and operations, including our product sales, R&D service revenue, expenses and manufacturing. However, we are unable to fully determine and quantify the extent to which this pandemic affected our total revenues due to complex accounting judgments. In the U.S., the impact of COVID-19, including governmental orders ("Orders") governing the operation of businesses during the pandemic, had caused the temporary closure of our Redwood City, California facilities from mid-March 2020 through the end of April and has disrupted our research and development operations. In May 2020, we initiated limited operations and gradually ramped up our R&D operations so that we are currently operating utilizing the majority of our normal R&D capacity. Our future results of operations and liquidity could be adversely impacted by delays in payments of outstanding receivable amounts beyond normal payment terms, supply chain disruptions and uncertain demand, and the impact of any initiatives or programs that we may undertake to address financial and operations challenges faced by our customers. While we believe we have adequate cash on hand to manage through the disruptions being caused by the COVID-19 pandemic, the extent to which the pandemic may materially impact our financial condition, liquidity, or results of operations is uncertain. For additional information on the various risks posed by the COVID-19 pandemic, please read Item 1A. Risk Factors included in this Quarterly Report on Form 10-Q.
As of June 30, 2020, we had cash and cash equivalents of $75.6 million and $15.0 million available to borrow under the Credit Facility. Our liquidity is dependent upon our cash and cash equivalents, cash flows provided by operating activities and the continued availability of borrowings under our Credit Facility. We may need additional capital if our current plans and assumptions change. Our need for additional capital will depend on many factors, including the financial success of our business, the spending required to develop and commercialize new and existing products, the effect of any acquisitions of other businesses, technologies or facilities that we may make or develop in the future, our spending on new market opportunities, and the potential costs for the filing, prosecution, enforcement and defense of patent claims, if necessary.
We believe that based on our current level of operations, our existing cash and cash equivalents will provide adequate funds for ongoing operations, planned capital expenditures and working capital requirements for at least the next 12 months.
54


However, we may need additional capital if our current plans and assumptions change. Our need for additional capital will depend on many factors, including the financial success of our business, the spending required to develop and commercialize new and existing products, the effect of any acquisitions of other businesses, technologies or facilities that we may make or develop in the future, our spending on new market opportunities, and the potential costs for the filing, prosecution, enforcement and defense of patent claims, if necessary. If our capital resources are insufficient to meet our capital requirements, and we are unable to enter into or maintain collaborations with partners that are able or willing to fund our development efforts or commercialize any products that we develop or enable, we will have to raise additional funds to continue the development of our technology and products and complete the commercialization of products, if any, resulting from our technologies. If future financings involve the issuance of equity securities, our existing stockholders would suffer dilution. If we raise debt financing or enter into credit facilities, we may be subject to restrictive covenants that limit our ability to conduct our business. We may not be able to raise sufficient additional funds on terms that are favorable to us, if at all. If we fail to raise sufficient funds and fail to generate sufficient revenues to achieve planned gross margins and to control operating costs, our ability to fund our operations, take advantage of strategic opportunities, develop products or technologies, or otherwise respond to competitive pressures could be significantly limited. If this happens, we may be forced to delay or terminate research or development programs or the commercialization of products resulting from our technologies, curtail or cease operations or obtain funds through collaborative and licensing arrangements that may require us to relinquish commercial rights, or grant licenses on terms that are not favorable to us. If adequate funds are not available, we will not be able to successfully execute our business plan or continue our business.
Cash Flows
The following table is our statements of cash flows for six months ended June 30, 2020 and 2019:
 Six months ended June 30,
(In Thousands)20202019
Net cash used in operating activities$(11,498) $(7,909) 
Net cash used in investing activities(2,490) (1,257) 
Net cash provided by (used in) financing activities(903) 49,851  
Net increase (decrease) in cash, cash equivalents and restricted cash$(14,891) $40,685  

Cash Flows from Operating Activities
Cash used in operating activities was $11.5 million net for the six months ended June 30, 2020, which resulted from a net loss of $14.0 million for the six months ended June 30, 2020 adjusted for non-cash charges for depreciation of $0.9 million, ROU lease asset amortization expense of $1.3 million and stock-based compensation of $4.1 million. Additional cash used by changes in operating assets and liabilities was $3.8 million. Changes in operating assets and liabilities included a $2.3 million decrease in unbilled receivables and a $5.0 million decrease in accounts receivables, partially offset by an increase of $3.0 million in deferred revenue and $1.9 million in other accrued liabilities.
Cash used in operating activities was $7.9 million net for the six months ended June 30, 2019, which resulted from a net loss of $11.6 million for the six months ended June 30, 2019 adjusted for non-cash charges for depreciation of $0.7 million, ROU lease asset amortization expense of $1.5 million and stock-based compensation of $4.1 million. Additional cash used by changes in operating assets and liabilities was $2.7 million. Changes in operating assets and liabilities included an increase of $0.9 million in prepaid expenses and other current assets due mainly to stock exercises and a decrease of $1.6 million in accounts payable due to timing of vendor payments.
Cash Flows from Investing Activities
Cash used in investing activities was $2.5 million and $1.3 million for the six months ended June 30, 2020 and 2019, respectively. Cash used in investing activities for the six months ended June 30, 2020 was primarily attributable to the purchase of 1,587,050 shares of MAI's Series A preferred stock for $1.0 million and $1.5 million for purchases of property and equipment. Cash used in investing activities for the six months ended June 30, 2019 was primarily attributable to the purchase of property and equipment.
55


Cash Flows from Financing Activities
Cash used in financing activities was $0.9 million for the six months ended June 30, 2020 and primarily included taxes paid related to net share settlement of equity awards.
Cash provided by financing activities was $49.9 million for the six months ended June 30, 2019 which included $49.9 million of net proceeds from a private placement in June 2019 and $2.8 million of proceeds from exercises of stock options offset by $2.8 million for taxes paid related to net share settlement of equity awards.

Contractual Obligations
The following table summarizes our significant contractual obligations at June 30, 2020 (in thousands): 

Payments due by period
(In Thousands)TotalLess than 1 year1-3 years4-5 years>5 years
Operating leases obligations (1)
33,333  4,136  8,677  9,455  11,065  
(1) Represents future minimum lease payments under non-cancellable operating leases in effect as of June 30, 2020 for our facilities in Redwood City, California. The minimum lease payments above do not include common area maintenance charges or real estate taxes. In February 2019, we have entered into an Eighth Amendment to the Lease (the “Eighth Amendment”) with MetLife for our facilities, extending the lease terms from May 2027 to May 2029. For additional information see Note 11, “Commitments and Contingencies” in the Notes to Unaudited Condensed Consolidated Financial Statements.

Other Commitments
We have other commitments related to supply and service arrangements entered into the normal course of business. For additional information about other commitments, see Note 11, "Commitments and Contingencies" in the notes to the unaudited condensed consolidated financial statements. Future minimum payments reflect amounts those obligations are expected to have on our liquidity and cash flows in future periods and include obligations subject to risk of cancellation by us (in thousands):
Other Commitment Agreement TypeAgreement DateFuture Minimum Payment
(In Thousands)
Manufacture and supply agreement with expected future payment date of December 2022April 2016$704  
Development and manufacturing services agreementsSeptember 20193,785  
Strategic collaboration and license agreementMarch 2020364  
Total other commitments$4,853  

Credit Facility
In June 2017, we entered into a credit facility (“Credit Facility”) consisting of term loans (“Term Debt”) up to $10.0 million, and advances (“Advances”) under a revolving line of credit (“Revolving Line of Credit”) up to $5.0 million with an accounts receivable borrowing base of 80% of eligible accounts receivable. At June 30, 2020, we have not drawn from the Credit Facility. We may draw on the Revolving Line of Credit at any time prior to the September 30, 2020 maturity date. On October 1, 2023, loans drawn under the Term Debt mature and the Revolving Line of Credit terminates. Loans made under the Term Debt bear interest through maturity at a variable rate based upon the LIBOR rate plus 3.6%. Advances made under the Revolving Line of Credit bear interest at a variable annual rate equal to the greater of (i) 1.00% above the prime rate and (ii) 5.00%.
56


Our obligations under the Credit Facility are secured by a lien on substantially all of our personal property other than our intellectual property. The Credit Facility includes a number of customary covenants and restrictive financial covenants including meeting minimum product revenues levels and maintaining certain minimum cash levels with the lender. The Credit Facility’s financial covenants restrict the ability of the Company to transfer collateral, incur additional indebtedness, engage in mergers or acquisitions, pay dividends or make other distributions, make investments, create liens, sell assets, or sell certain assets held at foreign subsidiaries. A failure to comply with these covenants could permit the lender to exercise remedies against us and the collateral securing the Credit Facility, including foreclosure of our properties securing the Credit Facilities and our cash. At June 30, 2020, we were in compliance with the covenants for the Credit Facility. For additional information about our credit facility, see Note 11 "Commitments and Contingencies" in the accompanying notes to the unaudited condensed consolidated financial statements.

Off-Balance Sheet Arrangements
As of June 30, 2020, we did not have any off-balance sheet arrangements, as defined in Item 303(a)(4) of Regulation S-K as promulgated by the SEC.

Critical Accounting Policies and Estimates
The preparation financial statements in conformity with generally accepted accounting principles requires management to make judgments, estimates and assumptions in the preparation of our consolidated financial statements and accompanying notes. Actual results could differ from those estimates. There have been no material changes to our critical accounting policies or estimates during the three and six months ended June 30, 2020 from those discussed in our Annual Report on Form 10-K for the year ended December 31, 2019, filed with the SEC on February 28, 2020, except for changes due to adoption of Accounting Standards Update ("ASU") 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments, and ASU No. 2017-04, Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment, which are described below:

Financial Instruments - Credit Losses (Topic 326)
On January 1, 2020, we adopted the provisions of ASU 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments, using a modified retrospective approach. The standard changes the impairment model for most financial assets measured at amortized cost, requiring the use of a "current expected credit loss" model. Under this model, we are required to estimate the lifetime expected credit loss on financial assets, and to record the estimate to an allowance for credit loss. The allowance offsets the amortized cost basis of the financial asset, resulting in a net presentation of the amount expected to be collected on the financial asset or liability.
Financial assets measured at amortized cost
Financial assets measured at amortized cost include loans receivable, debt security assets, trade receivables, net investments in leases, off-balance-sheet credit exposures, reinsurance receivables, contract assets and any other financial assets not excluded from the scope that have the contractual right to receive cash. These assets are not accounted for at fair value through net income.
Current expected credit model
The model requires that credit loss estimates include forecasted information in its formulation. In addition, the model requires recognition of credit loss estimates to be reflected in the financial statements before actual losses are incurred.
Allowance for credit losses
The allowance for credit losses is a valuation account that reflects recognition of losses under the current expected credit loss model. The allowance for credit losses is deducted from the amortized cost basis of financial assets and is presented net on the balance sheet. The net represents the expected to be collected on the financial asset.
57


Intangibles - Goodwill and Other (Topic 350)
On January 1, 2020, we adopted the provisions of ASU No. 2017-04, "Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment," using a prospective approach. The standard simplifies the accounting for goodwill impairments by eliminating step two from the goodwill impairment test. Goodwill impairment will now be the amount by which a reporting unit's carrying value exceeds its fair value. The adoption of ASU 2017-04 had no impact on our unaudited condensed consolidated financial statements.
58



ITEM 3.QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK

Market Risk Management
Our cash flows and earnings are subject to fluctuations due to changes in foreign currency exchange rates, interest rates and other factors. These market risk exposures are disclosed in Part II, Item 7A of our Annual Report on Form 10-K for the year ended December 31, 2019, filed with the SEC on February 28, 2020.
Interest Rate Sensitivity
In June 2017, we entered into a credit facility consisting of term loans up to $10.0 million, and advances under a revolving line of credit up to $5.0 million. Draws on the term debt bear interest through maturity at a variable rate based upon the LIBOR rate plus 3.6%. Advances made under the revolving line of credit bear interest at a variable annual rate equal to the greater of (i) 1.00% above the prime rate and (ii) 5.00%. Increases in these variable interest rates will increase our future interest expense and decrease our results of operations and cash flows. No amounts were drawn down under the credit facility as of June 30, 2020. Our exposure to interest rates risk relates to our 2017 Credit Facility with variable interest rates, where an increase in interest rates may result in higher borrowing costs. Since we have no outstanding borrowings under our 2017 Credit Facility as of June 30, 2020, the effect of a hypothetical 10% change in interest rates would not have any impact on our interest expense.
Foreign Currency Risk
Our results of operations and cash flows are subject to fluctuations due to changes in foreign currency exchange rates. In periods when the United States dollar declines in value as compared to the foreign currencies in which we incur expenses, our foreign-currency based expenses increase when translated into United States dollars. Although substantially all of our sales are denominated in United States dollars, future fluctuations in the value of the United States dollar may affect the price competitiveness of our products outside the United States. Our most significant foreign currency exposure is due to non-functional currency denominated monetary assets, primarily currencies denominated in other than their functional currency. These non-functional currency denominated monetary assets are subject to re-measurement which may create fluctuations in other expense, net, a component in our consolidated statement of operations and in the fair value of the assets in the consolidated balance sheet. As of June 30, 2020, the effect of a hypothetical 10% unfavorable change in exchange rates on currencies denominated in other than their functional currency would result in a potential loss in future earnings in our consolidated statement of operations and a reduction in the fair value of the assets of approximately $0.1 million. We did not engage in hedging transactions in 2020 or 2019.

Investment in Equity Securities
We own an equity investment in Molecular Assemblies, Inc. (“MAI”) which is a privately held company. Concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors, and we entered into the MAI Agreement pursuant to which we will provide technical services and expertise in exchange for compensation in the form of additional shares of voting preferred stock. We and MAI envision entering into an arrangement to commercialize products developed under the MAI Agreement.
To analyze the fair value measurement of our equity investment in MAI, we perform a qualitative analysis using significant unobservable inputs. Significant changes to the unobservable inputs may result in a significantly higher or lower fair value estimate. We may value our equity investment based on significant recent arms-length equity transactions with sophisticated non-strategic unrelated new investors, providing the terms of these equity transactions are substantially similar to the equity transactions terms between the company and us. The impact of the difference in transaction terms on the market value of the portfolio company may be difficult or impossible to quantify.
59



ITEM 4.CONTROLS AND PROCEDURES

Evaluation of Disclosure Controls and Procedures
We maintain disclosure controls and procedures and internal controls that are designed to provide reasonable assurance that information required to be disclosed in our Exchange Act reports is recorded, processed, summarized, and reported within the time periods specified in the SEC's rules and forms and that such information is accumulated and communicated to our management, including our principal executive officer and our principal financial and accounting officer, as appropriate, to allow timely decisions regarding required disclosure.
Our management, including our principal executive officer and our principal financial and accounting officer, evaluated the effectiveness of our disclosure controls and procedures as defined by Rules 13a-15(e) and 15d-15(e) of the Exchange Act. Based on this review, our principal executive officer and our principal financial and accounting officer concluded that these disclosure controls and procedures were effective as of June 30, 2020 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 paragraph (d) of Exchange Act Rules 13a-15 or 15d-15 that occurred during our last fiscal quarter that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting. Because of the impact of COVID-19 shelter-in-place orders, we have made minor modifications to existing controls involving evidence of review-type controls. Further, we implemented internal controls to ensure we adequately evaluated impairment of financial instruments and goodwill, respectively, in properly assessing and facilitating the impact and adoption on January 1, 2020 of ASU 2016-13, Financial Instruments - Credit Losses (Topic 326) and ASU No. 2017-04, Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment. There were no significant changes to our internal control over financial reporting due to the adoption of new standards.
Inherent Limitations on Effectiveness of Controls
In designing and evaluating the disclosure controls and procedures, management recognizes that any controls and procedures, even if determined effective and no matter how well designed and operated, can provide only reasonable assurance of achieving the desired control objectives to prevent or detect misstatements. In addition, the design of disclosure controls and procedures must reflect the fact that there are resource constraints and that management is required to apply judgment in evaluating the benefits of possible controls and procedures relative to their costs. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate.

60


PART II. OTHER INFORMATION

ITEM 1.
LEGAL PROCEEDINGS

We are not currently a party to any material pending litigation or other material legal proceedings.

ITEM 1A.RISK FACTORS

We have included in Part I, Item 1A of our Annual Report on Form 10-K for the year ended December 31, 2019, a description of certain risks and uncertainties that could affect our business, future performance or financial condition (the “Risk Factors"). During the three months ended June 30, 2020, there were no material changes from the disclosure provided in the Form 10-K for the year ended December 31, 2019 with respect to the Risk Factors, except as set forth below. Investors should consider the Risk Factors prior to making an investment decision with respect to our stock.
The ongoing COVID-19 pandemic has and may continue in the future to, directly or indirectly, adversely affect our business, results of operations and financial condition.
In the United States, the impact of COVID-19, including compliance with governmental orders governing the operation of businesses during the pandemic, caused the temporary closure of our Redwood City, California facilities and disrupted our research and development operations. We believe that these disruptions likely had a negative impact on revenue during the three-month period ending June 30, 2020. In the future, our business could be materially adversely affected, directly or indirectly, by the widespread outbreak of contagious disease, including the ongoing COVID-19 pandemic. National, state and local governments in affected regions have implemented and may continue to implement safety precautions, including quarantines, border closures, increased border controls, travel restrictions, governmental orders and shutdowns, business closures, cancellations of public gatherings and other measures. Organizations and individuals are taking additional steps to avoid or reduce infection, including limiting travel and staying home from work. These measures are disrupting normal business operations both in and outside of affected areas and have had significant negative impacts on businesses and financial markets worldwide.
The potential impact and duration of COVID-19 or another pandemic or public health crisis could have significant repercussions across regional, national and global economies and financial markets, and could trigger a period of regional, national and global economic slowdown or regional, national or global recessions. The outbreak of COVID-19 in many countries continues to adversely impact regional, national and global economic activity and has contributed to significant volatility and negative pressure in financial markets. As a result, we may experience difficulty accessing debt and equity capital on attractive terms, or at all, due to the severe disruption and instability in the global financial markets. In addition, our customers may terminate or amend their agreements for the purchase of our products or services due to bankruptcy, lack of liquidity, lack of funding, operational failures, or other reasons.
We continue to monitor our operations and applicable government recommendations, and we have made modifications to our normal operations because of the COVID-19 pandemic, including requiring most office-based employees to work remotely. Notwithstanding these measures, the COVID-19 pandemic could affect the health and availability of our workforce as well as those of the third parties we rely on taking similar measures. If members of our management and other key personnel in critical functions across our organization are unable to perform their duties or have limited availability due to COVID-19, we may not be able to execute on our business strategy and/or our operations may be negatively impacted. We may also experience limitations in employee resources, including because of sickness of employees or their families or the desire of employees to avoid contact with individuals or large groups of people. In addition, we have experienced and will continue to experience disruptions to our business operations resulting from quarantines, self-isolations and other restrictions on the ability of our employees to perform their jobs.
61


The COVID-19 pandemic has disrupted business operations. The extent and severity of the impact on our business and clinical trials will be determined largely by the extent of disruptions in the supply chains for our products and product candidates; disruptions in access by patients to therapies for which our products are components of the supply chain; delays in the performance of R&D service work, and delays in current and future clinical trials that we or our collaboration partners conduct. In addition, the impact of the COVID-19 pandemic on the operations of the FDA and other health authorities may delay potential approvals of product candidates for which our products are components of the supply chain.
While it is not possible at this time to estimate the entirety of the impact that the COVID-19 pandemic will have on our business, operations, employees, customers, suppliers or our collaboration partners, continued spread of COVID-19, measures taken by governments, actions taken to protect employees and the broad impact of the pandemic on all business activities may materially and adversely affect our business, results of operations and financial condition. As a result, we have withdrawn our full year 2020 financial guidance.


ITEM 2.UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS

None.

ITEM 3.
DEFAULTS UPON SENIOR SECURITIES

None.

ITEM 4.MINE SAFETY DISCLOSURES

Not applicable.

ITEM 5.OTHER INFORMATION

Not applicable.

62



ITEM 6.EXHIBITS

3.1  
3.2  
3.3  
4.1  Reference is made to Exhibits 3.1 through 3.3.
31.1  
31.2  
32.1  
101   The following materials from the Company's Quarterly Report on Form 10-Q for the quarter ended June 30, 2020, formatted in Inline Extensible Business Reporting Language (iXBRL) includes: (i) Unaudited Condensed Consolidated Balance Sheets at June 30, 2020 and December 31, 2019, (ii) Unaudited Condensed Consolidated Statements of Operations for the Three and Six Months Ended June 30, 2020 and 2019, (iii) Unaudited Condensed Consolidated Statements of Stockholders' Equity for the Three and Six Months Ended June 30, 2020 and 2019, (iv) Unaudited Condensed Consolidated Statements of Cash Flows for the Six Months Ended June 30, 2020 and 2019 and (v) Notes to Unaudited Condensed Consolidated Financial Statements.
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 Label Linkbase Document
101.PREInline XBRL Taxonomy Extension Presentation Linkbase Document
104  The cover page from the Company’s Quarterly Report on Form 10-Q for the quarter ended June 30, 2020, formatted in Inline XBRL and contained in Exhibit 101.

63


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.
Codexis, Inc.
Date:August 7, 2020By:/s/ John J. Nicols
John J. Nicols
President and Chief Executive Officer
(principal executive officer)
Date:August 7, 2020By:/s/ Ross Taylor
Ross Taylor
Senior Vice President and Chief Financial Officer
(principal financial and accounting officer)

64
EX-31.1 2 cdxs20200630ex311sp.htm EX-31.1 Document

Exhibit 31.1
CERTIFICATION
I, John J. Nicols, certify that:
1.I have reviewed this Quarterly Report on Form 10-Q of Codexis, Inc.;
2.Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;
3.Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;
4.The registrant’s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:
(a)Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
(b)Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
(c)Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
(d)Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and
5.The registrant’s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):
(a)All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and
(b)Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.
Date: August 7, 2020
/s/ John J. Nicols
John J. Nicols
President and Chief Executive Officer
(principal executive officer)


EX-31.2 3 cdxs20200630ex312sp.htm EX-31.2 Document

Exhibit 31.2
CERTIFICATION
I, Ross Taylor, certify that:
1.I have reviewed this Quarterly Report on Form 10-Q of Codexis, Inc.;
2.Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;
3.Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;
4.The registrant’s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:
(a)Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
(b)Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
(c)Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
(d)Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and
5.The registrant’s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):
(a)All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and
(b)Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.
Date: August 7, 2020
/s/ Ross Taylor
Ross Taylor
Senior Vice President and Chief Financial Officer
(principal financial and accounting officer)


EX-32.1 4 cdxs20200630ex321sp.htm EX-32.1 Document

Exhibit 32.1
CERTIFICATION PURSUANT TO
18 U.S.C. SECTION 1350,
AS ADOPTED PURSUANT TO
SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

In connection with the Quarterly Report of Codexis, Inc. (the “Company”) on Form 10-Q for the fiscal quarter ended June 30, 2020, as filed with the Securities and Exchange Commission (the “Report”), John J. Nicols, President and Chief Executive Officer of the Company and Ross Taylor, Senior Vice President and Chief Financial Officer of the Company, respectively, do each hereby certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:
The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and
The information in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.


Date: August 7, 2020
/s/ John J. Nicols
John J. Nicols
President and Chief Executive Officer
(principal executive officer)
/s/ Ross Taylor
Ross Taylor
Senior Vice President and Chief Financial Officer
(principal financial and accounting officer)


EX-101.SCH 5 cdxs-20200630.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0001001 - Document - Cover Page link:presentationLink link:calculationLink link:definitionLink 1001002 - Statement - Condensed Consolidated Balance Sheets link:presentationLink link:calculationLink link:definitionLink 1002003 - Statement - Condensed Consolidated Balance Sheets (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 1003004 - Statement - Condensed Consolidated Statements of Operations link:presentationLink link:calculationLink link:definitionLink 1004005 - Statement - Condensed Consolidated Statements of Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 1005006 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 1006007 - Statement - Condensed Consolidated Statements of Cash Flows link:presentationLink link:calculationLink link:definitionLink 2101101 - Disclosure - Description of Business link:presentationLink link:calculationLink link:definitionLink 2402401 - Disclosure - Description of Business (Details) link:presentationLink link:calculationLink link:definitionLink 2103102 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 2204201 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 2405402 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Details) link:presentationLink link:calculationLink link:definitionLink 2106103 - Disclosure - Revenue Recognition link:presentationLink link:calculationLink link:definitionLink 2307301 - Disclosure - Revenue Recognition (Tables) link:presentationLink link:calculationLink link:definitionLink 2408403 - Disclosure - Revenue Recognition - Disaggregation of Revenue (Details) link:presentationLink link:calculationLink link:definitionLink 2409404 - Disclosure - Revenue Recognition - Contracts with Customer (Details) link:presentationLink link:calculationLink link:definitionLink 2410405 - Disclosure - Revenue Recognition - Textual (Details) link:presentationLink link:calculationLink link:definitionLink 2411406 - Disclosure - Revenue Recognition - Revenue Recognized During Period (Details) link:presentationLink link:calculationLink link:definitionLink 2412407 - Disclosure - Revenue Recognition - Performance Obligation (Details) link:presentationLink link:calculationLink link:definitionLink 2412407 - Disclosure - Revenue Recognition - Performance Obligation (Details) link:presentationLink link:calculationLink link:definitionLink 2113104 - Disclosure - Net loss per Share link:presentationLink link:calculationLink link:definitionLink 2314302 - Disclosure - Net loss per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 2415408 - Disclosure - Net loss per Share (Details) link:presentationLink link:calculationLink link:definitionLink 2116105 - Disclosure - Collaborative Arrangements link:presentationLink link:calculationLink link:definitionLink 2417409 - Disclosure - Collaborative Arrangements - GSK Platform Technology Transfer, Collaboration and License Agreement (Details) link:presentationLink link:calculationLink link:definitionLink 2418410 - Disclosure - Collaborative Arrangements - Merck Platform Technology Transfer and License Agreement (Details) link:presentationLink link:calculationLink link:definitionLink 2419411 - Disclosure - Collaborative Arrangements - Merck Sitagliptin Catalyst Supply Agreement (Details) link:presentationLink link:calculationLink link:definitionLink 2420412 - Disclosure - Collaborative Arrangements - Enzyme Supply Agreement (Details) link:presentationLink link:calculationLink link:definitionLink 2421413 - Disclosure - Collaborative Arrangements - Global Development, Option and License Agreement, Strategic Collaboration Agreement, and Development Agreement (Details) link:presentationLink link:calculationLink link:definitionLink 2422414 - Disclosure - Collaborative Arrangements - Strategic Collaboration Agreement (Details) link:presentationLink link:calculationLink link:definitionLink 2423415 - Disclosure - Collaborative Arrangements - Platform Technology Transfer and License Agreement (Details) link:presentationLink link:calculationLink link:definitionLink 2424416 - Disclosure - Collaborative Arrangements - License Agreement (Details) link:presentationLink link:calculationLink link:definitionLink 2425417 - Disclosure - Collaborative Arrangements - Strategic Collaboration and License Agreement (Details) link:presentationLink link:calculationLink link:definitionLink 2426418 - Disclosure - Collaborative Arrangements - Master Collaboration and Research Agreement and Stock Purchase Agreement (Details) link:presentationLink link:calculationLink link:definitionLink 2427419 - Disclosure - Collaborative Arrangements - Performance Period (Details) link:presentationLink link:calculationLink link:definitionLink 2427419 - Disclosure - Collaborative Arrangements - Performance Period (Details) link:presentationLink link:calculationLink link:definitionLink 2128106 - Disclosure - Cash Equivalents and Equity Securities link:presentationLink link:calculationLink link:definitionLink 2329303 - Disclosure - Cash Equivalents and Equity Securities (Tables) link:presentationLink link:calculationLink link:definitionLink 2430420 - Disclosure - Cash Equivalents and Equity Securities - Components of Cash Equivalents (Details) link:presentationLink link:calculationLink link:definitionLink 2431421 - Disclosure - Cash Equivalents and Equity Securities - Textual (Details) link:presentationLink link:calculationLink link:definitionLink 2132107 - Disclosure - Fair Value Measurements link:presentationLink link:calculationLink link:definitionLink 2333304 - Disclosure - Fair Value Measurements (Tables) link:presentationLink link:calculationLink link:definitionLink 2434422 - Disclosure - Fair Value Measurements (Details) link:presentationLink link:calculationLink link:definitionLink 2135108 - Disclosure - Balance Sheets Details link:presentationLink link:calculationLink link:definitionLink 2336305 - Disclosure - Balance Sheets Details (Tables) link:presentationLink link:calculationLink link:definitionLink 2437423 - Disclosure - Balance Sheets Details - Inventories (Details) link:presentationLink link:calculationLink link:definitionLink 2438424 - Disclosure - Balance Sheets Details - Property and Equipment, net (Details) link:presentationLink link:calculationLink link:definitionLink 2439425 - Disclosure - Balance Sheets Details - Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 2440426 - Disclosure - Balance Sheets Details - Other Accrued Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 2141109 - Disclosure - Stock-based Compensation link:presentationLink link:calculationLink link:definitionLink 2342306 - Disclosure - Stock-based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 2443427 - Disclosure - Stock-based Compensation - Equity Incentive Plans (Details) link:presentationLink link:calculationLink link:definitionLink 2444428 - Disclosure - Stock-based Compensation - Stock Options (Details) link:presentationLink link:calculationLink link:definitionLink 2445429 - Disclosure - Stock-based Compensation - Restricted Stock Units (Details) link:presentationLink link:calculationLink link:definitionLink 2446430 - Disclosure - Stock-based Compensation - PSUs and PBOs (Details) link:presentationLink link:calculationLink link:definitionLink 2447431 - Disclosure - Stock-based Compensation - Stock-based Compensation Expense (Details) link:presentationLink link:calculationLink link:definitionLink 2148110 - Disclosure - Capital Stock link:presentationLink link:calculationLink link:definitionLink 2449432 - Disclosure - Capital Stock - Exercise of Options (Details) link:presentationLink link:calculationLink link:definitionLink 2450433 - Disclosure - Capital Stock - Private Offering (Details) link:presentationLink link:calculationLink link:definitionLink 2151111 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 2352307 - Disclosure - Commitments and Contingencies (Tables) link:presentationLink link:calculationLink link:definitionLink 2453434 - Disclosure - Commitments and Contingencies - Textual (Details) link:presentationLink link:calculationLink link:definitionLink 2454435 - Disclosure - Commitments and Contingencies - Lease Cost (Details) link:presentationLink link:calculationLink link:definitionLink 2455436 - Disclosure - Commitments and Contingencies - Other Lease Information (Details) link:presentationLink link:calculationLink link:definitionLink 2456437 - Disclosure - Commitments and Contingencies - Cash Paid for Lease Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 2457438 - Disclosure - Commitments and Contingencies - Future Minimum Lease Payments (Details) link:presentationLink link:calculationLink link:definitionLink 2457438 - Disclosure - Commitments and Contingencies - Future Minimum Lease Payments (Details) link:presentationLink link:calculationLink link:definitionLink 2458439 - Disclosure - Commitments and Contingencies - Other Commitments (Details) link:presentationLink link:calculationLink link:definitionLink 2159112 - Disclosure - Related Party link:presentationLink link:calculationLink link:definitionLink 2460440 - Disclosure - Related Party - AstraZeneca PLC (Details) link:presentationLink link:calculationLink link:definitionLink 2461441 - Disclosure - Related Party - Molecular Assemblies, Inc. (Details) link:presentationLink link:calculationLink link:definitionLink 2462442 - Disclosure - Related Party - Performance Period (Details) link:presentationLink link:calculationLink link:definitionLink 2462442 - Disclosure - Related Party - Performance Period (Details) link:presentationLink link:calculationLink link:definitionLink 2163113 - Disclosure - Segment, Geographical and Other Revenue Information link:presentationLink link:calculationLink link:definitionLink 2364308 - Disclosure - Segment, Geographical and Other Revenue Information (Tables) link:presentationLink link:calculationLink link:definitionLink 2465443 - Disclosure - Segment, Geographical and Other Revenue Information - Textual (Details) link:presentationLink link:calculationLink link:definitionLink 2466444 - Disclosure - Segment, Geographical and Other Revenue Information - Segment Reporting (Details) link:presentationLink link:calculationLink link:definitionLink 2467445 - Disclosure - Segment, Geographical and Other Revenue Information - Concentration Risk (Details) link:presentationLink link:calculationLink link:definitionLink 2468446 - Disclosure - Segment, Geographical and Other Revenue Information - Revenues by Geographic Area (Details) link:presentationLink link:calculationLink link:definitionLink 2469447 - Disclosure - Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details) link:presentationLink link:calculationLink link:definitionLink 2470448 - Disclosure - Segment, Geographical and Other Revenue Information - Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 2171114 - Disclosure - Allowance for Credit Losses link:presentationLink link:calculationLink link:definitionLink 2372309 - Disclosure - Allowance for Credit Losses (Tables) link:presentationLink link:calculationLink link:definitionLink 2473449 - Disclosure - Allowance for Credit Losses - Analysis of Allowance for Credit Losses (Details) link:presentationLink link:calculationLink link:definitionLink 2474450 - Disclosure - Allowance for Credit Losses - Summary of Finance Receivables by Aging Category (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 6 cdxs-20200630_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 7 cdxs-20200630_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 8 cdxs-20200630_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Area of real estate property (square feet) Area of Real Estate Property Other income (expenses), net Other Nonoperating Income (Expense) Increase (Decrease) in Stockholders' Equity Common Shares Stock Transactions, Parenthetical Disclosures [Abstract] Commitments and Contingencies Commitments and Contingencies Disclosure [Text Block] Number of options granted (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross Related Party [Axis] Related Party [Axis] Series A Preferred Stock [Member] Series A Preferred Stock [Member] Customer E [Member] Customer E [Member] Customer E Roche [Member] Roche [Member] Roche Segments [Axis] Segments [Axis] Cash Equivalents and Marketable Securities [Line Items] Cash Equivalents and Marketable Securities [Line Items] Cash equivalents and marketable securities. Total Financial assets, net Accounts and Financing Receivable, after Allowance for Credit Loss, Current Schedule of Commitments and Contingencies [Table] Schedule of Commitments and Contingencies [Table] Schedule of commitments and contingencies. Performance obligations satisfied Contract with Customer, Liability, Change in Timeframe, Performance Obligation Satisfied, Revenue Recognized Statistical Measurement [Domain] Statistical Measurement [Domain] Liabilities and Stockholders' Equity Liabilities and Equity [Abstract] Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Schedule of stock-based compensation expense Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Amortization of right-of-use assets Finance Lease, Right-of-Use Asset, Amortization Other long-term liabilities Increase (Decrease) in Other Noncurrent Liabilities Office equipment and furniture [Member] Office Equipment and Furniture [Member] Office Equipment and Furniture [Member] Schedule of revenues by geographical area Reconciliation of Revenue from Segments to Consolidated [Table Text Block] Current Fiscal Year End Date Current Fiscal Year End Date 2020 PSU and PBO Plan [Member] 2020 PSU and PBO Plan [Member] 2020 PSU and PBO Plan Loss from operations Income (loss) from operations Operating Income (Loss) Entity Address, Postal Zip Code Entity Address, Postal Zip Code Total current liabilities Liabilities, Current Contract with customer Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] Performance Shares [Member] Performance Shares [Member] Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current Variable Rate [Domain] Variable Rate [Domain] Variable Rate [Axis] Variable Rate [Axis] Commitments and Contingencies (Note 11) Commitments and Contingencies Taxes paid related to net share settlement of equity awards Share-based Payment Arrangement, Decrease for Tax Withholding Obligation Tranche Two [Member] Share-based Payment Arrangement, Tranche Two [Member] Assets Assets [Abstract] Schedule of Property, Plant and Equipment [Table] Property, Plant and Equipment [Table] Investment, Name [Axis] Investment, Name [Axis] Award vesting period Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period Accounting Policies [Abstract] Accounting Policies [Abstract] Entity Shell Company Entity Shell Company Cover page. Cover [Abstract] Operating cash flows from operating leases Operating Lease, Payments Accounts payable Accounts Payable, Current Document Type Document Type Sublease income Sublease Income Financial Asset, Period Past Due [Axis] Financial Asset, Period Past Due [Axis] Schedule of Cash and Cash Equivalents [Table] Schedule of Cash and Cash Equivalents [Table] Other Commitments [Table] Other Commitments [Table] Accumulated deficit Retained Earnings (Accumulated Deficit) Right-of-use assets - Operating leases, net Operating Lease, Right-of-Use Asset 2021 Lessee, Operating Lease, Liability, to be Paid, Year One Income taxes paid Income Taxes Paid RSUs and RSAs [Member] RSAs and RSUs [Member] RSAs and RSUs [Member] 2024 Lessee, Operating Lease, Liability, to be Paid, Year Four New Accounting Pronouncements or Change in Accounting Principle [Line Items] New Accounting Pronouncements or Change in Accounting Principle [Line Items] Customer [Axis] Customer [Axis] Beginning balance (shares) Ending balance (shares) Shares, Outstanding Preferred stock, $0.0001 par value per share; 5,000 shares authorized, none issued and outstanding Preferred Stock, Value, Issued Term of collaborative research and development agreement Term of Collaborative Research and Development Agreement Term of collaborative research and development agreement. Target sales for milestone Revenue Recognition, Target Sales for Sales Milestone Revenue Recognition, Target Sales for Sales Milestone Income Taxes Income Tax, Policy [Policy Text Block] Total lease cost Lease, Cost Document Quarterly Report Document Quarterly Report Common stock, par value (usd per share) Common Stock, Par or Stated Value Per Share Other long-term liabilities Other Liabilities, Noncurrent Payments of lease obligations - Finance leases Finance Lease, Principal Payments Finance Lease, Principal Payments Employee stock-based compensation APIC, Share-based Payment Arrangement, Increase for Cost Recognition Asset retirement obligations Asset Retirement Obligation Cash Equivalents and Marketable Securities [Abstract] Cash Equivalents and Marketable Securities [Abstract] Cash Equivalents and Marketable Securities [Abstract] Inventories Inventories Inventory, Net Unbilled receivables Unbilled Receivables, Current Total revenues Total revenues Revenues Revenue from Contract with Customer, Excluding Assessed Tax Investment in Equity Securities Investment, Policy [Policy Text Block] Current Financing Receivable, Not Past Due Concentration risk, percentage Concentration Risk, Percentage Entity File Number Entity File Number Geographical [Domain] Geographical [Domain] Expiration period Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period Statement [Line Items] Statement [Line Items] Securities not included in the net loss per common share calculations Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block] Forecast [Member] Forecast [Member] Class of Stock [Domain] Class of Stock [Domain] Computer equipment and software [Member] Computer Equipment [Member] Unrealized loss on investment in equity securities Unrealized Gain (Loss) on Investments Document Fiscal Period Focus Document Fiscal Period Focus Collaborative Arrangement and Arrangement Other than Collaborative [Table] Collaborative Arrangement and Arrangement Other than Collaborative [Table] Statement [Table] Statement [Table] Statistical Measurement [Axis] Statistical Measurement [Axis] Contract assets Contract with Customer, Asset, before Allowance for Credit Loss, Current Milestone One [Member] Milestone One [Member] Milestone One [Member] Credit Facility [Axis] Credit Facility [Axis] Summary of accounts receivable by aging Financing Receivable, Past Due [Table Text Block] Research and Development Arrangement, Contract to Perform for Others, Type [Axis] Research and Development Arrangement, Contract to Perform for Others, Type [Axis] Preferred stock, shares issued (shares) Preferred Stock, Shares Issued CESA [Member] Commercialization And Enzyme Supply Agreement [Member] Commercialization And Enzyme Supply Agreement Research and Development Arrangement, Contract to Perform for Others, Type [Domain] Research and Development Arrangement, Contract to Perform for Others, Type [Domain] Merck [Member] Merck [Member] Merck [Member] Net loss per share, basic and diluted (usd per share) Earnings Per Share, Basic and Diluted Performance obligations satisfied from new activities in the period - contract revenue Contract with Customer, Liability, New Activities, Performance Obligation Satisfied, Revenue Recognition Contract with Customer, Liability, New Activities, Performance Obligation Satisfied, Revenue Recognition Supply Commitment Arrangement [Domain] Supply Commitment Arrangement [Domain] Number of installments Share-based Compensation Arrangement by Share-based Payment Award, Number of Installments Share-based Compensation Arrangement by Share-based Payment Award, Number of Installments Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] Number of shares issued and sold Sale of Stock, Number of Shares Issued in Transaction Balance Sheet Details [Abstract] Balance Sheet Details [Abstract] Balance Sheet Details [Abstract] Performance Enzymes [Member] Performance Enzymes [Member] Performance Enzymes [Member] Fair Value, Measurements, Fair Value Hierarchy [Domain] Fair Value Hierarchy and NAV [Domain] Collaborative Arrangement [Member] Collaborative Arrangement [Member] Selling, General and Administrative Expenses [Member] Selling, General and Administrative Expenses [Member] Novel Biotherapeutics [Member] Biotherapeutic Segment [Member] Biotherapeutic Segment [Member] Financial Asset, Period Past Due [Domain] Financial Asset, Period Past Due [Domain] Technology Transfer, Collaboration and License Agreement [Member] Technology Transfer, Collaboration and License Agreement [Member] Technology Transfer, Collaboration and License Agreement [Member] Aggregate commercial sales, milestone Contract With Customer, Sales Milestone Contract With Customer, Sales Milestone March 2020 [Member] March 2020 [Member] March 2020 Number of shares authorized Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized Corporate [Member] Corporate, Non-Segment [Member] Nonemployee [Member] Share-based Payment Arrangement, Nonemployee [Member] Summary of financial instruments measured at fair value on a recurring basis Fair Value, Assets Measured on Recurring Basis [Table Text Block] Amendment Flag Amendment Flag Number of shares available for grant Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant Net cash used in operating activities Net Cash Provided by (Used in) Operating Activities Related Party [Domain] Related Party [Domain] Future Minimum Payment Supply Commitment, Remaining Minimum Amount Committed Borrowing capacity Line of Credit Facility, Current Borrowing Capacity Loss contingency accrual Loss Contingency, Accrual, Current Number of reporting units Number of Reporting Units Related Party Transaction [Line Items] Related Party Transaction [Line Items] Financing assets and Allowances Receivables, Trade and Other Accounts Receivable, Allowance for Doubtful Accounts, Policy [Policy Text Block] Term of contract Lessee, Finance Lease, Term of Contract Novel Biotherapeutics [Member] Novel Biotherapeutics [Member] Novel Biotherapeutics [Member] Incentive Stock Options [Member] Incentive Stock Options [Member] Incentive Stock Options [Member] Purchase of property and equipment recorded in accounts payable and accrued expenses Capital Expenditures Incurred but Not yet Paid Management [Member] Management [Member] Geographical [Axis] Geographical [Axis] Geographical [Axis] Sublease [Member] Sublease [Member] Sublease Local Phone Number Local Phone Number Segments [Domain] Segments [Domain] Renewal term Lessee, Operating Lease, Renewal Term Compensation not yet recognized, stock options Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] Finance lease costs Finance Lease, Cost Finance Lease, Cost Property, Plant and Equipment, Type [Axis] Long-Lived Tangible Asset [Axis] Schedule of stock-based compensation expense by security types Share-based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block] Other Other Accrued Liabilities Income Statement Location [Axis] Income Statement Location [Axis] Income Statement Location [Domain] Income Statement Location [Domain] Cash [Member] Cash [Member] 2022 Lessee, Operating Lease, Liability, to be Paid, Year Two Research and Development Agreement [Member] Research and Development Agreement [Member] Research and Development Agreement [Member] Other Commitments [Line Items] Other Commitments [Line Items] Financing activities: Net Cash Provided by (Used in) Financing Activities [Abstract] Selling, general and administrative Selling, General and Administrative Expense Agreement Date [Axis] Agreement Date [Axis] Agreement Date [Axis] Lease cost Lease, Cost [Table Text Block] Fixed Consideration [Member] Research And Development Agreement Term, Fixed Consideration [Member] Research And Development Agreement Term, Fixed Consideration Entity Current Reporting Status Entity Current Reporting Status 2023 Lessee, Operating Lease, Liability, to be Paid, Year Three Other non-current assets Other Assets, Noncurrent Plan Name [Axis] Plan Name [Axis] September 2019 [Member] September 2019 [Member] September 2019 [Member] 501 Chesapeake [Member] 501 Chesapeake [Member] 501 Chesapeake Segment, Geographical and Other Revenue Information Segment Reporting Disclosure [Text Block] Issuance of common stock, net of issuance costs of $74 Stock Issued During Period, Value, New Issues Cash and cash equivalents, fair value Money market funds Cash and Cash Equivalents, Fair Value Disclosure Concentration Risk [Table] Concentration Risk [Table] Operating cash flows from finance leases Finance Lease, Interest Payment on Liability Total assets Assets Related Party Related Party Transactions Disclosure [Text Block] Milestone Payment Per Target Gene [Member] Milestone Payment Per Target Gene [Member] Milestone Payment Per Target Gene Scenario [Axis] Scenario [Axis] Schedule of other accrued liabilities Schedule of Accrued Liabilities [Table Text Block] Strategic Collaboration Agreement [Member] Strategic Collaboration Agreement [Member] Strategic Collaboration Agreement [Member] Antidilutive Securities [Axis] Antidilutive Securities [Axis] Cumulative catch-up adjustment to revenue, change in measure of progress Contract with Customer, Liability, Cumulative Catch-up Adjustment to Revenue, Change in Measure of Progress Global Development, Option and License Agreement [Member] Global Development, Option and License Agreement [Member] Global Development, Option and License Agreement [Member] Entity Small Business Entity Small Business Finance lease liability Finance Lease, Liability, Fiscal Year Maturity [Table Text Block] Vesting [Domain] Vesting [Domain] Net proceeds received Sale of Stock, Consideration Received on Transaction Balance Sheets Details Balance Sheets Details [Text Block] Balance sheets details. Entity Filer Category Entity Filer Category Revenue, Initial Application Period Cumulative Effect Transition [Line Items] Revenue, Initial Application Period Cumulative Effect Transition [Line Items] Product and Service [Axis] Product and Service [Axis] Non-current restricted cash Restricted Cash and Investments, Noncurrent Total liabilities Liabilities Entity Address, City or Town Entity Address, City or Town Expected volatility rate Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate Less: imputed interest Lessee, Operating Lease, Liability, Undiscounted Excess Amount Schedule of Related Party Transactions, by Related Party [Table] Schedule of Related Party Transactions, by Related Party [Table] Contract term as BOD member Nonemployee, Contract Period Nonemployee, Contract Period Total revenues Revenue recognized Contract with Customer, Liability, Revenue Recognized Financing Receivable, Allowance for Credit Loss [Roll Forward] Financing Receivable, Allowance for Credit Loss [Roll Forward] Commitments and Contingencies Disclosure [Abstract] Commitments and Contingencies Disclosure [Abstract] Level 1 [Member] Fair Value, Inputs, Level 1 [Member] Accrued professional and outside service fees Accrued Professional Fees Inventories Increase (Decrease) in Inventories Term Loan [Member] Term Loan [Member] Term Loan [Member] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Table] Fair Value, Recurring and Nonrecurring [Table] Document Fiscal Year Focus Document Fiscal Year Focus Restricted cash Restricted Cash and Cash Equivalents, Noncurrent Accounts payable Increase (Decrease) in Accounts Payable Performance Enzymes [Member] Core Segment [Member] Core Segment [Member] Additional Paid-in Capital [Member] Additional Paid-in Capital [Member] Summary of financial instruments measured at fair value on a recurring basis Financial Instruments, Financial Assets, Balance Sheet Groupings [Abstract] Antidilutive Securities, Name [Domain] Antidilutive Securities, Name [Domain] Operating Segments [Member] Operating Segments [Member] Disaggregation of Revenue [Line Items] Disaggregation of Revenue [Line Items] Adjustments to reconcile net loss to net cash used in operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Accounts receivable Total balance Accounts Receivable, before Allowance for Credit Loss, Current 2025 and thereafter Lessee, Operating Lease, Liability, to be Paid, After Year Four Lessee, Operating Lease, Liability, to be Paid, After Year Four Interest on lease obligations Finance Lease, Interest Expense Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue from Contract with Customer [Abstract] Revenue from Contract with Customer [Abstract] PBOs [Member] Performance Based Options (PBOs) [Member] Performance Based Options (PBOs) [Member] Cash and Cash Equivalents [Line Items] Cash and Cash Equivalents [Line Items] Common stock, shares outstanding (shares) Common Stock, Shares, Outstanding Costs and operating expenses: Operating Costs and Expenses [Abstract] Transactions With AstraZeneca PLC [Member] Transactions With AstraZeneca PLC [Member] Transactions With AstraZeneca PLC Revolving Credit Facility [Member] Revolving Credit Facility [Member] Loss Contingency Nature [Axis] Loss Contingency Nature [Axis] Research and development Research and Development Expense Royalty [Member] Royalty [Member] Common stock, shares authorized (shares) Common Stock, Shares Authorized Concentration Risk Type [Axis] Concentration Risk Type [Axis] Property and equipment Property, Plant and Equipment, Gross Proceeds from exercises of stock options Proceeds from exercises of stock options Proceeds from Stock Options Exercised Impairment charges related to contract assets Contract with Customer, Asset, Credit Loss Expense (Reversal) Agreement Date [Domain] Agreement Date [Domain] [Domain] for Agreement Date [Axis] Schedule of segment reporting Schedule of Segment Reporting Information, by Segment [Table Text Block] Goodwill Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block] Document Period End Date Document Period End Date Collaborative Arrangement and Arrangement Other than Collaborative [Line Items] Collaborative Arrangement and Arrangement Other than Collaborative [Line Items] Accrued compensation Increase (Decrease) in Employee Related Liabilities Entity Registrant Name Entity Registrant Name Income Statement [Abstract] Income Statement [Abstract] Long-term lease obligations - Operating leases Operating Lease, Liability, Noncurrent Prepaid expenses and other current assets Increase (Decrease) in Prepaid Expense and Other Assets Schedule of long-lived assets by geographical area Schedule of Disclosure on Geographic Areas, Long-Lived Assets in Individual Foreign Countries by Country [Table Text Block] Allowance for Credit Losses Credit Loss, Financial Instrument [Text Block] Schedule of cash equivalents Cash, Cash Equivalents and Investments [Table Text Block] Schedule of Segment Reporting Information, by Segment [Table] Schedule of Segment Reporting Information, by Segment [Table] Name of Property [Domain] Name of Property [Domain] Use of Estimates Use of Estimates, Policy [Policy Text Block] Number of buildings leased Number of Properties Subject to Ground Leases Current assets: Assets, Current [Abstract] Interest income Investment Income, Interest 2019 PSU and PBO Plan [Member] 2019 PSU and PBO Plan [Member] 2019 PSU and PBO Plan [Member] MCRA [Member] Master Collaboration & Research Agreement [Member] Master Collaboration & Research Agreement Financing Receivable, Allowance for Credit Loss [Line Items] Financing Receivable, Allowance for Credit Loss [Line Items] Expected dividend yield Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate Preferred stock, par value (usd per share) Preferred Stock, Par or Stated Value Per Share Scenario [Domain] Scenario [Domain] Counterparty Name [Domain] Counterparty Name [Domain] Purchase of property and equipment Payments to Acquire Property, Plant, and Equipment Consolidation Items [Domain] Consolidation Items [Domain] Entity Tax Identification Number Entity Tax Identification Number Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Maximum number of shares to be issued upon exercise of stock options Common Stock, Capital Shares Reserved for Future Issuance Schedule of Cash Equivalents and Marketable Securities [Table] Schedule of Cash Equivalents and Marketable Securities [Table] Schedule of cash equivalents and marketable securities. Director [Member] Director [Member] Unbilled receivables Increase (Decrease) in Finance Receivables Disaggregation of revenue Disaggregation of Revenue [Table Text Block] Loss before income taxes Income (loss) before income taxes Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest Trading Symbol Trading Symbol Milestone Three [Member] Milestone Three [Member] Milestone Three Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Schedule of inventory components Schedule of Inventory, Current [Table Text Block] Stock-based compensation Share-based Payment Arrangement, Noncash Expense Non-employee stock-based compensation Adjustments To Additional Paid In Capital Non-Employee Share based Compensation Adjustments to additional paid in capital non-employee share based compensation. Taxes paid related to net share settlement of equity awards Payment, Tax Withholding, Share-based Payment Arrangement Number of additional programs Collaborative Arrangement, Number Of Additional Programs Collaborative Arrangement, Number Of Additional Programs Cash and Cash Equivalents [Domain] Cash and Cash Equivalents [Domain] Deferred revenue Increase (Decrease) in Contract with Customer, Liability 2019 Plan [Member] 2019 Plan [Member] 2019 Plan [Member] Fair Value Disclosures [Abstract] Fair Value Disclosures [Abstract] Restricted cash, current and non-current Restricted Cash and Cash Equivalents City Area Code City Area Code Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Axis] Cost of product revenue Cost of Goods and Services Sold Finance lease costs: Lease, Cost [Abstract] Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table] Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table] Total costs and operating expenses Costs and Expenses Equity Components [Axis] Equity Components [Axis] Title of 12(b) Security Title of 12(b) Security Past due Financing Receivable, Past Due Share-based Payment Arrangement [Abstract] Share-based Payment Arrangement [Abstract] Receivables [Abstract] Minimum [Member] Minimum [Member] Restricted Cash and Cash Equivalents [Axis] Restricted Cash and Cash Equivalents [Axis] Current portion of lease obligations - Operating leases Operating Lease, Liability, Current Compensation not yet recognized, share-based awards other than options Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount 91 Days and Over [Member] Financial Asset, Equal to or Greater than 90 Days Past Due [Member] Commitments and Contingencies [Line Items] Commitments and Contingencies [Line Items] Commitments and contingencies. United States [Member] UNITED STATES Weighted average exercise price of stock options exercised (usd per share) Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price Revenues: Revenues [Abstract] Operating activities: Net Cash Provided by (Used in) Operating Activities [Abstract] Recoveries of amounts previously written off Financing Receivable, Allowance for Credit Loss, Recovery Capital Stock Stockholders' Equity Note Disclosure [Text Block] Accrued purchases Purchase Obligation Accounts Receivable [Member] Accounts Receivable [Member] Customer [Domain] Customer [Domain] Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Concentration Risk [Line Items] Concentration Risk [Line Items] Weighted-average discount rate Operating Lease, Weighted Average Discount Rate, Percent Supply Agreement [Member] Supply Agreement [Member] Supply Agreement [Member] Proceeds from disposal of property and equipment Proceeds from Sale of Property, Plant, and Equipment Number of reportable segments Number of Reportable Segments Consolidation Items [Axis] Consolidation Items [Axis] Research and Development [Member] Research and Development Expense [Member] Investment in equity securities Payments to acquire other investments Payments to Acquire Other Investments Goodwill impairment Goodwill, Impairment Loss Finished goods Inventory, Finished Goods, Gross Total minimum lease payments Lessee, Operating Lease, Liability, to be Paid Ownership percentage Noncontrolling Interest, Ownership Percentage by Parent Research and Development [Abstract] Research and Development [Abstract] Goodwill, allocated percent Goodwill, Allocated Percent Goodwill, Allocated Percent One-time, non-refundable cash payment Proceeds from Collaborators 31-60 Days [Member] Financial Asset, 30 to 59 Days Past Due [Member] Revenue, Product and Service Benchmark [Member] Revenue, Product and Service Benchmark [Member] Sale of Stock [Axis] Sale of Stock [Axis] Weighted average common stock shares used in computing net loss per share, basic and diluted (shares) Weighted Average Number of Shares Outstanding, Basic and Diluted Non-Statutory Stock Options [Member] Non-Statutory Stock Options [Member] Non-Statutory Stock Options [Member] Purchase price of common stock Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Percent Goodwill Goodwill Goodwill Financial assets: Financing Receivable, before Allowance for Credit Loss [Abstract] Supply Commitment [Member] Supply Commitment [Member] Research and Development Reimbursement [Member] Research and Development Reimbursement [Member] Research and Development Reimbursement Title of Individual [Axis] Title of Individual [Axis] Collaborative Arrangement and Arrangement Other than Collaborative [Domain] Collaborative Arrangement and Arrangement Other than Collaborative [Domain] Performance awards, threshold level, number of shares, multiplier Share-based Compensation Arrangement by Share-based Payment Award, Performance Awards, Threshold Level, Number of Shares, Multiplier Share-based Compensation Arrangement by Share-based Payment Award, Performance Awards, Threshold Level, Number of Shares, Multiplier Vesting [Axis] Vesting [Axis] Accounts receivable from related parties Accounts Receivable, Related Parties Equity [Abstract] Equity [Abstract] License Fee [Member] License Fee [Member] License Fee EMEA [Member] EMEA [Member] Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Entity Central Index Key Entity Central Index Key Schedule of intangible assets and goodwill Schedule of Intangible Assets and Goodwill [Table Text Block] Deferred revenue Contract with Customer, Liability, Current Entity Emerging Growth Entity Emerging Growth Company Customer Concentration Risk [Member] Customer Concentration Risk [Member] 101 Saginaw [Member] 101 Saginaw [Member] 101 Saginaw Maintenance [Member] Maintenance [Member] April 2016 [Member] April 2016 [Member] April 2016 [Member] Credit Facility [Domain] Credit Facility [Domain] Porton [Member] Porton [Member] Porton [Member] Number of operating segments Number of Operating Segments Weighted-average remaining lease term (in years) Operating Lease, Weighted Average Remaining Lease Term Indemnification Agreement [Member] Indemnification Agreement [Member] 200-220 Penobscot [Member] 200-220 Penobscot [Member] 200-220 Penobscot Takeda [Member] Takeda Pharmaceutical Co. Ltd. [Member] Takeda Pharmaceutical Co. Ltd. Net cash provided by (used in) financing activities Net Cash Provided by (Used in) Financing Activities Performance obligation Revenue, Remaining Performance Obligation, Amount Stock-based compensation expense Share-based Payment Arrangement, Expense Nestec Ltd. (Nestle Health Sciences) [Member] Nestec Ltd. (Nestle Health Sciences) [Member] Nestec Ltd. (Nestle Health Sciences) [Member] Counterparty Name [Axis] Counterparty Name [Axis] Common stock, $0.0001 par value per share; 100,000 shares authorized; 59,125 shares and 58,877 shares issued and outstanding at June 30, 2020 and December 31, 2019, respectively Common Stock, Value, Issued Estimated performance goal achievement rate Share-based Compensation Arrangement by Share-based Payment Award, Estimated Performance Goal Achievement Rate Share-based Compensation Arrangement by Share-based Payment Award, Estimated Performance Goal Achievement Rate Product Sales [Member] Product Sales [Member] Product Sales [Member] Amortization expense - right-of-use assets - operating and finance leases Lease, Right-of-Use Asset, Amortization Lease, Right-of-Use Asset, Amortization 400 Penoscot [Member] 400 Penoscot [Member] 400 Penoscot Cash and Cash Equivalents [Axis] Cash and Cash Equivalents [Axis] Computer Equipment and Software [Member] Computer Equipment and Software [Member] Computer Equipment and Software [Member] Purchase price (usd per share) Sale of Stock, Price Per Share Related Party Transaction [Axis] Related Party Transaction [Axis] Schedule of Inventory Components Inventory, Net [Abstract] Balance Sheets Details [Abstract] Balance Sheets Details [Abstract] -- None. No documentation exists for this element. -- Contract assets Increase (Decrease) in Contract with Customer, Asset Award vesting rights (percent) Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage Collaborative Arrangements Collaborative Arrangement Disclosure [Text Block] Investing activities: Net Cash Provided by (Used in) Investing Activities [Abstract] Common stock, shares, issued (shares) Common Stock, Shares, Issued Cash and cash equivalents Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Number of shares acquired in an equity method investment Investment Owned, Balance, Shares Lease Obligations Operating Lease, Liability Subsidiary or Equity Method Investee, Sale of Stock by Subsidiary or Equity Investee [Table] Subsidiary or Equity Method Investee, Sale of Stock by Subsidiary or Equity Investee [Table] Segment Reporting [Abstract] Segment Reporting [Abstract] Sales-Based Milestone [Member] Sales-Based Milestone [Member] Sales-Based Milestone [Member] Project [Domain] Project [Domain] Accounts receivable, net Increase (Decrease) in Accounts Receivable Total stockholders' equity Beginning balance Ending balance Stockholders' Equity Attributable to Parent Description of Business Nature of Operations [Text Block] Costs incurred in connection with private placement Issuance costs Costs incurred in connection with private placement Payments of Stock Issuance Costs Concentration Risk Type [Domain] Concentration Risk Type [Domain] Research and Development Revenue [Member] Research and Development Revenue [Member] Research and Development Revenue [Member] CDX-6114 [Member] CDX-6114 [Member] CDX-6114 [Member] Molecular Assemblies, Inc. [Member] Molecular Assemblies, Inc. [Member] Molecular Assemblies, Inc. Total liabilities and stockholders' equity Liabilities and Equity Raw materials Inventory, Raw Materials, Gross Schedule of customers that contributed 10% or more of total accounts receivable Schedules of Concentration of Risk, by Risk Factor [Table Text Block] Accrued compensation Employee-related Liabilities, Current Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Axis] RSUs [Member] Restricted Stock Units (RSUs) [Member] Operating lease cost Operating Lease, Cost Milestone payment amount Revenue Recognition, Milestone Payment Amount Revenue Recognition, Milestone Payment Amount Total shares excluded as anti-dilutive (shares) Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Agreement Type [Axis] Agreement Type [Axis] Agreement Type [Axis] Short-term lease cost Short-term Lease, Cost Purchase price of common stock above minimum threshold Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock Above Minimum Threshold, Percent Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock Above Minimum Threshold, Percent Gain on disposal of property and equipment Gain (Loss) on Disposition of Property Plant Equipment Equity Component [Domain] Equity Component [Domain] Grantee Status [Domain] Grantee Status [Domain] Contingent annual receivable increase Revenue Recognition, Contingent Annual Receivable Increase Revenue Recognition, Contingent Annual Receivable Increase Entity Address, Address Line One Entity Address, Address Line One Property and equipment, net Property and equipment, net Long-lived assets Property, Plant and Equipment, Net Construction in progress [Member] Construction in Progress [Member] Stock-based Compensation Share-based Payment Arrangement [Text Block] Net loss Net loss Net loss Net Income (Loss) Attributable to Parent Entity Address, State or Province Entity Address, State or Province Changes in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] 2020 (remaining 6 months) Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year LIBOR [Member] London Interbank Offered Rate (LIBOR) [Member] Investment, Name [Domain] Investment, Name [Domain] Work-in-process Inventory, Work in Process, Gross Demand Deposits [Member] Demand Deposits [Member] Total current assets Assets, Current Earnings Per Share [Abstract] Earnings Per Share [Abstract] Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Up-front Payment [Member] Up-front Payment [Member] Up-front Payment Contingent receivable Revenue Recognition, Contingent Receivable Revenue Recognition, Contingent Receivable Stockholders' equity: Stockholders' Equity Attributable to Parent [Abstract] Entity Interactive Data Current Entity Interactive Data Current Customer B [Member] Customer B [Member] Customer B [Member] Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Subsidiary, Sale of Stock [Line Items] Subsidiary, Sale of Stock [Line Items] Deferred revenue, net of current portion Contract with Customer, Liability, Noncurrent Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Supplemental disclosure of cash flow information Supplemental Cash Flow Information [Abstract] Investment in Equity Securities Investment at cost basis Investments and Other Noncurrent Assets Percent of voting interests Percent of Voting Interests Threshold to trigger higher exercise price Percent of Voting Interests Threshold to trigger higher exercise price Schedule of stock-based compensation expense Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] Common Stock [Member] Common Stock [Member] Property, Plant and Equipment [Line Items] Property, Plant and Equipment [Line Items] Product and Service [Domain] Product and Service [Domain] Property, Plant and Equipment, Type [Domain] Long-Lived Tangible Asset [Domain] Number of initial programs Collaborative Arrangement, Number Of Initial Programs Collaborative Arrangement, Number Of Initial Programs Concentration Risk Benchmark [Domain] Concentration Risk Benchmark [Domain] Contract Costs Capitalized Contract Cost, Net, Current Bonus Goal Met [Member] Research And Development Agreement Term, Bonus Goal Met [Member] Research And Development Agreement Term, Bonus Goal Met Financing Receivable, Allowance for Credit Loss [Table] Financing Receivable, Allowance for Credit Loss [Table] Schedule of property and equipment, net Property, Plant and Equipment [Table Text Block] Operating Leases Operating Leases, Future Minimum Payments Due, Fiscal Year Maturity [Abstract] Duration to pay after milestone achievement (in days) Revenue Recognition, Duration to Pay After Milestone Achievement Revenue Recognition, Duration to Pay After Milestone Achievement Issuance of common stock, net of issuance costs (shares) Stock Issued During Period, Shares, New Issues Customer A [Member] Customer A [Member] Customer A [Member] Leasehold improvements [Member] Leasehold Improvements [Member] Stated interest rate Debt Instrument, Interest Rate, Stated Percentage Capital lease obligations incurred Lease Obligation Incurred Money Market Funds [Member] Money Market Funds [Member] Expected timing of satisfaction, period Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Shares Issuable Under the Equity Incentive Plan [Member] Non-Employee Stock Options [Member] Share-based Payment Arrangement [Member] Total Financial assets Financing Receivable, before Allowance for Credit Loss Less: accumulated depreciation and amortization Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Less: allowances Beginning Balance January 1, 2020 Ending Balance June 30, 2020 Financing Receivable, Allowance for Credit Loss, Current Name of Property [Axis] Name of Property [Axis] Exercise of stock options (shares) Stock options exercised (shares) Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period Related Party Transactions [Abstract] Net increase (decrease) in cash, cash equivalents and restricted cash Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Right-of-use assets - Finance leases, net Finance Lease, Right-of-Use Asset, after Accumulated Amortization Accounts receivable borrowing base percentage Line of Credit Facility, Accounts Receivable Borrowing Base Percentage Line of Credit Facility, Accounts Receivable Borrowing Base Percentage Loss Contingency, Nature [Domain] Loss Contingency, Nature [Domain] Operating lease maturity Lessee, Operating Lease, Liability, Maturity [Table Text Block] Stock Options [Member] Share-based Payment Arrangement, Option [Member] Basis of Presentation and Principles of Consolidation Basis of Accounting, Policy [Policy Text Block] Other accrued liabilities Increase (Decrease) in Other Accrued Liabilities Basis spread on variable rate (percent) Debt Instrument, Basis Spread on Variable Rate Risk free interest rate Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate Grantee Status [Axis] Grantee Status [Axis] Ownership [Axis] Ownership [Axis] Sale of Stock [Domain] Sale of Stock [Domain] Ownership [Domain] Ownership [Domain] Plan Name [Domain] Plan Name [Domain] Revenue Recognition Revenue from Contract with Customer [Text Block] Interest paid Interest Paid, Excluding Capitalized Interest, Operating Activities Number of days for payment Revenue Recognition, Milestone Revenue, Number of Days for Payment Revenue Recognition, Milestone Revenue, Number of Days for Payment Release of stock awards (shares) Stock Issued During Period, Shares, Other Proceeds from issuance of common stock in connection with private placement Proceeds from Issuance Initial Public Offering Additional paid-in capital Additional Paid in Capital Class of Stock [Axis] Class of Stock [Axis] Provision for income taxes Income Tax Expense (Benefit) GSK [Member] GSK [Member] GSK [Member] PSUs [Member] Performance Stock Units [Member] Performance Stock Units [Member] Cash, cash equivalents and restricted cash at the beginning of the period Cash, cash equivalents and restricted cash at the end of the period Total cash, cash equivalents and restricted cash at the end of the period Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents New Accounting Pronouncements or Change in Accounting Principle [Table] Accounting Standards Update and Change in Accounting Principle [Table] Title of Individual [Domain] Title of Individual [Domain] Other accrued liabilities Total Accrued Liabilities, Current Customer F [Member] Customer F [Member] Customer F Current portion of lease obligations - Finance leases Finance Lease, Liability, Current Americas [Member] Americas [Member] Collaborative Arrangement and Arrangement Other than Collaborative [Axis] Collaborative Arrangement and Arrangement Other than Collaborative [Axis] Tranche One [Member] Share-based Payment Arrangement, Tranche One [Member] Novartis [Member] Novartis [Member] Novartis [Member] Depreciation Depreciation and amortization Depreciation Prime Rate [Member] Prime Rate [Member] Contract Liabilities: Deferred Revenue Contract with customer, liability Contract with Customer, Liability Related Party Transaction [Domain] Related Party Transaction [Domain] Project [Axis] Project [Axis] Other non-current assets Increase (Decrease) in Other Operating Assets Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Exercise of stock options Stock Issued During Period, Value, Stock Options Exercised Award Type [Axis] Award Type [Axis] 2018 PSU and PBO Plan [Member] 2018 PSU and PBO Plan [Member] 2018 PSU and PBO Plan [Member] Optional extension period Collaborative Research and Development Agreement, Optional Extension Period Collaborative Research and Development Agreement, Optional Extension Period Cash Equivalents and Equity Securities Cash Equivalents And Investment [Text Block] Cash Equivalents And Investment Maximum [Member] Maximum [Member] Security Exchange Name Security Exchange Name Preferred stock, shares authorized (shares) Preferred Stock, Shares Authorized Fair value of options granted Share-Based Compensation Arrangement By Share-Based Payment Award, Options, Granted In Period, Fair Value Share-Based Compensation Arrangement By Share-Based Payment Award, Options, Granted In Period, Fair Value Fair Value Measurements Fair Value Measurement and Measurement Inputs, Recurring and Nonrecurring [Text Block] Restricted cash, current Restricted Cash Schedule of supply and service commitments Supply Commitment [Table Text Block] Milestone Two [Member] Milestone Two [Member] Milestone Two [Member] Accumulated Deficit [Member] Retained Earnings [Member] Preferred stock, shares outstanding (shares) Preferred Stock, Shares Outstanding Write-offs charged against the allowance Financing Receivable, Allowance for Credit Loss, Writeoff Customer C [Member] Customer C [Member] Customer C [Member] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Basis of Presentation and Summary of Significant Accounting Policies Significant Accounting Policies [Text Block] Net cash used in investing activities Net Cash Provided by (Used in) Investing Activities Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Laboratory equipment [Member] Laboratory Equipment [Member] Laboratory Equipment [Member] Award Type [Domain] Award Type [Domain] Document Transition Report Document Transition Report Analysis of allowance for credit losses Financing Receivable, Allowance for Credit Loss [Table Text Block] 61-90 Days [Member] Financial Asset, 60 to 89 Days Past Due [Member] Revenue from related parties Revenue from Related Parties Supply Commitment [Axis] Supply Commitment [Axis] Revenue, Initial Application Period Cumulative Effect Transition [Table] Revenue, Initial Application Period Cumulative Effect Transition [Table] Private Offering [Member] Private Placement [Member] Agreement Type [Domain] Agreement Type [Domain] [Domain] for Agreement Type [Axis] Performance obligation, expected timing of satisfaction Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block] Net loss per Share Earnings Per Share [Text Block] Organization, Consolidation and Presentation of Financial Statements [Abstract] Organization, Consolidation and Presentation of Financial Statements [Abstract] APAC [Member] APAC [Member] Regions of Australia, New Zealand, Southeast Asia and China Customer D [Member] Customer D [Member] Customer D [Member] Current liabilities: Liabilities, Current [Abstract] Segment Reporting Information [Line Items] Segment Reporting Information [Line Items] Accretion expense related to asset retirement obligation Asset Retirement Obligation, Accretion Expense Taxes paid related to net share settlement of equity awards (in shares) Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation Segment Reporting Segment Reporting, Policy [Policy Text Block] Accounting Pronouncements New Accounting Pronouncements, Policy [Policy Text Block] Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods Contract with Customer, Liability, Cumulative Catch-up Adjustment to Revenue, Change in Estimate of Transaction Price Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Schedule of long-lived assets by geographical area Geographic Areas, Long-Lived Assets [Abstract] EX-101.PRE 9 cdxs-20200630_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 10 cdxs-20200630_htm.xml IDEA: XBRL DOCUMENT 0001200375 2020-01-01 2020-06-30 0001200375 2020-07-31 0001200375 2020-06-30 0001200375 2019-12-31 0001200375 country:US 2020-06-30 0001200375 country:US 2019-12-31 0001200375 cdxs:ProductSalesMember 2020-04-01 2020-06-30 0001200375 cdxs:ProductSalesMember 2019-04-01 2019-06-30 0001200375 cdxs:ProductSalesMember 2020-01-01 2020-06-30 0001200375 cdxs:ProductSalesMember 2019-01-01 2019-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2020-04-01 2020-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2019-04-01 2019-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2020-01-01 2020-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2019-01-01 2019-06-30 0001200375 2020-04-01 2020-06-30 0001200375 2019-04-01 2019-06-30 0001200375 2019-01-01 2019-06-30 0001200375 us-gaap:CommonStockMember 2020-03-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2020-03-31 0001200375 us-gaap:RetainedEarningsMember 2020-03-31 0001200375 2020-03-31 0001200375 us-gaap:CommonStockMember 2020-04-01 2020-06-30 0001200375 us-gaap:AdditionalPaidInCapitalMember 2020-04-01 2020-06-30 0001200375 us-gaap:RetainedEarningsMember 2020-04-01 2020-06-30 0001200375 us-gaap:CommonStockMember 2020-06-30 0001200375 us-gaap:AdditionalPaidInCapitalMember 2020-06-30 0001200375 us-gaap:RetainedEarningsMember 2020-06-30 0001200375 us-gaap:CommonStockMember 2019-03-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2019-03-31 0001200375 us-gaap:RetainedEarningsMember 2019-03-31 0001200375 2019-03-31 0001200375 us-gaap:CommonStockMember 2019-04-01 2019-06-30 0001200375 us-gaap:AdditionalPaidInCapitalMember 2019-04-01 2019-06-30 0001200375 us-gaap:RetainedEarningsMember 2019-04-01 2019-06-30 0001200375 us-gaap:CommonStockMember 2019-06-30 0001200375 us-gaap:AdditionalPaidInCapitalMember 2019-06-30 0001200375 us-gaap:RetainedEarningsMember 2019-06-30 0001200375 2019-06-30 0001200375 us-gaap:CommonStockMember 2019-12-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2019-12-31 0001200375 us-gaap:RetainedEarningsMember 2019-12-31 0001200375 us-gaap:CommonStockMember 2020-01-01 2020-06-30 0001200375 us-gaap:AdditionalPaidInCapitalMember 2020-01-01 2020-06-30 0001200375 us-gaap:RetainedEarningsMember 2020-01-01 2020-06-30 0001200375 us-gaap:CommonStockMember 2018-12-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2018-12-31 0001200375 us-gaap:RetainedEarningsMember 2018-12-31 0001200375 2018-12-31 0001200375 us-gaap:CommonStockMember 2019-01-01 2019-06-30 0001200375 us-gaap:AdditionalPaidInCapitalMember 2019-01-01 2019-06-30 0001200375 us-gaap:RetainedEarningsMember 2019-01-01 2019-06-30 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:CDX6114Member us-gaap:CollaborativeArrangementMember 2018-12-01 2018-12-31 0001200375 cdxs:TakedaPharmaceuticalCoLtdMember 2020-06-01 2020-06-30 0001200375 cdxs:TakedaPharmaceuticalCoLtdMember 2020-03-01 2020-03-31 0001200375 cdxs:MolecularAssembliesIncMember us-gaap:SeriesAPreferredStockMember 2020-06-30 0001200375 cdxs:MolecularAssembliesIncMember us-gaap:SeriesAPreferredStockMember 2020-06-01 2020-06-30 0001200375 cdxs:PerformanceEnzymesMember 2020-06-30 0001200375 cdxs:NovelBiotherapeuticsMember 2020-06-30 0001200375 cdxs:ProductSalesMember cdxs:CoreSegmentMember 2020-04-01 2020-06-30 0001200375 cdxs:ProductSalesMember cdxs:BiotherapeuticSegmentMember 2020-04-01 2020-06-30 0001200375 cdxs:ProductSalesMember cdxs:CoreSegmentMember 2019-04-01 2019-06-30 0001200375 cdxs:ProductSalesMember cdxs:BiotherapeuticSegmentMember 2019-04-01 2019-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2020-04-01 2020-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2020-04-01 2020-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2019-04-01 2019-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2019-04-01 2019-06-30 0001200375 cdxs:CoreSegmentMember 2020-04-01 2020-06-30 0001200375 cdxs:BiotherapeuticSegmentMember 2020-04-01 2020-06-30 0001200375 cdxs:CoreSegmentMember 2019-04-01 2019-06-30 0001200375 cdxs:BiotherapeuticSegmentMember 2019-04-01 2019-06-30 0001200375 srt:AmericasMember cdxs:CoreSegmentMember 2020-04-01 2020-06-30 0001200375 srt:AmericasMember cdxs:BiotherapeuticSegmentMember 2020-04-01 2020-06-30 0001200375 srt:AmericasMember 2020-04-01 2020-06-30 0001200375 srt:AmericasMember cdxs:CoreSegmentMember 2019-04-01 2019-06-30 0001200375 srt:AmericasMember cdxs:BiotherapeuticSegmentMember 2019-04-01 2019-06-30 0001200375 srt:AmericasMember 2019-04-01 2019-06-30 0001200375 us-gaap:EMEAMember cdxs:CoreSegmentMember 2020-04-01 2020-06-30 0001200375 us-gaap:EMEAMember cdxs:BiotherapeuticSegmentMember 2020-04-01 2020-06-30 0001200375 us-gaap:EMEAMember 2020-04-01 2020-06-30 0001200375 us-gaap:EMEAMember cdxs:CoreSegmentMember 2019-04-01 2019-06-30 0001200375 us-gaap:EMEAMember cdxs:BiotherapeuticSegmentMember 2019-04-01 2019-06-30 0001200375 us-gaap:EMEAMember 2019-04-01 2019-06-30 0001200375 cdxs:APACMember cdxs:CoreSegmentMember 2020-04-01 2020-06-30 0001200375 cdxs:APACMember cdxs:BiotherapeuticSegmentMember 2020-04-01 2020-06-30 0001200375 cdxs:APACMember 2020-04-01 2020-06-30 0001200375 cdxs:APACMember cdxs:CoreSegmentMember 2019-04-01 2019-06-30 0001200375 cdxs:APACMember cdxs:BiotherapeuticSegmentMember 2019-04-01 2019-06-30 0001200375 cdxs:APACMember 2019-04-01 2019-06-30 0001200375 cdxs:ProductSalesMember cdxs:CoreSegmentMember 2020-01-01 2020-06-30 0001200375 cdxs:ProductSalesMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-06-30 0001200375 cdxs:ProductSalesMember cdxs:CoreSegmentMember 2019-01-01 2019-06-30 0001200375 cdxs:ProductSalesMember cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2020-01-01 2020-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2019-01-01 2019-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-06-30 0001200375 cdxs:CoreSegmentMember 2020-01-01 2020-06-30 0001200375 cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-06-30 0001200375 cdxs:CoreSegmentMember 2019-01-01 2019-06-30 0001200375 cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-06-30 0001200375 srt:AmericasMember cdxs:CoreSegmentMember 2020-01-01 2020-06-30 0001200375 srt:AmericasMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-06-30 0001200375 srt:AmericasMember 2020-01-01 2020-06-30 0001200375 srt:AmericasMember cdxs:CoreSegmentMember 2019-01-01 2019-06-30 0001200375 srt:AmericasMember cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-06-30 0001200375 srt:AmericasMember 2019-01-01 2019-06-30 0001200375 us-gaap:EMEAMember cdxs:CoreSegmentMember 2020-01-01 2020-06-30 0001200375 us-gaap:EMEAMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-06-30 0001200375 us-gaap:EMEAMember 2020-01-01 2020-06-30 0001200375 us-gaap:EMEAMember cdxs:CoreSegmentMember 2019-01-01 2019-06-30 0001200375 us-gaap:EMEAMember cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-06-30 0001200375 us-gaap:EMEAMember 2019-01-01 2019-06-30 0001200375 cdxs:APACMember cdxs:CoreSegmentMember 2020-01-01 2020-06-30 0001200375 cdxs:APACMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-06-30 0001200375 cdxs:APACMember 2020-01-01 2020-06-30 0001200375 cdxs:APACMember cdxs:CoreSegmentMember 2019-01-01 2019-06-30 0001200375 cdxs:APACMember cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-06-30 0001200375 cdxs:APACMember 2019-01-01 2019-06-30 0001200375 cdxs:ProductSalesMember 2020-07-01 2020-06-30 0001200375 cdxs:ProductSalesMember 2021-01-01 2020-06-30 0001200375 cdxs:ProductSalesMember 2022-01-01 2020-06-30 0001200375 cdxs:ProductSalesMember 2020-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2020-07-01 2020-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2021-01-01 2020-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2022-01-01 2020-06-30 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2020-06-30 0001200375 2020-07-01 2020-06-30 0001200375 2021-01-01 2020-06-30 0001200375 2022-01-01 2020-06-30 0001200375 us-gaap:StockCompensationPlanMember 2020-04-01 2020-06-30 0001200375 us-gaap:StockCompensationPlanMember 2019-04-01 2019-06-30 0001200375 us-gaap:StockCompensationPlanMember 2020-01-01 2020-06-30 0001200375 us-gaap:StockCompensationPlanMember 2019-01-01 2019-06-30 0001200375 cdxs:GSKMember srt:MinimumMember 2014-07-31 0001200375 cdxs:GSKMember srt:MaximumMember 2014-07-31 0001200375 cdxs:GSKMember 2019-01-01 2019-12-31 0001200375 cdxs:GSKMember 2019-01-01 2019-06-30 0001200375 cdxs:GSKMember 2019-04-01 2019-06-30 0001200375 cdxs:GSKMember 2020-01-01 2020-06-30 0001200375 cdxs:GSKMember 2020-04-01 2020-06-30 0001200375 cdxs:MerckMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2020-04-01 2020-06-30 0001200375 cdxs:MerckMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2020-01-01 2020-06-30 0001200375 cdxs:MerckMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2019-04-01 2019-06-30 0001200375 cdxs:MerckMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2019-01-01 2019-06-30 0001200375 cdxs:MerckMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2015-08-31 0001200375 cdxs:MerckMember cdxs:LicenseFeeMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2019-04-01 2019-06-30 0001200375 cdxs:MerckMember cdxs:LicenseFeeMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2019-01-01 2019-06-30 0001200375 cdxs:MerckMember us-gaap:MaintenanceMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2020-04-01 2020-06-30 0001200375 cdxs:MerckMember us-gaap:MaintenanceMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2020-01-01 2020-06-30 0001200375 cdxs:MerckMember us-gaap:MaintenanceMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2020-06-30 0001200375 cdxs:MerckMember us-gaap:MaintenanceMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2019-12-31 0001200375 cdxs:MerckMember cdxs:SupplyAgreementMember 2015-12-01 2015-12-31 0001200375 cdxs:MerckMember cdxs:ProductSalesMember cdxs:SupplyAgreementMember 2020-04-01 2020-06-30 0001200375 cdxs:MerckMember cdxs:ProductSalesMember cdxs:SupplyAgreementMember 2020-01-01 2020-06-30 0001200375 cdxs:MerckMember cdxs:ProductSalesMember cdxs:SupplyAgreementMember 2019-04-01 2019-06-30 0001200375 cdxs:MerckMember cdxs:ProductSalesMember cdxs:SupplyAgreementMember 2019-01-01 2019-06-30 0001200375 cdxs:MerckMember cdxs:ProductSalesMember cdxs:SupplyAgreementMember 2020-06-30 0001200375 cdxs:MerckMember cdxs:ProductSalesMember cdxs:SupplyAgreementMember 2019-12-31 0001200375 cdxs:SupplyAgreementMember 2019-12-31 0001200375 cdxs:SupplyAgreementMember 2020-06-30 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember 2017-10-31 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember cdxs:MilestoneOneMember 2017-10-31 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember cdxs:MilestoneTwoMember 2017-10-31 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember 2020-04-01 2020-06-30 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember 2020-01-01 2020-06-30 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember 2019-04-01 2019-06-30 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember 2019-01-01 2019-06-30 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:CDX6114Member 2019-01-01 2019-12-31 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember srt:MaximumMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember cdxs:ResearchandDevelopmentAgreementMember 2017-10-31 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember srt:MaximumMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember cdxs:SalesBasedMilestoneMember 2017-10-31 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember cdxs:SalesBasedMilestoneMember 2017-10-01 2017-10-31 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:StrategicCollaborationAgreementMember 2017-12-31 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:StrategicCollaborationAgreementMember 2018-09-30 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember 2020-04-01 2020-06-30 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember 2020-01-01 2020-06-30 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember 2019-04-01 2019-06-30 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember 2019-01-01 2019-06-30 0001200375 cdxs:PortonMember cdxs:MilestoneOneMember 2018-04-30 0001200375 cdxs:PortonMember cdxs:MilestoneOneMember 2018-04-01 2018-04-30 0001200375 cdxs:PortonMember cdxs:MilestoneTwoMember 2018-04-30 0001200375 cdxs:PortonMember 2020-04-01 2020-04-30 0001200375 cdxs:PortonMember cdxs:MilestoneThreeMember 2018-04-30 0001200375 cdxs:PortonMember 2018-10-01 2018-12-31 0001200375 cdxs:PortonMember 2020-04-01 2020-06-30 0001200375 cdxs:PortonMember 2020-01-01 2020-06-30 0001200375 cdxs:PortonMember 2019-01-01 2019-06-30 0001200375 cdxs:PortonMember 2019-04-01 2019-06-30 0001200375 cdxs:NovartisMember 2019-05-01 2019-05-31 0001200375 cdxs:NovartisMember 2019-05-31 0001200375 cdxs:NovartisMember cdxs:MilestoneOneMember 2020-04-30 0001200375 cdxs:NovartisMember cdxs:MilestoneTwoMember 2019-05-31 0001200375 cdxs:NovartisMember cdxs:ComputerEquipmentAndSoftwareMember 2019-05-31 0001200375 cdxs:NovartisMember us-gaap:RoyaltyMember 2019-05-01 2019-05-31 0001200375 cdxs:NovartisMember 2020-04-01 2020-06-30 0001200375 cdxs:NovartisMember 2020-01-01 2020-06-30 0001200375 cdxs:NovartisMember 2019-01-01 2019-06-30 0001200375 cdxs:NovartisMember 2019-04-01 2019-06-30 0001200375 cdxs:RocheMember cdxs:MilestoneOneMember 2019-12-01 2019-12-31 0001200375 cdxs:RocheMember cdxs:MilestoneTwoMember 2019-12-01 2019-12-31 0001200375 cdxs:RocheMember 2020-04-01 2020-06-30 0001200375 cdxs:RocheMember 2020-01-01 2020-06-30 0001200375 cdxs:TakedaPharmaceuticalCoLtdMember cdxs:UpFrontPaymentMember 2020-03-31 0001200375 cdxs:TakedaPharmaceuticalCoLtdMember cdxs:ResearchAndDevelopmentReimbursementMember 2020-03-31 0001200375 cdxs:TakedaPharmaceuticalCoLtdMember cdxs:MilestonePaymentPerTargetGeneMember 2020-03-31 0001200375 cdxs:TakedaPharmaceuticalCoLtdMember 2020-04-01 2020-06-30 0001200375 cdxs:TakedaPharmaceuticalCoLtdMember 2020-01-01 2020-06-30 0001200375 cdxs:TakedaPharmaceuticalCoLtdMember 2020-06-30 0001200375 cdxs:MolecularAssembliesIncMember srt:MinimumMember cdxs:MasterCollaborationResearchAgreementMember 2020-07-01 2020-06-30 0001200375 cdxs:MolecularAssembliesIncMember srt:MaximumMember cdxs:MasterCollaborationResearchAgreementMember 2021-05-01 2020-06-30 0001200375 cdxs:MolecularAssembliesIncMember cdxs:MasterCollaborationResearchAgreementMember cdxs:ResearchAndDevelopmentAgreementTermFixedConsiderationMember 2020-06-01 2020-06-30 0001200375 cdxs:MolecularAssembliesIncMember cdxs:MasterCollaborationResearchAgreementMember cdxs:ResearchAndDevelopmentAgreementTermBonusGoalMetMember 2020-06-01 2020-06-30 0001200375 cdxs:MolecularAssembliesIncMember us-gaap:RoyaltyMember cdxs:CommercializationAndEnzymeSupplyAgreementMember 2020-06-30 0001200375 cdxs:MolecularAssembliesIncMember cdxs:CommercializationAndEnzymeSupplyAgreementMember 2020-06-01 2020-06-30 0001200375 cdxs:MolecularAssembliesIncMember cdxs:CommercializationAndEnzymeSupplyAgreementMember 2020-07-01 2020-06-30 0001200375 cdxs:MolecularAssembliesIncMember cdxs:ResearchandDevelopmentRevenueMember cdxs:MasterCollaborationResearchAgreementMember 2020-04-01 2020-06-30 0001200375 cdxs:MolecularAssembliesIncMember cdxs:ResearchandDevelopmentRevenueMember cdxs:MasterCollaborationResearchAgreementMember 2020-01-01 2020-06-30 0001200375 us-gaap:MoneyMarketFundsMember 2020-06-30 0001200375 us-gaap:MoneyMarketFundsMember 2019-12-31 0001200375 us-gaap:CashMember 2020-06-30 0001200375 us-gaap:CashMember 2019-12-31 0001200375 cdxs:MolecularAssembliesIncMember 2020-06-30 0001200375 us-gaap:MoneyMarketFundsMember us-gaap:FairValueInputsLevel1Member 2020-06-30 0001200375 us-gaap:MoneyMarketFundsMember us-gaap:FairValueInputsLevel1Member 2019-12-31 0001200375 cdxs:LaboratoryEquipmentMember 2020-06-30 0001200375 cdxs:LaboratoryEquipmentMember 2019-12-31 0001200375 us-gaap:LeaseholdImprovementsMember 2020-06-30 0001200375 us-gaap:LeaseholdImprovementsMember 2019-12-31 0001200375 us-gaap:ComputerEquipmentMember 2020-06-30 0001200375 us-gaap:ComputerEquipmentMember 2019-12-31 0001200375 cdxs:OfficeEquipmentAndFurnitureMember 2020-06-30 0001200375 cdxs:OfficeEquipmentAndFurnitureMember 2019-12-31 0001200375 us-gaap:ConstructionInProgressMember 2020-06-30 0001200375 us-gaap:ConstructionInProgressMember 2019-12-31 0001200375 cdxs:A2019PlanMember 2019-06-30 0001200375 cdxs:IncentiveStockOptionsMember 2020-01-01 2020-06-30 0001200375 cdxs:NonStatutoryStockOptionsMember 2020-01-01 2020-06-30 0001200375 us-gaap:EmployeeStockOptionMember 2020-01-01 2020-06-30 0001200375 us-gaap:EmployeeStockOptionMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2020-01-01 2020-06-30 0001200375 us-gaap:EmployeeStockOptionMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2020-01-01 2020-06-30 0001200375 us-gaap:RestrictedStockUnitsRSUMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2020-01-01 2020-06-30 0001200375 us-gaap:RestrictedStockUnitsRSUMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2020-01-01 2020-06-30 0001200375 us-gaap:PerformanceSharesMember cdxs:A2019PlanMember 2020-06-30 0001200375 us-gaap:PerformanceSharesMember cdxs:A2019PlanMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2020-01-01 2020-06-30 0001200375 us-gaap:PerformanceSharesMember cdxs:A2019PlanMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2020-01-01 2020-06-30 0001200375 us-gaap:PerformanceSharesMember 2020-01-01 2020-06-30 0001200375 us-gaap:PerformanceSharesMember cdxs:A2020PSUAndPBOPlanMember 2020-06-30 0001200375 us-gaap:PerformanceSharesMember cdxs:A2019PSUandPBOPlanMember 2020-03-31 0001200375 us-gaap:PerformanceSharesMember cdxs:A2019PSUandPBOPlanMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2020-01-01 2020-03-31 0001200375 srt:ScenarioForecastMember us-gaap:PerformanceSharesMember cdxs:A2019PSUandPBOPlanMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2021-01-01 2021-03-31 0001200375 us-gaap:PerformanceSharesMember cdxs:A2018PSUandPBOPlanMember 2019-03-31 0001200375 us-gaap:PerformanceSharesMember cdxs:A2018PSUandPBOPlanMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2019-01-01 2019-03-31 0001200375 us-gaap:PerformanceSharesMember cdxs:A2018PSUandPBOPlanMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2020-01-01 2020-03-31 0001200375 us-gaap:ResearchAndDevelopmentExpenseMember 2020-04-01 2020-06-30 0001200375 us-gaap:ResearchAndDevelopmentExpenseMember 2019-04-01 2019-06-30 0001200375 us-gaap:ResearchAndDevelopmentExpenseMember 2020-01-01 2020-06-30 0001200375 us-gaap:ResearchAndDevelopmentExpenseMember 2019-01-01 2019-06-30 0001200375 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2020-04-01 2020-06-30 0001200375 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2019-04-01 2019-06-30 0001200375 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2020-01-01 2020-06-30 0001200375 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2019-01-01 2019-06-30 0001200375 us-gaap:EmployeeStockOptionMember 2020-04-01 2020-06-30 0001200375 us-gaap:EmployeeStockOptionMember 2019-04-01 2019-06-30 0001200375 us-gaap:EmployeeStockOptionMember 2019-01-01 2019-06-30 0001200375 cdxs:RSAsandRSUsMember 2020-04-01 2020-06-30 0001200375 cdxs:RSAsandRSUsMember 2019-04-01 2019-06-30 0001200375 cdxs:RSAsandRSUsMember 2020-01-01 2020-06-30 0001200375 cdxs:RSAsandRSUsMember 2019-01-01 2019-06-30 0001200375 cdxs:PerformanceStockUnitsMember 2020-04-01 2020-06-30 0001200375 cdxs:PerformanceStockUnitsMember 2019-04-01 2019-06-30 0001200375 cdxs:PerformanceStockUnitsMember 2020-01-01 2020-06-30 0001200375 cdxs:PerformanceStockUnitsMember 2019-01-01 2019-06-30 0001200375 cdxs:PerformanceBasedOptionsPBOsMember 2020-04-01 2020-06-30 0001200375 cdxs:PerformanceBasedOptionsPBOsMember 2019-04-01 2019-06-30 0001200375 cdxs:PerformanceBasedOptionsPBOsMember 2020-01-01 2020-06-30 0001200375 cdxs:PerformanceBasedOptionsPBOsMember 2019-01-01 2019-06-30 0001200375 us-gaap:ShareBasedPaymentArrangementNonemployeeMember 2020-06-01 2020-06-30 0001200375 us-gaap:StockCompensationPlanMember us-gaap:ShareBasedPaymentArrangementNonemployeeMember 2020-06-01 2020-06-30 0001200375 us-gaap:StockCompensationPlanMember us-gaap:ShareBasedPaymentArrangementNonemployeeMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2020-06-01 2020-06-30 0001200375 us-gaap:StockCompensationPlanMember us-gaap:ShareBasedPaymentArrangementNonemployeeMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2020-06-01 2020-06-30 0001200375 us-gaap:StockCompensationPlanMember us-gaap:ShareBasedPaymentArrangementNonemployeeMember 2020-01-01 2020-06-30 0001200375 us-gaap:StockCompensationPlanMember us-gaap:ShareBasedPaymentArrangementNonemployeeMember 2020-04-01 2020-06-30 0001200375 us-gaap:EmployeeStockOptionMember 2020-06-30 0001200375 us-gaap:StockCompensationPlanMember 2020-06-30 0001200375 cdxs:RSAsandRSUsMember 2020-06-30 0001200375 cdxs:PerformanceStockUnitsMember 2020-06-30 0001200375 cdxs:PerformanceBasedOptionsPBOsMember 2020-06-30 0001200375 us-gaap:PrivatePlacementMember 2019-06-01 2019-06-30 0001200375 us-gaap:PrivatePlacementMember 2019-06-30 0001200375 cdxs:A200220PenobscotMember 2020-06-30 0001200375 cdxs:A400PenoscotMember 2020-06-30 0001200375 cdxs:A501ChesapeakeMember 2020-06-30 0001200375 cdxs:A101SaginawMember 2020-01-31 0001200375 cdxs:SubleaseMember 2020-01-31 0001200375 cdxs:SubleaseMember 2020-04-30 0001200375 2019-01-01 2019-12-31 0001200375 us-gaap:DemandDepositsMember 2020-06-30 0001200375 us-gaap:DemandDepositsMember 2019-12-31 0001200375 2017-02-01 2017-02-28 0001200375 2017-02-28 0001200375 2017-04-30 0001200375 2017-04-01 2017-04-30 0001200375 us-gaap:SupplyCommitmentMember cdxs:April2016Member 2020-06-30 0001200375 us-gaap:SupplyCommitmentMember cdxs:September2019Member 2020-06-30 0001200375 us-gaap:SupplyCommitmentMember cdxs:March2020Member 2020-06-30 0001200375 us-gaap:SupplyCommitmentMember 2020-06-30 0001200375 cdxs:TermLoanMember 2017-06-30 0001200375 us-gaap:RevolvingCreditFacilityMember 2017-06-30 0001200375 us-gaap:RevolvingCreditFacilityMember 2017-06-30 2017-06-30 0001200375 cdxs:TermLoanMember us-gaap:LondonInterbankOfferedRateLIBORMember 2017-06-30 2017-06-30 0001200375 us-gaap:RevolvingCreditFacilityMember us-gaap:PrimeRateMember 2017-06-30 2017-06-30 0001200375 us-gaap:IndemnificationGuaranteeMember 2020-06-30 0001200375 srt:DirectorMember 2020-01-01 2020-06-30 0001200375 cdxs:TransactionsWithAstraZenecaPLCMember srt:ManagementMember 2020-04-01 2020-06-30 0001200375 cdxs:TransactionsWithAstraZenecaPLCMember srt:ManagementMember 2020-01-01 2020-06-30 0001200375 cdxs:TransactionsWithAstraZenecaPLCMember srt:ManagementMember 2019-04-01 2019-06-30 0001200375 cdxs:TransactionsWithAstraZenecaPLCMember srt:ManagementMember 2019-01-01 2019-06-30 0001200375 cdxs:TransactionsWithAstraZenecaPLCMember srt:ManagementMember 2020-06-30 0001200375 cdxs:TransactionsWithAstraZenecaPLCMember srt:ManagementMember 2019-12-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember cdxs:CoreSegmentMember 2020-04-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember 2020-04-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember cdxs:CoreSegmentMember 2019-04-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember 2019-04-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2020-04-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2020-04-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember 2020-04-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2019-04-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2019-04-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember 2019-04-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:CoreSegmentMember 2020-04-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:BiotherapeuticSegmentMember 2020-04-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember 2020-04-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:CoreSegmentMember 2019-04-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:BiotherapeuticSegmentMember 2019-04-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember 2019-04-01 2019-06-30 0001200375 us-gaap:CorporateNonSegmentMember 2020-04-01 2020-06-30 0001200375 us-gaap:CorporateNonSegmentMember 2019-04-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember cdxs:CoreSegmentMember 2020-01-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember 2020-01-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember cdxs:CoreSegmentMember 2019-01-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember 2019-01-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2020-01-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember 2020-01-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2019-01-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember 2019-01-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:CoreSegmentMember 2020-01-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember 2020-01-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:CoreSegmentMember 2019-01-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-06-30 0001200375 us-gaap:OperatingSegmentsMember 2019-01-01 2019-06-30 0001200375 us-gaap:CorporateNonSegmentMember 2020-01-01 2020-06-30 0001200375 us-gaap:CorporateNonSegmentMember 2019-01-01 2019-06-30 0001200375 cdxs:CustomerAMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2020-04-01 2020-06-30 0001200375 cdxs:CustomerAMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2019-04-01 2019-06-30 0001200375 cdxs:CustomerAMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2020-01-01 2020-06-30 0001200375 cdxs:CustomerAMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2019-01-01 2019-06-30 0001200375 cdxs:CustomerBMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2020-04-01 2020-06-30 0001200375 cdxs:CustomerBMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2019-04-01 2019-06-30 0001200375 cdxs:CustomerBMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2020-01-01 2020-06-30 0001200375 cdxs:CustomerBMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2019-01-01 2019-06-30 0001200375 cdxs:CustomerCMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2019-04-01 2019-06-30 0001200375 cdxs:CustomerDMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2020-01-01 2020-06-30 0001200375 cdxs:CustomerEMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2020-04-01 2020-06-30 0001200375 cdxs:CustomerEMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2020-01-01 2020-06-30 0001200375 cdxs:CustomerAMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2020-01-01 2020-06-30 0001200375 cdxs:CustomerAMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2019-01-01 2019-12-31 0001200375 cdxs:CustomerBMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2020-01-01 2020-06-30 0001200375 cdxs:CustomerBMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2019-01-01 2019-12-31 0001200375 cdxs:CustomerDMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2020-01-01 2020-06-30 0001200375 cdxs:CustomerFMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2020-01-01 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:PerformanceEnzymesMember 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember cdxs:NovelBiotherapeuticsMember 2020-06-30 0001200375 us-gaap:OperatingSegmentsMember 2020-06-30 0001200375 us-gaap:FinancingReceivables30To59DaysPastDueMember 2020-06-30 0001200375 us-gaap:FinancingReceivables60To89DaysPastDueMember 2020-06-30 0001200375 us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember 2020-06-30 0001200375 us-gaap:FinancingReceivables30To59DaysPastDueMember 2019-12-31 0001200375 us-gaap:FinancingReceivables60To89DaysPastDueMember 2019-12-31 0001200375 us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember 2019-12-31 shares iso4217:USD iso4217:USD shares cdxs:program cdxs:reportingUnit pure cdxs:installment utr:sqft cdxs:security cdxs:segment 0001200375 false 2020 Q2 --12-31 P6M P1Y P6M P1Y P6M P1Y P10M 0.33 P10M 10-Q true 2020-06-30 false 001-34705 Codexis, Inc. DE 71-0872999 200 Penobscot Drive, Redwood City, CA 94063 650 421-8100 Common Stock, par value $0.0001 per share CDXS NASDAQ Yes Yes Large Accelerated Filer false false false 59126820 75649000 90498000 619000 661000 14035000 9063000 0 1027000 12412000 10099000 26447000 20189000 34000 34000 26413000 20155000 686000 371000 3131000 2520000 106498000 114205000 1062000 1062000 1000000 0 22599000 23837000 170000 268000 6822000 6282000 3241000 3241000 391000 178000 141783000 149073000 2637000 2621000 4979000 5003000 6943000 6943000 6540000 2482000 1107000 0 60000 1903000 57000 18944000 15388000 3142000 1987000 23665000 24951000 1246000 1230000 46997000 43556000 0.0001 0.0001 5000000 5000000 0 0 0 0 0 0 0.0001 0.0001 100000000 100000000 59125000 59125000 58877000 58877000 6000 6000 451185000 447920000 -356405000 -342409000 94786000 105517000 141783000 149073000 4504000 6249000 9604000 14236000 10463000 6070000 20033000 13665000 14967000 12319000 29637000 27901000 1699000 2772000 4240000 7163000 10853000 8274000 21820000 16290000 8522000 7896000 17512000 16311000 21074000 18942000 43572000 39764000 -6107000 -6623000 -13935000 -11863000 57000 220000 323000 450000 13000 -88000 -72000 -211000 -6037000 -6491000 -13684000 -11624000 307000 16000 312000 19000 -6344000 -6507000 -13996000 -11643000 -0.11 -0.12 -0.24 -0.21 59000000 54954000 58944000 54564000 59017000 6000 449121000 -350061000 99066000 27000 158000 158000 81000 1935000 1935000 4000 4000 0 33000 33000 -6344000 -6344000 59125000 6000 451185000 -356405000 94786000 54541000 5000 386815000 -335610000 51210000 310000 2067000 2067000 40000 1988000 1988000 74000 3049000 1000 49925000 49926000 -6507000 -6507000 57940000 6000 440795000 -342117000 98684000 58877000 6000 447920000 -342409000 105517000 32000 197000 197000 300000 4104000 4104000 4000 4000 84000 1040000 1040000 -13996000 -13996000 59125000 6000 451185000 -356405000 94786000 54065000 5000 386775000 -330474000 56306000 529000 2843000 2843000 441000 4051000 4051000 144000 2799000 2799000 74000 3049000 1000 49925000 49926000 -11643000 -11643000 57940000 6000 440795000 -342117000 98684000 -13996000 -11643000 900000 693000 1336000 1486000 0 1000 4108000 4051000 0 -168000 4972000 262000 -1027000 -35000 2313000 -365000 315000 131000 611000 882000 213000 -59000 -19000 -1625000 -24000 -721000 1863000 402000 -1270000 -715000 3001000 812000 -11498000 -7909000 1490000 1258000 0 1000 1000000 0 -2490000 -1257000 197000 2843000 0 50000000 0 74000 60000 119000 1040000 2799000 -903000 49851000 -14891000 40685000 92221000 54485000 77330000 95170000 4000 9000 5000 0 90000 773000 75649000 93421000 1681000 1749000 77330000 95170000 Description of Business<div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In these notes to the unaudited condensed consolidated financial statements, the “Company,” “we,” “us,” and “our” refers to Codexis, Inc. and its subsidiaries on a consolidated basis.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We discover, develop and sell proteins that deliver value to our clients in a growing set of industries. We view proteins as a vast untapped source of value-creating materials, and we are using our proven technologies, which we have been continuously improving since our inception in 2002, to commercialize an increasing number of novel proteins, both as proprietary Codexis products and in partnership with our customers.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We are a pioneer in the harnessing of computational technologies to drive biology advancements. Since 2002, we have made substantial investments in the development of our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering technology platform, the primary source of our competitive advantage. Our technology platform is powered by proprietary, artificial intelligence-based, computational algorithms that rapidly mine our large and continuously growing library of protein variants’ performance attributes. These computational outputs enable increasingly reliable predictions for next generation protein variants to be engineered, enabling delivery of targeted performance enhancements in a time-efficient manner. In addition to its computational prowess, our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering technology platform integrates additional modular competencies, including robotic high-throughput screening and genomic sequencing, organic chemistry and process development which are all coordinated to create our novel protein innovations.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Our approach to developing commercially viable biocatalytic manufacturing processes begins by conceptually designing the most cost-effective and practical process for a targeted product. We then develop optimized protein catalysts to enable that process design, using our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology. Engineered protein catalyst candidates - many thousands for each protein engineering project - are then rapidly screened and validated in high throughput screening under relevant manufacturing operating conditions. This approach results in an optimized protein catalyst enabling cost-efficient processes that typically are relatively simple to run in conventional manufacturing equipment. This also allows for the efficient technical transfer of our process to our manufacturing partners.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The successful embodiment of our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering technology platform in commercial manufacturing processes requires well-integrated expertise in a number of technical disciplines. In addition to those directly involved in practicing our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology, such as molecular biology, enzymology, microbiology, cellular engineering, metabolic engineering, bioinformatics, biochemistry and high throughput analytical chemistry, our process development projects also involve integrated expertise in organic chemistry, chemical process development, chemical engineering, fermentation process development and fermentation engineering. Our integrated, multi-disciplinary approach to biocatalyst and process development is a critical success factor for the Company.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We initially commercialized our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering technology platform and products in the pharmaceuticals market, which remains a primary business focus. Our customers, which include many large global pharmaceutical companies, use our technology, products and services in their manufacturing processes and process development. We have also licensed our proprietary CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">protein engineering technology platform to global pharmaceutical companies so that they may in turn use this technology to engineer enzymes for their own businesses. Most recently, in May 2019, we entered into a Platform Technology Transfer and License Agreement (the “Novartis CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> Agreement”) with Novartis Pharma AG (“Novartis”). The Novartis CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Agreement allows Novartis to use our proprietary CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology in the field of human healthcare.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">As evidence of our strategy to extend our technology beyond pharmaceutical manufacturing, we have also used the technology to develop protein catalysts and industrial enzymes for use in a wider set of industrial markets. These target industries consist of several large market verticals, including food and food ingredients, animal feed, consumer care, flavors, fragrances and agricultural chemicals. In addition, we are using our technology to develop enzymes for customers using next generation sequencing ("NGS") and polymerase chain reaction ("PCR/qPCR") for in vitro molecular diagnostic and genomic research applications. In December 2019, we entered into a license agreement to provide Roche Sequencing Solutions, Inc. (“Roche”) with our first enzyme for this target market, the Company's EvoT4™ DNA ligase. In June 2020, we entered into a co-marketing and enzyme supply collaboration agreement with Alphazyme LLC for the production and co-marketing of enzymes for life science applications including, initially, high-fidelity DNA polymerase, T7 RNA polymerase and reverse transcriptase enzymes.</span></div><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%;">We have also begun using the CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:115%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%;"> protein engineering technology platform to develop early stage, novel biotherapeutic product candidates, both for our customers and for our own business. In October 2017, we entered into the "Nestlé Agreement” with Nestlé Health Science to advance CDX-6114, our enzyme biotherapeutic product candidate for the potential treatment of phenylketonuria ("PKU"). PKU is an inherited metabolic disorder in which the enzyme that converts the essential amino acid phenylalanine into tyrosine is deficient.</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%;"> </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%;">In February 2019, Nestlé Health Science exercised its option to obtain an exclusive license to develop and commercialize CDX-6114.</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%;"> </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%;">In March 2020, we entered into a Strategic Collaboration and License Agreement (“Takeda Agreement”) with Shire Human Genetic Therapies, Inc., a wholly-owned subsidiary of Takeda Pharmaceutical Company Limited (“Takeda”), for the research and development of novel gene therapies for certain disease indications, including the treatment of lysosomal storage disorders and blood factor deficiencies. </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:115%;"> </span></div><div style="text-indent:18pt;margin-top:12pt;margin-bottom:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Below are brief descriptions of our business segments:</span></div><div style="text-indent:36pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Performance Enzymes</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We initially commercialized our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">protein engineering technology platform and products in the pharmaceuticals market, and to date this continues to be our largest market served. Our customers, which include many large global pharmaceutical companies, use our technology, products and services in their manufacturing processes and process development. We have also used the technology to develop customized enzymes for use in other industrial markets. These markets consist of several large industrial verticals, including food and food ingredients, animal feed, consumer care, flavors, fragrances, and agricultural chemicals. We also use our technology to develop enzymes for customers using NGS and PCR/qPCR for in vitro molecular diagnostic and molecular biology research applications. </span></div><div style="text-indent:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Novel Biotherapeutics</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We are also targeting new opportunities in the pharmaceutical industry to discover, improve, and/or develop biotherapeutic drug candidates. We believe that our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology can be used to discover novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. Similarly, we believe that we can deploy our platform technology to improve specific characteristics of a customer’s pre-existing biotherapeutic drug candidate, such as its activity, stability or immunogenicity.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Our first lead program was for the potential treatment of hyperphenylalaninemia (“HPA”) (also referred to as PKU) in humans. PKU is an inherited metabolic disorder in which the enzyme that converts the essential amino acid phenylalanine into tyrosine is deficient. In October 2017, we announced a global development, option and license agreement with Nestlé Health Science to advance CDX-6114, our own novel orally administrable enzyme therapeutic candidate for the potential treatment of PKU. In July 2018, we announced that we had dosed the first subjects in a first-in-human Phase 1a dose-escalation trial with CDX-6114, which was conducted in Australia. In November 2018, we announced top-line results from the Phase 1a study in healthy volunteers with CDX-6114. In December 2018, Nestlé Health Science became obligated to pay us an additional $1.0 million within 60 days after the achievement of a milestone relating to formulation of CDX-6114. In January 2019, we received notice from the U.S. Food and Drug Administration that it had completed its review of our investigational drug application for CDX-6114 and concluded that we may proceed with the proposed Phase 1b multiple ascending dose study in healthy volunteers in the United States. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive, worldwide, royalty-bearing, sub-licensable license for the global development and commercialization of CDX-6114 for the management of PKU. In January 2020, we and Nestlé Health Science entered into a development agreement pursuant to which we and Nestlé Health Science are collaborating to advance a lead candidate targeting a gastro-intestinal disorder discovered through our Strategic Collaboration Agreement into pre-clinical and early clinical studies. The Strategic Collaboration Agreement was extended through December 2021. Using our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology, we have also developed a pipeline of other biotherapeutic drug candidates, all of which are in preclinical development. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Our most recent achievement in novel biotherapeutics came in March 2020, when we announced a strategic collaboration and license agreement with Takeda in which we will collaborate with Takeda to research and develop protein sequences for use in gene therapy products for certain disease indications. Under the terms of the Takeda Agreement, we will generate novel gene sequences encoding protein variants tailored to enhance efficacy as a result of increased activity, stability, and cellular uptake using our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform. Takeda will combine these improved transgenes with its gene therapy capabilities to generate novel candidates for the treatment of rare genetic disorders. We are currently collaborating on three initial programs for the treatment of Fabry disease, Pompe disease, and an unnamed blood factor deficiency. The Company is responsible for the creation of novel enzyme sequences for advancement as gene therapies into pre-clinical development. Takeda is responsible for the pre-clinical and clinical development and commercialization of gene therapy products resulting from the collaboration programs. Under the terms of the agreement, in addition to the three initial programs, Takeda may initiate up to four additional programs for separate target indications. In March 2020, we began research and development activities under the program plans and received a $8.5 million one-time, non-refundable cash payment.</span></div><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We expect to continue to make additional investments in our pipeline with the aim of advancing additional product candidates targeting other therapeutic areas. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">For additional discussion of our business segments, see Note 13, "Segment, Geographical and Other Revenue Information."</span></div><div style="text-indent:18pt;"><span><br/></span></div><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:115%;">Business Update Regarding COVID-19</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We are subject to risks and uncertainties as a result of the current COVID-19 pandemic. The COVID-19 pandemic has presented a substantial public health and economic challenge around the world and is affecting our employees, communities and business operations, as well as the U.S. economy and other economies worldwide. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition will depend on future developments that are highly uncertain and cannot be accurately predicted, including the duration and severity of the pandemic and the extent and severity of the impact on our customers, new information that may emerge concerning COVID-19, the actions taken to contain it or treat its impact and the economic impact on local, regional, national and international markets.</span></div><div style="text-indent:18pt;margin-top:6pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">To date, we and our collaboration partners have been able to continue to supply our enzymes to our customers worldwide. However, we are dependent on our manufacturing and logistics partners and consequently, disruptions in operations of our partners and customers may affect our ability to supply enzymes to our customers. Furthermore, our ability to provide future research and development ("R&amp;D") services will continue to be impacted as a result of governmental orders and any disruptions in operations of our customers with whom we collaborate. We are continuing to assess the potential impact of the COVID-19 pandemic on our business and operations, including our product sales, R&amp;D service revenue, expenses and manufacturing. However, we are unable to fully determine and quantify the extent to which this pandemic affected our total revenues due to complex accounting judgments.</span></div><div style="text-indent:22.5pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In the U.S., the impact of COVID-19, including governmental orders ("Orders") governing the operation of businesses during the pandemic, caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Research and development operations for all other projects were temporarily suspended from mid-March 2020 through the end of April in accordance with these Orders. In May 2020, we initiated limited operations and gradually ramped up our R&amp;D operations so that we are currently utilizing the majority of our normal R&amp;D capacity. Additionally, we have resumed small scale manufacturing at our Redwood City pilot plant in May 2020.</span></div><div style="text-indent:22.5pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Our future results of operations and liquidity could be adversely impacted by delays in payments of outstanding receivable amounts beyond normal payment terms, supply chain disruptions and uncertain demand, and the impact of any initiatives or programs that we may undertake to address financial and operations challenges faced by our customers. As of the date of issuance of the unaudited condensed consolidated financial statements, the extent to which the COVID-19 pandemic may materially impact our financial condition, liquidity, or results of operations is uncertain in the future.</span></div><div style="margin-top:12pt;"><span><br/></span></div><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:103%;">Recent Investing Activities</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In June 2020, we entered into a Master Collaboration and Research Agreement with Molecular Assemblies, Inc. (“MAI”), a privately held company, to engineer enzymes to deliver differentiated and cost-effective solutions for the enzymatic synthesis of DNA (“MAI Agreement”). Under an associated stock purchase agreement, we purchased 1,587,050 shares of MAI's Series A preferred stock for $1.0 million, and in connection with our investment, John Nicols, our chief executive officer joined MAI’s board of directors. Under the MAI Agreement, for a fixed monthly fee payable in shares of Series A preferred stock, we will apply our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">protein engineering platform technology to improve the DNA polymerase enzymes that are critical for enzymatic DNA synthesis. Through the provision of these services, we are eligible to earn additional shares of Series A preferred stock. MAI will combine its advanced chemistries with our enzymes to drive the process to commercialization. For additional information, see Note 12,</span><span style="background-color:rgb(255,255,255, 0.0);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:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Related Party Transactions," in the Notes to Unaudited Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q.</span></div> 1000000.0 P60D 3 3 4 8500000 1587050 1000000.0 Basis of Presentation and Summary of Significant Accounting Policies<div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Basis of Presentation and Principles of Consolidation</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);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 have been prepared in accordance with generally accepted accounting principles in the United States of America ("GAAP") and the applicable rules and regulations of the Securities and Exchange Commission ("SEC") for interim financial information. Accordingly, they do not include all the information and notes required by GAAP for complete financial statements. These interim unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto contained in our Annual Report on Form 10-K for the year ended December 31, 2019. The condensed consolidated balance sheet at December 31, 2019 has been derived from the audited consolidated financial statements at that date, but does not include all disclosures, including notes, required by GAAP for complete financial statements. The significant accounting policies used in preparation of the unaudited condensed consolidated financial statements for the three and six months ended June 30, 2020 are consistent with those discussed in Note 2 to the audited consolidated financial statements in the Company’s 2019 Annual Report on Form 10-K and are updated below as necessary.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Certain prior year amounts have been reclassified to conform to 2020 presentation. In June 2016, the Financial Accounting Standards Board (“FASB”) issued guidance requiring implementation of a new impairment model applicable to financial assets measured at amortized cost which, among other things required that accounts receivable, contract assets, unbilled receivables and related allowances be reclassified as financial assets.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Except as noted above, the unaudited condensed consolidated financial statements have been prepared on the same basis as the audited consolidated financial statements and, in the opinion of management, reflect all adjustments of a normal recurring nature considered necessary to present fairly our financial position as of June 30, 2020, results of our operations for the three and six months ended June 30, 2020 and 2019, changes in stockholders' equity for the three and six months ended June 30, 2020 and 2019, and cash flows for the six months ended June 30, 2020 and 2019. The interim results are not necessarily indicative of the results for any future interim period or for the entire year. The results of the six months ended June 30, 2020 reflect the adoption of the accounting standards including: Accounting Standard Update ("ASU") 2016-13,</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;"> Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">which added a new impairment model applicable to our financial assets measured at amortized cost, and (ii) ASU No. 2017-04,</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;"> Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment, </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">which adjusts testing for goodwill impairment. See "Recently adopted accounting pronouncements" for details regarding the adoption of these standards. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The unaudited interim condensed consolidated financial statements include the accounts of Codexis, Inc. and its wholly owned subsidiaries. All significant intercompany balances and transactions have been eliminated in consolidation. </span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);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="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The preparation of our unaudited condensed consolidated financial statements in conformity with GAAP requires us to make estimates, judgments and assumptions that may affect the reported amounts of assets, liabilities, equity, revenues and expenses and related disclosure of contingent assets and liabilities. We regularly assess these estimates which primarily affect revenue recognition, the interest rate used to adjust the promised amount of consideration for the effects of significant financial assets (comprised of accounts receivable, contract assets, and unbilled receivables), inventories, goodwill arising out of business acquisitions, accrued liabilities, stock awards, and the valuation allowances associated with deferred tax assets. Actual results could differ from those estimates and such differences may be material to the unaudited condensed consolidated financial statements. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition, including sales, expenses, reserves and allowances, manufacturing, research and development costs and employee-related amounts, will depend on future developments that are highly uncertain, including as a result of new information that may emerge concerning COVID-19 and the actions taken to contain or treat COVID-19, as well as the economic impact on local, regional, national and international customers, markets and economies.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;"> Financial assets and Allowances</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We currently sell enzymes primarily to pharmaceutical and fine chemicals companies throughout the world by the extension of trade credit terms based on an assessment of each customer's financial condition. Trade credit terms are generally offered without collateral and may include an insignificant discount for prompt payment for specific customers. To manage our credit exposure, we perform ongoing evaluations of our customers' financial conditions. In addition, accounts receivable include amounts owed to us under our collaborative research and development agreements. We recognize accounts receivable at invoiced amounts and we maintain a valuation allowance as follows:</span></div><div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Allowance for credit losses from January 1, 2020</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">On and subsequent to January 1, 2020, our financial results reflect an impairment model (known as the “current expected credit loss model” or “CECL”) based on estimates and forecasts of future conditions requiring recognition of a lifetime of expected credit losses at inception on our financial assets measured at amortized costs which is comprised of accounts receivable, contract assets, and unbilled receivables. We have determined that our financial assets share similar risk characteristics including: (i) customer origination in the pharmaceutical and fine chemicals industry, (ii) similar historical credit loss pattern of customers (iii) no meaningful trade receivable differences in terms, (iv) similar historical credit loss experience and (v) our belief that the composition of certain assets are comparable to our historical portfolio used to develop loss history. As a result, we measured the allowance for credit loss (“ACL”) on a collective basis. Our ACL methodology considers how long the asset has been past due, the financial condition of the customers, which includes ongoing quarterly evaluations and assessments of changes in customer credit ratings, and other market data that we believe are relevant to the collectability of the assets. Nearly all financial assets are due from customers that are highly rated by major rating agencies and have a long history of no credit loss. We derive our ACL by establishing an impairment rate attributable to assets not yet identified as impaired.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We derive our ACL by initially relying on our historical financial asset loss rate which contemplates the full contractual life of the assets sharing similar risk characteristics, adjusted to reflect (i) the extent to which we have determined current conditions differ from the conditions that existed for the period over which historical loss information was evaluated and (ii) by taking into consideration the changes in certain macroeconomic historical and forecasted information. We apply the ACL to past due financial assets and record charges to the ACL as a provision to credit loss expense in the Statement of Operations. Financial assets we identify as uncollectible are also charged against the ACL. We adjust the impairment rate to reflect the extent to which we have determined current conditions differ from the conditions that existed for the period over which historical loss information was evaluated. Adjustments to historical loss information may be qualitative or quantitative in nature and reflect changes related to relevant data.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In the three and six months ended June 30, 2020, inputs to our CECL forecast incorporated forward-looking adjustments associated with the COVID-19 pandemic which we believe are appropriate to incorporate due to the uncertainty of the economic impact on cash flows from our financial assets. </span></div><div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Allowance for credit losses before January 1, 2020</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Prior to January 1, 2020, the allowances for doubtful accounts reflected our best estimates of probable losses inherent in our accounts receivable, contract assets, and unbilled receivables balances. The allowance determination was based on known troubled accounts, historical experience, and other currently available evidence. Uncollectible accounts receivable were written off against the allowance for doubtful accounts when all efforts to collect them have been exhausted. Recoveries were recognized when they were received. Actual collection losses may differ from our estimates and could be material to our consolidated financial position, results of operations, and cash flows.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Investment in Equity Securities</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We own an equity investment in Molecular Assemblies, Inc. (“MAI”) which is a privately held company. Concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors, and we entered into the MAI Agreement pursuant to which we will provide technical services and expertise in exchange for compensation in the form of additional shares of voting preferred stock. We and MAI envision entering into an arrangement to commercialize products developed under the MAI Agreement.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">To analyze the fair value measurement of our equity investment in MAI, we perform a qualitative analysis using significant unobservable inputs. Significant changes to the unobservable inputs may result in a significantly higher or lower fair value estimate. We may value our equity investment based on significant recent arms-length equity transactions with sophisticated non-strategic unrelated new investors, providing the terms of these equity transactions are substantially similar to the equity transactions terms between the company and us. The impact of the difference in transaction terms on the market value of the portfolio company may be difficult or impossible to quantify.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We evaluate our investment for impairment when circumstances indicate that we may not be able to recover the carrying value. We impair our investment when we determine that there has been an “other-than-temporary” decline in the company's estimated fair value compared to its carrying value. We calculate the estimated fair value of the investment using information from the company, which may include:</span></div><div style="text-indent:-18pt;padding-left:72pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Audited and unaudited financial statements;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Projected technological developments of the company;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Projected ability of the company to service its debt obligations;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">If a deemed liquidation event were to occur;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Current fundraising transactions;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Current ability of the company to raise additional financing if needed;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Changes in the economic environment which may have a material impact on the operating results of the company;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Qualitative assessment of key management;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Contractual rights, obligations or restrictions associated with the investment; and</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Other factors deemed relevant by our management to assess valuation.</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">The valuation may be reduced if the company's potential has deteriorated significantly. If the factors that led to a reduction in valuation are overcome, the valuation may be readjusted.</span></div><div style="padding-left:36pt;"><span><br/></span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Goodwill</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Goodwill represents the excess of consideration transferred over the fair value of net assets of businesses acquired and is assigned to reporting units. We test goodwill for impairment considering amongst other things, whether there have been sustained declines in the trading price of our stock on the Nasdaq Global Select Market. If we conclude it is more likely than not that the fair value of a reporting unit is less than its carrying amount, a quantitative fair value test is performed. We manage our business as two reporting units and we test goodwill for impairment at the reporting unit level. We allocated goodwill to the two reporting units using a relative fair value allocation methodology that primarily relied on our estimates of revenue and future earnings for each reporting unit. Using the relative fair value allocation methodology, we have determined that approximately 76% of goodwill was to be allocated to the Performance Enzymes segment and 24% allocated to the Novel Biotherapeutics segment. As a result of the calculation, $2.4 million of the goodwill is assigned to the Performance Enzymes segment and $0.8 million is assigned to the Novel Biotherapeutics segment. We test goodwill for impairment on an annual basis on the last day of the fourth fiscal quarter and, when specific circumstances dictate, between annual tests, by first assessing qualitative factors to determine whether it is more likely than not that the fair value of a reporting unit is less than its carrying amount. During 2020 and 2019, we did not record impairment charges related to goodwill. We test for goodwill impairment is as follows: </span></div><div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Goodwill impairment testing from January 1, 2020</span></div><div style="text-indent:18pt;margin-top:9pt;margin-bottom:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> On and subsequent to January 1, 2020, we test for goodwill impairment by comparing the fair value of each reporting unit to its respective carrying value. Using the relative fair value allocation methodology for assets and liabilities used in both of our reporting units, we compare the allocated carrying amount of each reporting unit’s net assets and the assigned goodwill to its fair value. If the fair value of the reporting unit exceeds its carrying amount, goodwill of the reporting unit is considered not impaired. Any excess of the reporting unit’s carrying amount of goodwill over its fair value is recognized as an impairment.</span></div><div style="padding-left:36pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Goodwill impairment testing before January 1, 2020</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Prior to January 1, 2020, the goodwill impairment test consisted of a two-step process. The first step of the goodwill impairment test, used to identify potential impairment, compared the fair value of each reporting unit to its carrying value. Using the relative fair value allocation methodology for assets and liabilities used in both of our reporting units, we compared the allocated carrying amount of each reporting unit’s net assets and the assigned goodwill to its fair value. If the fair value of the reporting unit exceeded its carrying amount, goodwill of the reporting unit was considered not impaired, and the second step of the impairment test was not required. The second step, if required, compared the implied fair value of the reporting unit’s goodwill with the carrying amount of that goodwill. Implied fair value was the excess of the fair value of the reporting unit over the fair value of all identified or allocated assets and liabilities. Any excess of the reporting unit’s carrying amount goodwill over the respective implied fair value was recognized as an impairment.</span></div><div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Interim Goodwill Impairment Testing</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We tested goodwill for impairment in the quarter ended June 30, 2020. In late 2019, COVID-19 was reported to have surfaced and has since spread worldwide. The impact of COVID-19 has caused a decline in global and domestic macroeconomic conditions, the general deterioration of the U.S. economy and other economies worldwide, all of which may negatively impact our overall financial performance, driving a reduction in our cash flows. We believe that the impact of the COVID-19 pandemic was a triggering event that gave rise to the need to perform a goodwill impairment test. We tested for goodwill impairment by comparing the fair value of each reporting unit to its respective carrying value. We used the relative fair value allocation methodology for assets and liabilities used in both of our reporting units. We compared the allocated carrying amounts of each reporting unit’s net assets at June 30, 2020 and the assigned goodwill to its fair value at June 30, 2020. We concluded that there was no goodwill impairment at June 30, 2020.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Segment Reporting</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We report two business segments, Performance Enzymes and Novel Biotherapeutics, which are based on our operating segments. Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the chief operating decision maker ("CODM"), or decision making group, in deciding how to allocate resources, and in assessing performance. Our CODM is our Chief Executive Officer. Our business segments are primarily based on our organizational structure and our operating results as used by our CODM in assessing performance and allocating resources for the Company. We do not allocate or evaluate assets by segment.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The Novel Biotherapeutics segment focuses on new opportunities in the pharmaceutical industry to dis</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">cover or improve novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. The Performance Enzymes segment consists of protein catalyst products and services with focus on pharmaceutical, food, molecular diagnostics, and other industrial markets.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Income Taxes</span></div><div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Changes to Tax Law</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">On March 27, 2020, the Coronavirus Aid, Relief, and Economic Security Act (“CARES Act”), P.L. 116-136,was passed into law, amending portions of certain relevant US tax laws. The CARES Act includes a number of federal income tax law changes, including, but not limited to: (i) permitting net operating loss carrybacks to offset 100% of taxable income for taxable years beginning before 2021, (ii) accelerating alternative minimum tax credit refunds, (iii) temporarily increasing the allowable business interest deduction from 30% to 50% of adjusted taxable income, and (iv) providing a technical correction for depreciation related to qualified improvement property. The Company is currently evaluating if it will claim the Employee Retention Credit and apply for payroll tax deferrals under the CARES Act.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Accounting Pronouncements</span></div><div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Recently adopted accounting pronouncements</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In June 2016, the FASB issued ASU 2016-13, </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments,</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> which amends the FASB's guidance on the impairment of financial instruments. The standard adds a new impairment model, known as CECL, which replaces the probable loss model. The CECL impairment model is based on estimates and forecasts of future conditions which requires recognition of a lifetime of expected credit losses at inception on financial assets measured at amortized costs. Our financial assets measured at amortized cost are comprised of accounts receivable, contract assets, and unbilled receivables. We adopted the new standard in the first quarter of 2020 using a modified retrospective approach requiring a cumulative-effect adjustment to the opening accumulated deficit as of the date of adoption. The ASU establishes a new valuation account “allowance for credit losses” replacing the “allowance for doubtful accounts” in the consolidated balance sheet, which is used to adjust the amortized cost basis of assets in presentation of the net amount expected to be collected. The adoption required certain additional disclosures but had no other impact on our unaudited condensed consolidated financial statements.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In January 2017, the FASB issued ASU No. 2017-04, </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment.</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> The amendments eliminate Step 2 from the goodwill impairment test. The annual, or interim, goodwill impairment test is performed by comparing the fair value of a reporting unit to its carrying amount. An impairment charge should be recognized for the amount by which the carrying amount exceeds the reporting unit’s fair value; however, the loss recognized should not exceed the total amount of goodwill allocated to that reporting unit. In addition, income tax effects from any tax-deductible goodwill on the carrying amount of the reporting unit should be considered when measuring the goodwill impairment loss, if applicable. The amendments eliminate the requirements for any reporting unit with a zero or negative carrying amount to perform a qualitative assessment, and if it fails that qualitative test, to perform Step 2 of the goodwill impairment test. An entity still has the option to perform the qualitative assessment for a reporting unit to determine if the quantitative impairment test is necessary. We adopted the standard in the first quarter of 2020 using a prospective approach. The adoption required certain additional disclosures but had no impact on our unaudited condensed consolidated financial statements.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In August 2018, the FASB issued ASU 2018-13, </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Fair Value Measurement (Topic 820): Disclosure Framework—Changes to the Disclosure Requirements for Fair Value Measurement.</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> The primary focus of the standard is to improve the effectiveness of the disclosure requirements for fair value measurements. The changes affect all companies that are required to include fair value measurement disclosures. The standard requires the use of the prospective method of transition for disclosures related to changes in unrealized gains and losses, the range and weighted average of significant unobservable inputs used to develop fair value measurements categorized within Level 3 of the fair value hierarchy, and narrative description of measurement uncertainty. All other amendments in the standard are required to be adopted retrospectively. We adopted the standard in the first quarter of 2020 and the adoption had no impact on our unaudited condensed consolidated financial statements and related disclosures.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In November 2018, the FASB issued ASU 2018-18, </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Collaborative Arrangements (Topic 808): Clarifying the Interaction Between Topic 808 and Topic 606.</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> ASU 2018-18 provides guidance on how to assess whether certain transactions between collaborative arrangement participants should be accounted for within the revenue recognition standard. The standard also provides more comparability in the presentation of revenue for certain transactions between collaborative arrangement participants. The standard is to be applied retrospectively to the date of the initial application of Topic 606 which also requires recognition of the cumulative effect of applying the amendments as an adjustment to the opening balance of retained earnings of the later or the earliest annual period presented and the annual period inclusive of the initial application of Topic 606. We adopted the standard in the first quarter of 2020. The adoption will adjust certain annual disclosures but had no impact on our unaudited condensed consolidated financial statements and related disclosures.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Recently issued accounting pronouncements not yet adopted </span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">From time to time, new accounting pronouncements are issued by the FASB or other standards setting bodies that are adopted by us as of the specified effective date. Unless otherwise discussed, we believe that the impact of recently issued standards that are not yet effective will not have a material impact on our unaudited condensed consolidated financial statements upon adoption.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740):</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;"> Simplifying the Accounting for Income Taxes which is intended to simplify various aspects related to accounting for income taxes</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">. The standard is effective for fiscal years, and interim periods within those years, beginning after December 15, 2020, with early adoption permitted. The standard will be adopted upon the effective date for us beginning January 1, 2021. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In March 2020, the FASB issued ASU 2020-04, Reference Rate Reform (Topic 848):</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;"> Facilitation of the Effects of Reference Rate Reform on Financial Reporting. </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The standard provides optional expedients and exceptions for applying GAAP to contracts, hedging relationships, and other transactions in which the reference LIBOR or another reference rate are expected to be discontinued as a result of the Reference Rate Reform. The standard is effective for all entities. The standard may be adopted as of any date from the beginning of an interim period that includes or is subsequent to March 12, 2020 through December 31, 2022. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In May 2020, the Securities and Exchange Commission formally adopted amendments to financial disclosure regulations regarding the acquisition and disposition of certain business and among other things, amends the definition of a “significant subsidiary” by altering prescribed significance tests under Rule 1-02(w) of Regulation S-X, as well as under Rule 405 of the Securities Act of 1933 and Rule 12b-2 under the Securities Exchange Act of 1934. The amendments apply to reports and information filings as of January 1, 2021, with early adoption permitted. The effect of adoption will adjust certain annual disclosures but we expect no impact on our consolidated financial statements.</span></div> <div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Basis of Presentation and Principles of Consolidation</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);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 have been prepared in accordance with generally accepted accounting principles in the United States of America ("GAAP") and the applicable rules and regulations of the Securities and Exchange Commission ("SEC") for interim financial information. Accordingly, they do not include all the information and notes required by GAAP for complete financial statements. These interim unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto contained in our Annual Report on Form 10-K for the year ended December 31, 2019. The condensed consolidated balance sheet at December 31, 2019 has been derived from the audited consolidated financial statements at that date, but does not include all disclosures, including notes, required by GAAP for complete financial statements. The significant accounting policies used in preparation of the unaudited condensed consolidated financial statements for the three and six months ended June 30, 2020 are consistent with those discussed in Note 2 to the audited consolidated financial statements in the Company’s 2019 Annual Report on Form 10-K and are updated below as necessary.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Certain prior year amounts have been reclassified to conform to 2020 presentation. In June 2016, the Financial Accounting Standards Board (“FASB”) issued guidance requiring implementation of a new impairment model applicable to financial assets measured at amortized cost which, among other things required that accounts receivable, contract assets, unbilled receivables and related allowances be reclassified as financial assets.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Except as noted above, the unaudited condensed consolidated financial statements have been prepared on the same basis as the audited consolidated financial statements and, in the opinion of management, reflect all adjustments of a normal recurring nature considered necessary to present fairly our financial position as of June 30, 2020, results of our operations for the three and six months ended June 30, 2020 and 2019, changes in stockholders' equity for the three and six months ended June 30, 2020 and 2019, and cash flows for the six months ended June 30, 2020 and 2019. The interim results are not necessarily indicative of the results for any future interim period or for the entire year. The results of the six months ended June 30, 2020 reflect the adoption of the accounting standards including: Accounting Standard Update ("ASU") 2016-13,</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;"> Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">which added a new impairment model applicable to our financial assets measured at amortized cost, and (ii) ASU No. 2017-04,</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;"> Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment, </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">which adjusts testing for goodwill impairment. See "Recently adopted accounting pronouncements" for details regarding the adoption of these standards. </span></div>The unaudited interim condensed consolidated financial statements include the accounts of Codexis, Inc. and its wholly owned subsidiaries. All significant intercompany balances and transactions have been eliminated in consolidation. <div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);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="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The preparation of our unaudited condensed consolidated financial statements in conformity with GAAP requires us to make estimates, judgments and assumptions that may affect the reported amounts of assets, liabilities, equity, revenues and expenses and related disclosure of contingent assets and liabilities. We regularly assess these estimates which primarily affect revenue recognition, the interest rate used to adjust the promised amount of consideration for the effects of significant financial assets (comprised of accounts receivable, contract assets, and unbilled receivables), inventories, goodwill arising out of business acquisitions, accrued liabilities, stock awards, and the valuation allowances associated with deferred tax assets. Actual results could differ from those estimates and such differences may be material to the unaudited condensed consolidated financial statements. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition, including sales, expenses, reserves and allowances, manufacturing, research and development costs and employee-related amounts, will depend on future developments that are highly uncertain, including as a result of new information that may emerge concerning COVID-19 and the actions taken to contain or treat COVID-19, as well as the economic impact on local, regional, national and international customers, markets and economies.</span></div> Financial assets and AllowancesWe currently sell enzymes primarily to pharmaceutical and fine chemicals companies throughout the world by the extension of trade credit terms based on an assessment of each customer's financial condition. Trade credit terms are generally offered without collateral and may include an insignificant discount for prompt payment for specific customers. To manage our credit exposure, we perform ongoing evaluations of our customers' financial conditions. In addition, accounts receivable include amounts owed to us under our collaborative research and development agreements. We recognize accounts receivable at invoiced amounts and we maintain a valuation allowance as follows:<div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Allowance for credit losses from January 1, 2020</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">On and subsequent to January 1, 2020, our financial results reflect an impairment model (known as the “current expected credit loss model” or “CECL”) based on estimates and forecasts of future conditions requiring recognition of a lifetime of expected credit losses at inception on our financial assets measured at amortized costs which is comprised of accounts receivable, contract assets, and unbilled receivables. We have determined that our financial assets share similar risk characteristics including: (i) customer origination in the pharmaceutical and fine chemicals industry, (ii) similar historical credit loss pattern of customers (iii) no meaningful trade receivable differences in terms, (iv) similar historical credit loss experience and (v) our belief that the composition of certain assets are comparable to our historical portfolio used to develop loss history. As a result, we measured the allowance for credit loss (“ACL”) on a collective basis. Our ACL methodology considers how long the asset has been past due, the financial condition of the customers, which includes ongoing quarterly evaluations and assessments of changes in customer credit ratings, and other market data that we believe are relevant to the collectability of the assets. Nearly all financial assets are due from customers that are highly rated by major rating agencies and have a long history of no credit loss. We derive our ACL by establishing an impairment rate attributable to assets not yet identified as impaired.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We derive our ACL by initially relying on our historical financial asset loss rate which contemplates the full contractual life of the assets sharing similar risk characteristics, adjusted to reflect (i) the extent to which we have determined current conditions differ from the conditions that existed for the period over which historical loss information was evaluated and (ii) by taking into consideration the changes in certain macroeconomic historical and forecasted information. We apply the ACL to past due financial assets and record charges to the ACL as a provision to credit loss expense in the Statement of Operations. Financial assets we identify as uncollectible are also charged against the ACL. We adjust the impairment rate to reflect the extent to which we have determined current conditions differ from the conditions that existed for the period over which historical loss information was evaluated. Adjustments to historical loss information may be qualitative or quantitative in nature and reflect changes related to relevant data.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In the three and six months ended June 30, 2020, inputs to our CECL forecast incorporated forward-looking adjustments associated with the COVID-19 pandemic which we believe are appropriate to incorporate due to the uncertainty of the economic impact on cash flows from our financial assets. </span></div><div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Allowance for credit losses before January 1, 2020</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Prior to January 1, 2020, the allowances for doubtful accounts reflected our best estimates of probable losses inherent in our accounts receivable, contract assets, and unbilled receivables balances. The allowance determination was based on known troubled accounts, historical experience, and other currently available evidence. Uncollectible accounts receivable were written off against the allowance for doubtful accounts when all efforts to collect them have been exhausted. Recoveries were recognized when they were received. Actual collection losses may differ from our estimates and could be material to our consolidated financial position, results of operations, and cash flows.</span></div> <div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Investment in Equity Securities</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We own an equity investment in Molecular Assemblies, Inc. (“MAI”) which is a privately held company. Concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors, and we entered into the MAI Agreement pursuant to which we will provide technical services and expertise in exchange for compensation in the form of additional shares of voting preferred stock. We and MAI envision entering into an arrangement to commercialize products developed under the MAI Agreement.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">To analyze the fair value measurement of our equity investment in MAI, we perform a qualitative analysis using significant unobservable inputs. Significant changes to the unobservable inputs may result in a significantly higher or lower fair value estimate. We may value our equity investment based on significant recent arms-length equity transactions with sophisticated non-strategic unrelated new investors, providing the terms of these equity transactions are substantially similar to the equity transactions terms between the company and us. The impact of the difference in transaction terms on the market value of the portfolio company may be difficult or impossible to quantify.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We evaluate our investment for impairment when circumstances indicate that we may not be able to recover the carrying value. We impair our investment when we determine that there has been an “other-than-temporary” decline in the company's estimated fair value compared to its carrying value. We calculate the estimated fair value of the investment using information from the company, which may include:</span></div><div style="text-indent:-18pt;padding-left:72pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Audited and unaudited financial statements;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Projected technological developments of the company;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Projected ability of the company to service its debt obligations;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">If a deemed liquidation event were to occur;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Current fundraising transactions;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Current ability of the company to raise additional financing if needed;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Changes in the economic environment which may have a material impact on the operating results of the company;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Qualitative assessment of key management;</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Contractual rights, obligations or restrictions associated with the investment; and</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">Other factors deemed relevant by our management to assess valuation.</span></div><div style="text-indent:-18pt;padding-left:72pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">•</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt;">The valuation may be reduced if the company's potential has deteriorated significantly. If the factors that led to a reduction in valuation are overcome, the valuation may be readjusted.</span></div> <div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Goodwill</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Goodwill represents the excess of consideration transferred over the fair value of net assets of businesses acquired and is assigned to reporting units. We test goodwill for impairment considering amongst other things, whether there have been sustained declines in the trading price of our stock on the Nasdaq Global Select Market. If we conclude it is more likely than not that the fair value of a reporting unit is less than its carrying amount, a quantitative fair value test is performed. We manage our business as two reporting units and we test goodwill for impairment at the reporting unit level. We allocated goodwill to the two reporting units using a relative fair value allocation methodology that primarily relied on our estimates of revenue and future earnings for each reporting unit. Using the relative fair value allocation methodology, we have determined that approximately 76% of goodwill was to be allocated to the Performance Enzymes segment and 24% allocated to the Novel Biotherapeutics segment. As a result of the calculation, $2.4 million of the goodwill is assigned to the Performance Enzymes segment and $0.8 million is assigned to the Novel Biotherapeutics segment. We test goodwill for impairment on an annual basis on the last day of the fourth fiscal quarter and, when specific circumstances dictate, between annual tests, by first assessing qualitative factors to determine whether it is more likely than not that the fair value of a reporting unit is less than its carrying amount. During 2020 and 2019, we did not record impairment charges related to goodwill. We test for goodwill impairment is as follows: </span></div><div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Goodwill impairment testing from January 1, 2020</span></div><div style="text-indent:18pt;margin-top:9pt;margin-bottom:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> On and subsequent to January 1, 2020, we test for goodwill impairment by comparing the fair value of each reporting unit to its respective carrying value. Using the relative fair value allocation methodology for assets and liabilities used in both of our reporting units, we compare the allocated carrying amount of each reporting unit’s net assets and the assigned goodwill to its fair value. If the fair value of the reporting unit exceeds its carrying amount, goodwill of the reporting unit is considered not impaired. Any excess of the reporting unit’s carrying amount of goodwill over its fair value is recognized as an impairment.</span></div><div style="padding-left:36pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Goodwill impairment testing before January 1, 2020</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Prior to January 1, 2020, the goodwill impairment test consisted of a two-step process. The first step of the goodwill impairment test, used to identify potential impairment, compared the fair value of each reporting unit to its carrying value. Using the relative fair value allocation methodology for assets and liabilities used in both of our reporting units, we compared the allocated carrying amount of each reporting unit’s net assets and the assigned goodwill to its fair value. If the fair value of the reporting unit exceeded its carrying amount, goodwill of the reporting unit was considered not impaired, and the second step of the impairment test was not required. The second step, if required, compared the implied fair value of the reporting unit’s goodwill with the carrying amount of that goodwill. Implied fair value was the excess of the fair value of the reporting unit over the fair value of all identified or allocated assets and liabilities. Any excess of the reporting unit’s carrying amount goodwill over the respective implied fair value was recognized as an impairment.</span></div><div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Interim Goodwill Impairment Testing</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We tested goodwill for impairment in the quarter ended June 30, 2020. In late 2019, COVID-19 was reported to have surfaced and has since spread worldwide. The impact of COVID-19 has caused a decline in global and domestic macroeconomic conditions, the general deterioration of the U.S. economy and other economies worldwide, all of which may negatively impact our overall financial performance, driving a reduction in our cash flows. We believe that the impact of the COVID-19 pandemic was a triggering event that gave rise to the need to perform a goodwill impairment test. We tested for goodwill impairment by comparing the fair value of each reporting unit to its respective carrying value. We used the relative fair value allocation methodology for assets and liabilities used in both of our reporting units. We compared the allocated carrying amounts of each reporting unit’s net assets at June 30, 2020 and the assigned goodwill to its fair value at June 30, 2020. We concluded that there was no goodwill impairment at June 30, 2020.</span></div> 2 2 0.76 0.24 2400000 800000 0 <div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Segment Reporting</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We report two business segments, Performance Enzymes and Novel Biotherapeutics, which are based on our operating segments. Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the chief operating decision maker ("CODM"), or decision making group, in deciding how to allocate resources, and in assessing performance. Our CODM is our Chief Executive Officer. Our business segments are primarily based on our organizational structure and our operating results as used by our CODM in assessing performance and allocating resources for the Company. We do not allocate or evaluate assets by segment.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The Novel Biotherapeutics segment focuses on new opportunities in the pharmaceutical industry to dis</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">cover or improve novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. The Performance Enzymes segment consists of protein catalyst products and services with focus on pharmaceutical, food, molecular diagnostics, and other industrial markets.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Segment Information</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We manage our business as two business segments: Performance Enzymes and Novel Biotherapeutics, which are based on our operating segments. Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the CODM, or decision making group, in deciding how to allocate resources, and in assessing performance. Our CODM is our Chief Executive Officer. Our business segments are primarily based on our organizational structure and our operating results as used by our CODM in assessing performance and allocating resources for the Company.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We report corporate-related expenses such as legal, accounting, information technology, and other costs that are not otherwise included in our reportable business segments as "Corporate costs." All items not included in income (loss) from operations are excluded from the business segments. </span></div>We manage our assets on a total company basis, not by business segment, as the majority of our operating assets are shared or commingled. Our CODM does not review asset information by business segment in assessing performance or allocating resources, and accordingly, we do not report asset information by business segment. 2 <div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Income Taxes</span></div><div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Changes to Tax Law</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">On March 27, 2020, the Coronavirus Aid, Relief, and Economic Security Act (“CARES Act”), P.L. 116-136,was passed into law, amending portions of certain relevant US tax laws. The CARES Act includes a number of federal income tax law changes, including, but not limited to: (i) permitting net operating loss carrybacks to offset 100% of taxable income for taxable years beginning before 2021, (ii) accelerating alternative minimum tax credit refunds, (iii) temporarily increasing the allowable business interest deduction from 30% to 50% of adjusted taxable income, and (iv) providing a technical correction for depreciation related to qualified improvement property. The Company is currently evaluating if it will claim the Employee Retention Credit and apply for payroll tax deferrals under the CARES Act.</span></div> <div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Accounting Pronouncements</span></div><div style="padding-left:36pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Recently adopted accounting pronouncements</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In June 2016, the FASB issued ASU 2016-13, </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments,</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> which amends the FASB's guidance on the impairment of financial instruments. The standard adds a new impairment model, known as CECL, which replaces the probable loss model. The CECL impairment model is based on estimates and forecasts of future conditions which requires recognition of a lifetime of expected credit losses at inception on financial assets measured at amortized costs. Our financial assets measured at amortized cost are comprised of accounts receivable, contract assets, and unbilled receivables. We adopted the new standard in the first quarter of 2020 using a modified retrospective approach requiring a cumulative-effect adjustment to the opening accumulated deficit as of the date of adoption. The ASU establishes a new valuation account “allowance for credit losses” replacing the “allowance for doubtful accounts” in the consolidated balance sheet, which is used to adjust the amortized cost basis of assets in presentation of the net amount expected to be collected. The adoption required certain additional disclosures but had no other impact on our unaudited condensed consolidated financial statements.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In January 2017, the FASB issued ASU No. 2017-04, </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment.</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> The amendments eliminate Step 2 from the goodwill impairment test. The annual, or interim, goodwill impairment test is performed by comparing the fair value of a reporting unit to its carrying amount. An impairment charge should be recognized for the amount by which the carrying amount exceeds the reporting unit’s fair value; however, the loss recognized should not exceed the total amount of goodwill allocated to that reporting unit. In addition, income tax effects from any tax-deductible goodwill on the carrying amount of the reporting unit should be considered when measuring the goodwill impairment loss, if applicable. The amendments eliminate the requirements for any reporting unit with a zero or negative carrying amount to perform a qualitative assessment, and if it fails that qualitative test, to perform Step 2 of the goodwill impairment test. An entity still has the option to perform the qualitative assessment for a reporting unit to determine if the quantitative impairment test is necessary. We adopted the standard in the first quarter of 2020 using a prospective approach. The adoption required certain additional disclosures but had no impact on our unaudited condensed consolidated financial statements.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In August 2018, the FASB issued ASU 2018-13, </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Fair Value Measurement (Topic 820): Disclosure Framework—Changes to the Disclosure Requirements for Fair Value Measurement.</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> The primary focus of the standard is to improve the effectiveness of the disclosure requirements for fair value measurements. The changes affect all companies that are required to include fair value measurement disclosures. The standard requires the use of the prospective method of transition for disclosures related to changes in unrealized gains and losses, the range and weighted average of significant unobservable inputs used to develop fair value measurements categorized within Level 3 of the fair value hierarchy, and narrative description of measurement uncertainty. All other amendments in the standard are required to be adopted retrospectively. We adopted the standard in the first quarter of 2020 and the adoption had no impact on our unaudited condensed consolidated financial statements and related disclosures.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In November 2018, the FASB issued ASU 2018-18, </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Collaborative Arrangements (Topic 808): Clarifying the Interaction Between Topic 808 and Topic 606.</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> ASU 2018-18 provides guidance on how to assess whether certain transactions between collaborative arrangement participants should be accounted for within the revenue recognition standard. The standard also provides more comparability in the presentation of revenue for certain transactions between collaborative arrangement participants. The standard is to be applied retrospectively to the date of the initial application of Topic 606 which also requires recognition of the cumulative effect of applying the amendments as an adjustment to the opening balance of retained earnings of the later or the earliest annual period presented and the annual period inclusive of the initial application of Topic 606. We adopted the standard in the first quarter of 2020. The adoption will adjust certain annual disclosures but had no impact on our unaudited condensed consolidated financial statements and related disclosures.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Recently issued accounting pronouncements not yet adopted </span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">From time to time, new accounting pronouncements are issued by the FASB or other standards setting bodies that are adopted by us as of the specified effective date. Unless otherwise discussed, we believe that the impact of recently issued standards that are not yet effective will not have a material impact on our unaudited condensed consolidated financial statements upon adoption.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740):</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;"> Simplifying the Accounting for Income Taxes which is intended to simplify various aspects related to accounting for income taxes</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">. The standard is effective for fiscal years, and interim periods within those years, beginning after December 15, 2020, with early adoption permitted. The standard will be adopted upon the effective date for us beginning January 1, 2021. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In March 2020, the FASB issued ASU 2020-04, Reference Rate Reform (Topic 848):</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;"> Facilitation of the Effects of Reference Rate Reform on Financial Reporting. </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The standard provides optional expedients and exceptions for applying GAAP to contracts, hedging relationships, and other transactions in which the reference LIBOR or another reference rate are expected to be discontinued as a result of the Reference Rate Reform. The standard is effective for all entities. The standard may be adopted as of any date from the beginning of an interim period that includes or is subsequent to March 12, 2020 through December 31, 2022. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In May 2020, the Securities and Exchange Commission formally adopted amendments to financial disclosure regulations regarding the acquisition and disposition of certain business and among other things, amends the definition of a “significant subsidiary” by altering prescribed significance tests under Rule 1-02(w) of Regulation S-X, as well as under Rule 405 of the Securities Act of 1933 and Rule 12b-2 under the Securities Exchange Act of 1934. The amendments apply to reports and information filings as of January 1, 2021, with early adoption permitted. The effect of adoption will adjust certain annual disclosures but we expect no impact on our consolidated financial statements.</span></div> Revenue Recognition <div style="margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Disaggregation of Revenue</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following table provides information about disaggregated revenue from contracts with customers into the nature of the products and services and geographic regions, and includes a reconciliation of the disaggregated revenue with reportable segments. The geographic regions that are tracked are the Americas (United States, Canada and Latin America), EMEA (Europe, Middle East and Africa), and APAC (Australia, New Zealand, Southeast Asia and China).</span></div><div style="text-indent:18pt;margin-top:9pt;margin-bottom:3pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Segment information is as follows (in thousands):</span></div><div style="margin-top:12pt;margin-bottom:6pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.269%;"><tr><td style="width:1.0%;"/><td style="width:26.424%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:9.192%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.536%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.782%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.536%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.192%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.830%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.192%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.536%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.782%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.536%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.462%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Major products and service:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">       Product Revenue</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,504 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,504 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,249 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,249 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Research and development revenue</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,002 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,463 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,340 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,070 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,506 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,967 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,589 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,319 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Primary geographical markets:</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;">Americas</span></div></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,173 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,733 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,906 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,076 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,076 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;">EMEA</span></div></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,586 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,728 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,314 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,011 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,741 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;">APAC</span></div></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,747 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,747 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,502 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,502 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,506 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,967 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,589 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,319 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:27.385%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:9.111%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.111%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.111%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.388%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Major products and service:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Product revenue</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,604 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,604 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,236 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,236 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Research and development revenue</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,775 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,258 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20,033 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,440 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">13,665 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">18,379 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,258 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">29,637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20,676 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27,901 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Primary geographical markets:</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Americas</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,171 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,960 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,131 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,913 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,913 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">EMEA</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,987 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,298 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,285 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,241 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,466 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">APAC</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,221 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,221 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,522 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,522 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">18,379 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,258 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">29,637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20,676 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27,901 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div><span><br/></span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">Contract Balances</span></div><div style="text-indent:18pt;margin-top:9pt;margin-bottom:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following table presents balances of contract assets, unbilled receivables, contract costs, and contract liabilities (in thousands): </span></div><div style="text-align:center;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.397%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.646%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Contract Assets</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,027 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Unbilled receivables</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,412 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,099 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Contract Costs</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">172 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:top;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:top;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Contract Liabilities: Deferred Revenue</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,045 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,044 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div><div><span><br/></span></div><div style="text-indent:18pt;padding-left:9pt;"><span><br/></span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We had no asset impairment charges related to contract assets in the three and six months ended June 30, 2020 and 2019.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">During the six months ended June 30, 2020, decreases in contract assets were primarily due to contract assets that were subsequently invoiced as our right to consideration for goods and services became unconditional. Increases in unbilled receivables were primarily due to the timing of billings. The increase in deferred revenue were primarily due to cash advances received in excess of revenue recognized.</span></div><div style="text-indent:18pt;margin-top:9pt;"><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 three and six months ended June 30, 2020 and 2019, we recognized the following revenues (in thousands):</span></div><div style="text-align:center;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.526%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Amounts included in contract liabilities at the beginning of the period:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">     Performance obligations satisfied</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,272 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,367 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">57 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,752 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Changes in the period:</span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:13.5pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,357 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(92)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">43 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:13.5pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance obligations satisfied from new activities in the period - contract revenue</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,338 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,044 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">28,943 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">24,106 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,967 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,319 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">29,637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27,901 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div style="margin-top:9pt;"><span><br/></span></div><div style="margin-top:9pt;"><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%;">Performance Obligations</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting periods. The estimated revenue does not include contracts with original durations of one year or less, amounts of variable consideration attributable to royalties, or contract renewals that are unexercised as of June 30, 2020.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The balances in the table below are partially based on judgments involved in estimating future orders from customers subject to the exercise of material rights pursuant to respective contracts (in thousands): </span></div><div style="text-align:center;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.233%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td style="width:1.0%;"/><td style="width:13.648%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Remainder of 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2021</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2022 and Thereafter</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Product Revenue</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">567 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">385 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,883 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,835 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Research and development revenue</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,107 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">624 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">479 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,210 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,674 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,009 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,362 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,045 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> The following table provides information about disaggregated revenue from contracts with customers into the nature of the products and services and geographic regions, and includes a reconciliation of the disaggregated revenue with reportable segments. The geographic regions that are tracked are the Americas (United States, Canada and Latin America), EMEA (Europe, Middle East and Africa), and APAC (Australia, New Zealand, Southeast Asia and China).<div style="text-indent:18pt;margin-top:9pt;margin-bottom:3pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Segment information is as follows (in thousands):</span></div><div style="margin-top:12pt;margin-bottom:6pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.269%;"><tr><td style="width:1.0%;"/><td style="width:26.424%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:9.192%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.536%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.782%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.536%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.192%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.830%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.192%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.536%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.782%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.536%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.462%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Major products and service:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">       Product Revenue</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,504 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,504 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,249 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,249 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Research and development revenue</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,002 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,463 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,340 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,070 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,506 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,967 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,589 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,319 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Primary geographical markets:</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;">Americas</span></div></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,173 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,733 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,906 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,076 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,076 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;">EMEA</span></div></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,586 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,728 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,314 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,011 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,741 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;">APAC</span></div></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,747 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,747 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,502 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,502 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,506 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,967 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,589 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,319 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:27.385%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:9.111%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.111%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.111%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.388%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Major products and service:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Product revenue</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,604 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,604 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,236 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,236 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Research and development revenue</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,775 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,258 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20,033 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,440 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">13,665 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">18,379 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,258 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">29,637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20,676 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27,901 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Primary geographical markets:</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Americas</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,171 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,960 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,131 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,913 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,913 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">EMEA</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,987 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,298 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,285 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,241 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,466 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">APAC</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,221 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,221 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,522 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,522 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">18,379 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,258 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">29,637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20,676 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27,901 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 4504000 0 4504000 6249000 0 6249000 3002000 7461000 10463000 4340000 1730000 6070000 7506000 7461000 14967000 10589000 1730000 12319000 1173000 5733000 6906000 4076000 0 4076000 1586000 1728000 3314000 3011000 1730000 4741000 4747000 0 4747000 3502000 0 3502000 7506000 7461000 14967000 10589000 1730000 12319000 9604000 0 9604000 14236000 0 14236000 8775000 11258000 20033000 6440000 7225000 13665000 18379000 11258000 29637000 20676000 7225000 27901000 4171000 7960000 12131000 6913000 0 6913000 5987000 3298000 9285000 5241000 7225000 12466000 8221000 0 8221000 8522000 0 8522000 18379000 11258000 29637000 20676000 7225000 27901000 <div style="text-indent:18pt;margin-top:9pt;margin-bottom:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following table presents balances of contract assets, unbilled receivables, contract costs, and contract liabilities (in thousands): </span></div><div style="text-align:center;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.397%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.646%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Contract Assets</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,027 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Unbilled receivables</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,412 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,099 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Contract Costs</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">172 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:top;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:top;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Contract Liabilities: Deferred Revenue</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,045 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,044 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div><div style="text-indent:18pt;margin-top:9pt;"><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 three and six months ended June 30, 2020 and 2019, we recognized the following revenues (in thousands):</span></div><div style="text-align:center;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.526%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Amounts included in contract liabilities at the beginning of the period:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">     Performance obligations satisfied</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,272 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,367 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">57 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,752 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Changes in the period:</span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:13.5pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,357 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(92)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">43 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:13.5pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance obligations satisfied from new activities in the period - contract revenue</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,338 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,044 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">28,943 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">24,106 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,967 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,319 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">29,637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27,901 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 0 1027000 12412000 10099000 172000 0 5045000 2044000 0 0 0 0 4272000 1367000 57000 3752000 1357000 -92000 637000 43000 9338000 11044000 28943000 24106000 14967000 12319000 29637000 27901000 <div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting periods. The estimated revenue does not include contracts with original durations of one year or less, amounts of variable consideration attributable to royalties, or contract renewals that are unexercised as of June 30, 2020.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The balances in the table below are partially based on judgments involved in estimating future orders from customers subject to the exercise of material rights pursuant to respective contracts (in thousands): </span></div><div style="text-align:center;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.233%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td style="width:1.0%;"/><td style="width:13.648%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Remainder of 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2021</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2022 and Thereafter</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Product Revenue</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">567 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">385 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,883 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,835 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Research and development revenue</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,107 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">624 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">479 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,210 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,674 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,009 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,362 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,045 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 567000 385000 1883000 2835000 1107000 624000 479000 2210000 1674000 1009000 2362000 5045000 Net loss per Share<div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Basic net loss per share is computed by dividing the net loss by the weighted-average number of shares of common stock outstanding, less restricted stock awards ("RSAs") subject to forfeiture. Diluted net loss per share is computed by dividing net loss by the weighted-average number of shares of common stock outstanding, less RSAs subject to forfeiture, plus all additional common stock shares that would have been outstanding, assuming dilutive potential common stock shares had been issued for other dilutive securities. For periods of net loss, diluted and basic net loss per share are identical since potential common stock shares are excluded from the calculation, as their effect was anti-dilutive.</span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Anti-Dilutive Securities</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In periods of net loss, the weighted average number of shares outstanding, prior to the application of the treasury stock method, excludes potentially dilutive securities from the computation of diluted net loss per common share because including such shares would have an anti-dilutive effect. The following shares were not included in the computation of diluted net loss per share (in thousands):</span></div><div style="text-align:center;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.526%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Shares issuable under the Equity Incentive Plan</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,289</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,254</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,289</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,254</span></td></tr><tr><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> The following shares were not included in the computation of diluted net loss per share (in thousands):<table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.526%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Shares issuable under the Equity Incentive Plan</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,289</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,254</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,289</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,254</span></td></tr><tr><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table> 5289000 6254000 5289000 6254000 Collaborative Arrangements<div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">GSK Platform Technology Transfer, Collaboration and License Agreement</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In July 2014, we entered into a CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology transfer collaboration and license agreement (the "GSK CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Agreement") with GlaxoSmithKline ("GSK"). Pursuant to the terms of the agreement, we granted GSK a non-exclusive license to use the CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology to develop novel enzymes for use in the manufacture of GSK's pharmaceutical and health care products.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We received an upfront fee upon the execution of the agreement in July 2014 and milestone payments in each of the years from 2014 through April 2016. We completed the transfer of the CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">protein engineering platform technology to GSK in April 2016 and all revenues relating to the technology transfer have been recognized as of April 2016. We have the potential to receive additional cumulative contingent payments that range from $5.75 million to $38.5 million per project based on GSK’s successful application of the licensed technology. We are also eligible to receive royalties based on net sales of GSK's sales of licensed enzyme products that are currently not being recognized. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In 2019, we received a $2.0 million milestone payment on the advancement of an enzyme developed by GSK using our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">protein engineering platform technology. We recognized no research and development revenue for the three and six months ended June 30, 2020 and 2019.</span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Merck Platform Technology Transfer and License Agreement</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In August 2015, we entered into a CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> platform technology transfer collaboration and license agreement (the "Merck CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Agreement") with Merck, Sharp &amp; Dohme ("Merck") which allows Merck to use the CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">protein engineering technology platform in the field of human and animal healthcare.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We received an up-front license fee upon execution of the Merck CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> Agreement, and milestone payments in September 2015 and in September 2016, when we completed the transfer of the engineering platform technology. We recognized research and development revenues $0.2 million and $1.0 million for the three and six months ended June 30, 2020, respectively, compared to $1.0 million and $2.0 million for the three and six months ended June 30, 2019, respectively, for various research projects under our collaborative arrangement.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We have the potential to receive payments of up to a maximum of $15.0 million for each commercial active pharmaceutical ingredient ("API") that is manufactured by Merck using one or more novel enzymes developed by Merck using the CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering technology platform. The API payments, which are currently not recognized in revenue, are based on the quantity of API developed and manufactured by Merck and will be recognized as usage-based royalties. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In January 2019, we entered into an amendment to the Merck CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> Agreement to install certain CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering technology upgrades into Merck’s platform license installation and maintain those upgrades for a multi-year term. The license installation was completed in 2019 and we recognized $0.9 million in the three and six months ended June 30, 2019 as a license fee revenue accordingly under the amendment. Pursuant to the agreement, Merck has options to future technology enhancements for a specified fee. As of June 30, 2020, Merck has not exercised its option for technology enhancements. We recognized $25 thousand and $50 thousand in research and development revenues under the terms of the amendment in the three and six months ended June 30, 2020, respectively. As of June 30, 2020 and December 31, 2019, we had deferred revenue balances of $0.1 million and nil, respectively.</span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Merck Sitagliptin Catalyst Supply Agreement</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In February 2012, we entered into a five-year Sitagliptin Catalyst Supply Agreement (“Sitagliptin Catalyst Supply Agreement”) with Merck whereby Merck may obtain commercial scale enzyme for use in the manufacture of Januvia</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">, its product based on the active ingredient sitagliptin. In December 2015, Merck exercised its option under the terms of the sitagliptin Catalyst Supply Agreement to extend the agreement for an additional five years through February 2022. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Effective as of January 2016, we and Merck amended the Sitagliptin Catalyst Supply Agreement to prospectively provide for variable pricing based on the cumulative volume of sitagliptin catalyst purchased by Merck and to allow Merck to purchase a percentage of its requirements for sitagliptin catalyst from a specified third-party supplier. Merck received a distinct, functional license to manufacture a portion of its demand beginning January 1, 2018, which we recognized as research and development revenue.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We have determined that the variable pricing, which provides a discount based on the cumulative volume of sitagliptin catalyst purchased by Merck, provides Merck material rights and we are recognizing product revenues using the alternative method. Under the alternative approach, we estimate the total expected consideration and allocate it proportionately with the expected sales.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The Sitagliptin Catalyst Supply Agreement requires Merck to pay an annual fee for the rights to the sitagliptin technology each year for the term of the Sitagliptin Catalyst Supply Agreement. Amounts of annual license fees are based on contractually agreed prices and are on a declining scale over the term of the contract. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Pursuant to the terms of the Sitagliptin Catalyst Supply Agreement, Merck may purchase supply from us for a fee based on contractually stated prices. Deferred revenues were offset against contract assets where the right of offset exists within the contract. We recognized revenue of $2.0 million and $3.8 million for the three and six months ended June 30, 2020, respectively, compared to $2.5 million and $7.8 million in the three and six months ended June 30, 2019, respectively, in product revenue under this agreement. As of June 30, 2020 and December 31, 2019, we had deferred revenue balances related to the Sitagliptin Catalyst Supply Agreement of $0.3 million and nil, respectively. </span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Enzyme Supply Agreement</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In November 2016, we entered into a supply agreement whereby our customer may purchase quantities of one of our proprietary enzymes for use in its commercial manufacture of a product. Pursuant to the supply agreement, we received an upfront payment in December 2016 which was recorded as deferred revenues. Such upfront payment will be recognized over the period of the supply agreement as the customer purchases our proprietary enzyme. We additionally have determined that the volume discounts under the supply agreement provides the customer material rights and we are recognizing revenues using the alternative method. As of June 30, 2020 and December 31, 2019, we had deferred revenue balances from the supply agreement of $2.0 million. </span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Global Development, Option and License Agreement, Strategic Collaboration Agreement, and Development Agreement</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In October 2017, we entered into a Global Development, Option and License Agreement (the “Nestlé Agreement”) with Société des Produits Nestlé (formerly known as Nestec Ltd.) (“Nestlé Health Science”) and, solely for the purpose of the integration and the dispute resolution clauses of the Nestlé Agreement, Nestlé Health Science S.A., to advance CDX-6114, our enzyme biotherapeutic product candidate for the potential treatment of PKU.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We received an upfront cash payment of $14.0 million in 2017 upon the execution of the Nestlé Agreement, a $4.0 million milestone payment after dosing the first subjects in a first-in-human Phase 1a dose-escalation trial with CDX-6114, and a $1.0 million milestone payment upon achievement of a milestone relating to formulation of CDX-6114. The $4.0 million milestone payment that was triggered by the initiation of the trial was received in 2018 and the $1.0 million milestone payment that was triggered by the achievement of a formulation relating to CDX-6114 was received in February 2019. The upfront payment and the variable consideration relating to the progress payment of $4.0 million and milestone payment of $1.0 million were recognized over time as the development work was performed. Revenue was recognized using a single measure of progress that depicted our performance in transferring control of the services, which was based on the ratio of level of effort incurred to date compared to the total estimated level of effort required to complete all performance obligations under the agreement. We recognized nominal research and development revenue for the three and six months ended June 30, 2020, respectively, compared to $0.5 million and $1.7 million for the three and six months ended June 30, 2019, respectively.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In January 2019, we received notice from the FDA that it had completed its review of our investigational new drug application ("IND") for CDX-6114 and concluded that we may proceed with the proposed Phase 1b multiple ascending dose study in healthy volunteers in the United States. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive, worldwide, royalty-bearing, sub-licensable license for the global development and commercialization of CDX-6114 for the management of PKU and paid us $3.0 million which we recognized as research and development revenue in 2019. Upon exercising its option, Nestlé Health Science assumed all responsibilities for future clinical development and commercialization of CDX-6114, with the exception of the completion of an extension study, CDX-6114-004, which was substantially completed in the fourth quarter of 2019. Other potential payments from Nestlé Health Science to us under the Nestlé Agreement include (i) development and approval milestones of up to $85.0 million, (ii) sales-based milestones of up to $250.0 million in the aggregate, which aggregate amount is achievable if net sales exceed $1.0 billion in a single year, and (iii) tiered royalties, at percentages ranging from the middle single digits to low double-digits, of net sales of product.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In October 2017, we also entered into a Strategic Collaboration Agreement (the “Strategic Collaboration Agreement”) with Nestlé Health Science pursuant to which we and Nestlé Health Science are collaborating to leverage the CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering technology platform to develop novel enzymes for Nestlé Health Science’s established Consumer Care and Medical Nutrition business areas. Under the Strategic Collaboration Agreement, we received an upfront payment of $1.2 million in 2017 and an incremental payment of $0.6 million in September 2018 for additional services. The Strategic Collaboration Agreement has been extended through December 2021.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In January 2020, we entered into a development agreement with Nestlé Health Science pursuant to which we and Nestlé Health Science are collaborating to advance a lead candidate targeting a gastro-intestinal disorder discovered through our Strategic Collaboration Agreement into pre-clinical and early clinical studies. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We recognized research and development fees of $1.7 million and $3.3 million for the three and six months ended June 30, 2020, respectively, compared to $1.2 million and $2.5 million in the three and six months ended June 30, 2019, respectively. </span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Strategic Collaboration Agreement</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In April 2018, we entered into the Porton Agreement with Porton to license key elements of our biocatalyst technology for use in Porton’s global custom intermediate and API development and manufacturing business. Under the Porton Agreement, we are eligible to receive annual collaboration fees and research and development revenues. We received an initial collaboration fee of $0.5 million within 30 days of the effective date of the Porton Agreement, $1.5 million upon the first anniversary of the effective date of the agreeme</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">nt. In the second quarter of 2020, we recognized $1.0 million in research and development revenue on the second anniversary of the effective date of the agreement. We are eligible to receive $1.0 million on the third anniversary of the effective date of the agreement. We completed the technica</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">l transfer in the fourth quarter of 2018 and recognized $2.8 million in research and development revenue. We recognized revenue related to the functional license provided to Porton at a point in time when control of the license was transferred to the customer. We recognized research and development revenue related to the Porton Agreement of $1.0 million and $1.1 million in the three and six months ended June 30, 2020, respectively, and no revenue in the three and six months ended June 30, 2019. </span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Platform Technology Transfer and License Agreement</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In May 2019, we entered into a Platform Technology Transfer and License Agreement (the “Novartis CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Agreement”) with Novartis Pharma AG (“Novartis”). The Agreement allows Novartis to use our proprietary CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">protein engineering platform technology in the field of human healthcare. Under the Novartis CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Agreement, we are transferring our proprietary CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">protein engineering platform technology to Novartis over approximately 23 months, starting with the date on which we commenced the technology transfer (the “Technology Transfer Period”). As a part of this technology transfer, the Company provided to Novartis our proprietary enzymes, proprietary protein engineering protocols and methods, and proprietary software algorithms. In addition, teams of the Company and Novartis scientists participated in technology training sessions and collaborative research projects at the our laboratories in Redwood City, California and at a designated Novartis laboratory in Basel, Switzerland. Upon completion of technology transfer, Novartis will have the CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology installed at its designated laboratory.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Pursuant to the agreement, we received an upfront payment of $5.0 million shortly after the effective date of the Novartis CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Agreemen</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">t. In the second quarter of 2020, we completed the second technology milestone transfer under the agreement and became eligible to receive a milestone payment of $4.0 million, which we subsequently received in July 2020. We are eligible </span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">to receive an additional $5.0 million upon satisfactory completion of the third technology transfer milestone. In consideration for the continued disclosure and license of improvements to our technology and materials during a multi-year period that begins on the conclusion of the Technology Transfer Period, Novartis will pay us annual payments which amount to an additional $8.0 million. The Company also has the potential to receive quantity-dependent, usage payments for each API that is manufactured by Novartis using one or more enzymes that have been developed or are in development using the CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology during the period that begins on the conclusion of the Technology Transfer Period and ends on the expiration date of the last to expire licensed patent. These product-related usage payments, if any, will be paid by Novartis to us for each quarter that Novartis manufactures API using a CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">-developed enzyme. The usage payments will be based on the total volume of API produced using the CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">-developed enzyme. These usage payments can begin in the clinical stage and will extend throughout the commercial life of each API. Revenue for the combined initial license and technology transfer performance obligation, which is expected to occur over twenty-three months, is being recognized using a single measure of progress that depicts our performance in transferring control of the services, which is based on the ratio of level of effort incurred to date compared to the total estimated level of effort required to complete the performance obligation relating to the combined initial license and technology transfer. Revenue allocated to future improvements will be recognized during the Improvement Term. We recognized $0.9 million and $3.7 million in research and </span></div><div style="margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">development revenue for the three and six months ended June 30, 2020, respectively and no revenue in the three and six months ended June 30, 2019 from the Novartis CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">® </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Agreement.</span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">License Agreement</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In December 2019, we entered a license agreement with Roche Sequencing Solutions, Inc. (“Roche”) to provide Roche with our EvoT4 DNA™ ligase high-performance molecular diagnostic enzyme. The royalty bearing license grants Roche worldwide rights to include the EvoT4 DNA™ ligase in its nucleic acid sequencing products and workflows. Under the license agreement, we received an initial collaboration fee payment within 45 days of the effective date of the agreement and we are eligible to receive an additional milestone within 60 days after the completion of technology transfer. The agreement also contemplates milestone payments to the Company upon the achievement of various development and commercialization events and royalty payments from commercial sales of the enzyme. We recognized research and development fees of $0.2 million and $0.8 million for the three and six months ended June 30, 2020, respectively.</span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Strategic Collaboration and License Agreement</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In March 2020, we entered into a Strategic Collaboration and License Agreement (the “Takeda Agreement”) with Shire Human Genetic Therapies, Inc., a wholly-owned subsidiary of Takeda Pharmaceutical Co. Ltd. (“Takeda”) under which we will research and develop protein sequences for use in gene therapy products for certain diseases (each, a “Field”) in accordance with each applicable program plan (each, a “Program Plan”). </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In March 2020, we received an up-front nonrefundable cash payment of $8.5 million and we initiated activities under three Program Plans for Fabry Disease, Pompe Disease, and an unnamed blood factor deficiency respectively (the “Initial Programs”). We are primarily responsible for the research and development of protein sequences under the Program Plans (the “Protein Sequences”) and we are eligible to receive up to $22.3 million of research and development fees and pre-clinical milestone payments for the Initial Programs. Takeda has the right, but not the obligation, to develop, manufacture and commercialize gene therapy products that include nucleic acid sequences that encode the Protein Sequences (“Products”) at their expense. Takeda has the right to a certain number of additional disease indications (“Reserved Target Indications”) for a limited period in which Takeda may initiate a Program Plan for one or more Reserved Target Indications (“Additional/Option Program,” with Initial Programs, the “Programs”), provided, (a) if Takeda elects to initiate an Additional/Option Program while the parties are collaborating on three other Programs at the time of such election, or (b) if Takeda elects to initiate an Additional/Option Program using the last remaining Reserved Target Indication, then Takeda must pay us an option exercise fee to initiate such Additional/Option Program. We will own all rights to the Protein Sequences and corresponding nucleic acid sequences and related intellectual property rights and Takeda will own all rights to Products and related intellectual property rights. </span></div><div style="text-indent:18pt;margin-top:6pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We granted to Takeda an exclusive, worldwide, royalty-bearing, sublicensable license to use the Protein Sequences and their corresponding nucleic acid sequences to develop, manufacture and commercialize the applicable Products in the applicable Field. We also granted to Takeda a limited non-exclusive, worldwide, sublicensable license (a) to research the Protein Sequences within or outside the applicable Fields and (b) to research the Products outside of the applicable Fields, which such rights exclude Takeda's right to perform any Investigational New Drug-enabling activities. The licenses to research the Protein Sequences expire after a pre-determined period of time.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The term of the Takeda Agreement begins on the Effective Date and continues on a Product-by-Product and country-by-country basis, until the expiration of Takeda’s obligation to pay royalties to the Company with respect to that Product in that country. The Takeda Agreement expires in its entirety upon the expiration of Takeda’s obligation to pay royalties to the Company with respect to the Products in all countries worldwide. Subject to the terms of the Takeda Agreement, and after the first anniversary of the Effective Date with respect to the Initial Programs or after the first anniversary of confirmation of the applicable Program Plan by the parties with respect to the Additional/Option Programs, Takeda may terminate a Program upon specified prior written notice to the Company. Subject to the terms of the Takeda Agreement, Takeda may terminate the Takeda Agreement, at will, on a Product-by-Product basis upon specified prior written notice to the Company and the Takeda Agreement in its entirety upon specified prior written notice to the Company. Subject to the terms of the Takeda Agreement, Takeda may terminate the Takeda Agreement on a Product-by-Product basis for safety reasons upon specified prior written notice to the Company. Either party may terminate the Takeda Agreement for an uncured material breach by the other party, or the other party’s insolvency or bankruptcy.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We are eligible to receive certain development and commercialization milestone payments up to $100.0 million per target gene, the modulation of which would lead to the treatment of the disease indications by the applicable Product. We are also eligible to receive tiered royalties based on net sales of Products at percentages ranging from the middle-single digits to low single-digits. We recognized research and development revenue related to the Takeda Agreement of $5.7 million and $8.0 million in the three and six months ended June 30, 2020, respectively. As of June 30, 2020, we had a deferred revenue balance of $2.2 million from Takeda.</span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Master Collaboration and Research Agreement and Stock Purchase Agreement</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In June 2020, we entered into a Stock Purchase Agreement with Molecular Assemblies, Inc. ("MAI") pursuant to which we purchased 1,587,050 shares of MAI's Series A preferred stock for $1.0 million in connection with the transaction, our chief executive officer, John Nicols, also joined MAI’s board of directors.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">At the same time, we entered into a Master Collaboration and Research Agreement (the “MAI Agreement”) with MAI to engineer DNA polymerase enzymes to deliver differentiated and cost-effective solutions for the enzymatic synthesis of DNA. Under the MAI Agreement and its related statement of work (“SOW”), we will apply our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology to improve the DNA polymerase enzymes that are critical for enzymatic DNA synthesis. Based on these services, the Company is eligible to earn additional shares of MAI's Series A preferred stock. MAI will combine its advanced chemistries with our enzymes to drive the process to commercialization. Under the MAI Agreement and its associated SOW, we will engage in research and development activities to engineer DNA polymerase enzymes for the enzymatic synthesis of DNA in exchange for monthly fees in the form of shares of Series A preferred stock in MAI. We are eligible to earn such non-monetary payments over <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjA3M2VhODkwOTI5YjQ5ZGE5MjYwMzM1YjVkMDM0NTM2L3NlYzowNzNlYTg5MDkyOWI0OWRhOTI2MDMzNWI1ZDAzNDUzNl80My9mcmFnOmRmZjQ4MjdmN2IzYTRhNWM4Mjc1NmM5YTIxZjkwMDc0L3RleHRyZWdpb246ZGZmNDgyN2Y3YjNhNGE1YzgyNzU2YzlhMjFmOTAwNzRfNzE0NjgyNTcxNzg1MQ_5e82734e-2805-401d-8f9e-0ebcf3d78a5a">ten</span> to thirteen months, and any such shares would be issued thirty days in arrears after each calendar quarter-end. We are also eligible to receive amounts for bonuses, targets and milestones on achievement of timeline and project goals specified in the SOW. Payments for bonuses, targets and milestones on achievement of timeline and project goals are to be issued thirty days after the Company provides notification of completion. Under the MAI Agreement, the Company will have the right to use and sell the engineered enzymes to third parties for any purpose other than for the synthesis of native DNA. Under the MAI Agreement, we would make a $0.5 million payment to MAI upon our achievement of a milestone of $5.0 million in aggregate commercial sales to third parties of the engineered enzymes or any product incorporating or derived from the engineered enzymes for any purpose other than the synthesis of native DNA. The MAI Agreement contemplates that we and MAI will enter into a Commercialization and Enzyme Supply Agreement (the “CESA”) within six months following the completion of certain timelines specified in the SOW. In addition, we and MAI have agreed pursuant to the MAI Agreement to certain terms to be contained within the CESA in the event that the CESA becomes executed in the future. Those include: (a) that MAI would receive an exclusive license to use the DNA polymerase enzymes engineering by us under the MAI Agreement in the synthesis of native DNA and a non-exclusive license to use these enzymes for research and development on the synthesis of non-native DNA, and (b) we would become the exclusive manufacturer of these enzymes for MAI, its affiliates and licensees.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We recognized no research and development revenue in the three and six months ended June 30, 2020 from transactions with MAI.</span></div> 5750000 38500000 2000000.0 0 0 0 0 200000 1000000.0 1000000.0 2000000.0 15000000.0 900000 900000 25000 50000 100000 0 P5Y 2000000.0 3800000 2500000 7800000 300000 0 2000000.0 2000000.0 14000000.0 4000000.0 1000000.0 4000000.0 1000000.0 4000000.0 1000000.0 0 0 500000 1700000 3000000.0 85000000.0 250000000.0 1000000000.0 1200000 600000 1700000 3300000 1200000 2500000 500000 P30D 1500000 1000000.0 1000000.0 2800000 1000000.0 1100000 0 0 P23M 5000000.0 4000000.0 5000000.0 8000000.0 P23M 900000 3700000 0 0 P45D P60D 200000 800000 8500000 22300000 100000000.0 5700000 8000000.0 2200000 1587050 1000000.0 P13M P30D P30D 500000 5000000.0 P6M 0 0 Cash Equivalents and Equity Securities<div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Cash equivalents at June 30, 2020 and December 31, 2019 consisted of the following (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.233%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.648%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Adjusted Cost</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Estimated<br/>Fair Value</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Adjusted Cost</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Estimated Fair Value</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;">Money market funds</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;vertical-align:top;"> (1)</sup></div></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">58,482 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">58,482 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">71,248 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">71,248 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div><div style="padding-left:36pt;margin-top:9pt;"><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:120%;vertical-align:top;">(1) </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%;">Money market funds are classified in cash and cash equivalents on our unaudited condensed consolidated balance sheets.</span></div><div style="padding-left:18pt;"><span><br/></span></div><div style="text-indent:18pt;margin-top:9pt;margin-bottom:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">As of June 30, 2020, the total cash and cash equivalents balance of $75.6 million was comprised of money market funds of $58.5 million and cash of $17.1 million held with major financial institutions worldwide. As of December 31, 2019, the total cash and cash equivalents balance of $90.5 million was comprised of money market funds of $71.2 million and cash of $19.3 million held with major financial institutions worldwide.</span></div><div style="text-indent:18pt;margin-top:12pt;margin-bottom:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Investment in Equity Securities </span></div><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">No single investor in MAI holds 20% or more of the voting stock. Our investment represented approximately 4% of MAI's voting stock at the time of the transaction. Concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors, and we entered into the MAI Agreement pursuant to which we will provide technical services and expertise in exchange for compensation in the form of additional shares of voting preferred stock. Our investment was $1.0 million at June 30, 2020. For additional information, see Note 12,</span><span style="background-color:rgb(255,255,255, 0.0);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:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Related Party Transactions."</span></div> <div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Cash equivalents at June 30, 2020 and December 31, 2019 consisted of the following (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.233%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.648%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Adjusted Cost</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Estimated<br/>Fair Value</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Adjusted Cost</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Estimated Fair Value</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;">Money market funds</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;vertical-align:top;"> (1)</sup></div></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">58,482 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">58,482 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">71,248 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">71,248 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div><div style="padding-left:36pt;margin-top:9pt;"><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:120%;vertical-align:top;">(1) </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%;">Money market funds are classified in cash and cash equivalents on our unaudited condensed consolidated balance sheets.</span></div> 58482000 58482000 71248000 71248000 75600000 58500000 17100000 90500000 71200000 19300000 0.04 1000000.0 Fair Value Measurements<div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following tables present the financial instruments that were measured at fair value on a recurring basis at June 30, 2020 and December 31, 2019 by level within the fair value hierarchy (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.233%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.648%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 1</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 2</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 3</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Money market funds </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">58,482 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">58,482 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div><div style="margin-top:9pt;"><span><br/></span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.233%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.648%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 1</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 2</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 3</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Money market funds</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">71,248 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">71,248 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div> <div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following tables present the financial instruments that were measured at fair value on a recurring basis at June 30, 2020 and December 31, 2019 by level within the fair value hierarchy (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.233%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.648%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 1</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 2</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 3</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Money market funds </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">58,482 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">58,482 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div><div style="margin-top:9pt;"><span><br/></span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.233%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.648%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 1</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 2</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Level 3</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Money market funds</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">71,248 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">71,248 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div> 58482000 58482000 71248000 71248000 Balance Sheets Details<div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Inventories</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Inventories consisted of the following (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.982%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Raw materials</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">77 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Work-in-process</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">28 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">26 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Finished goods</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">581 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">338 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">    Inventories</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">686 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">371 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div><div><span><br/></span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Property and Equipment, net</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Property and equipment, net consisted of the following (in thousands):</span></div><div style="text-align:center;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.982%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Laboratory equipment</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">24,717 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">23,561 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Leasehold improvements</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,774 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,804 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Computer equipment and software</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,135 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,016 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Office equipment and furniture</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,115 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Construction in progress</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">648 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">691 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Property and equipment</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">40,389 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">39,533 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">       Less: accumulated depreciation and amortization</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(33,567)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(33,251)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">     Property and equipment, net</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,822 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,282 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div style="text-indent:13.5pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Goodwill</span></div><div style="text-indent:13.5pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Goodwill had a carrying value of approximately $3.2 million as of June 30, 2020 and December 31, 2019.</span></div><div style="text-indent:13.5pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Other Accrued Liabilities</span></div><div style="text-indent:13.5pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Other accrued liabilities consisted of the following (in thousands):</span></div><div style="text-align:center;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.982%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Accrued purchases </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,669 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,386 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Accrued professional and outside service fees</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,949 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,802 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Other</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">325 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">352 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">     Total</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,943 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,540 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> <div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Inventories consisted of the following (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.982%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Raw materials</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">77 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Work-in-process</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">28 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">26 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Finished goods</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">581 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">338 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">    Inventories</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">686 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">371 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div> 77000 7000 28000 26000 581000 338000 686000 371000 <div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Property and equipment, net consisted of the following (in thousands):</span></div><div style="text-align:center;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.982%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Laboratory equipment</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">24,717 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">23,561 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Leasehold improvements</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,774 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,804 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Computer equipment and software</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,135 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,016 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Office equipment and furniture</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,115 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Construction in progress</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">648 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">691 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Property and equipment</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">40,389 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">39,533 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">       Less: accumulated depreciation and amortization</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(33,567)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(33,251)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">     Property and equipment, net</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,822 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,282 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 24717000 23561000 10774000 10804000 3135000 3016000 1115000 1461000 648000 691000 40389000 39533000 33567000 33251000 6822000 6282000 3200000 3200000 <div style="text-indent:13.5pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Other accrued liabilities consisted of the following (in thousands):</span></div><div style="text-align:center;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.982%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Accrued purchases </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,669 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,386 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Accrued professional and outside service fees</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,949 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,802 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Other</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">325 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">352 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">     Total</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,943 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,540 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 3669000 4386000 2949000 1802000 325000 352000 6943000 6540000 Stock-based Compensation<div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);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="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In June 2019, our board of directors (the "Board") and stockholders approved the 2019 Incentive Award Plan (the "2019 Plan"). The 2019 Plan superseded and replaced in its entirety our 2010 Equity Incentive Plan (the “2010 Plan”) which was effective in March 2010, and no further awards will be granted under the 2010 Plan; however, the terms and conditions of the 2010 Plan will continue to govern any outstanding awards thereunder. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The 2010 Plan provided for the grant of incentive stock options, non-statutory stock options, restricted stock units ("RSUs"), restricted stock awards ("RSAs"), performance-contingent restricted stock units ("PSUs"), performance based options ("PBOs"), stock appreciation rights, and stock purchase rights to our employees, non-employee directors and consultants.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The number of shares of our common stock available for issuance under the 2019 Plan is equal to the sum of (i) 7,897,144 shares, and (ii) any shares subject to awards granted under the 2010 Plan that were outstanding as of April 22, 2019 and thereafter terminate, expire, lapse or are forfeited; provided that no more than 14,000,000 shares may be issued upon the exercise of incentive stock options (“ISOs”). In June 2019, 8.1 million shares authorized for issuance under the 2019 Plan were registered under the Securities Act of 1933, as amended (the “Securities Act”).</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The 2019 Plan provides for the grant of stock options, including incentive stock options and non-qualified stock options, stock appreciation rights, restricted stock, restricted stock units, other stock or cash based awards and dividend equivalents to eligible employees and consultants of the Company or any parent or subsidiary, as well as members of the Board.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);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="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The option exercise price for incentive stock options must be at least 100% of the fair value of our common stock on the date of grant and the option exercise price for non-statutory stock options is 85% of the fair value of our common stock on the date of grant, as determined by the Board. If, at the time of a grant, the optionee directly or by attribution owns stock possessing more than 10% of the total combined voting power of all of our outstanding capital stock, the exercise price for these options must be at least 110% of the fair value of the underlying common stock. Stock options granted to employees generally have a maximum term of 10 years and vest over four years from the date of grant, of which 25% vest at the end of one year, and 75% vest monthly over the remaining three years. We may grant options with different vesting terms from time to time. Unless an employee's termination of service is due to disability or death, upon termination of service, any unexercised vested options will be forfeited at the end of three months or the expiration of the option, whichever is earlier.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Restricted Stock Units (RSUs)</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We also grant employees RSUs, which generally vest over either a three year period with one-third of the shares subject to the RSUs vesting on each yearly anniversary of the vesting commencement date or over a four year period with 25% of the shares subject to the RSU vesting on each yearly anniversary of the vesting commencement date, in each case contingent upon such employee’s continued service on such vesting date. RSUs are generally subject to forfeiture if employment terminates prior to the release of vesting restrictions. We may grant RSUs with different vesting terms from time to time.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Performance-contingent Restricted Stock Units (PSUs) and Performance Based Options (PBOs)</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We also grant our executives and our non-executive employees PSUs, and we grant our executives PBOs. The PSUs and PBOs vest based upon both the successful achievement of certain corporate operating milestones in specified timelines and continued employment through the applicable vesting date. When the performance goals are deemed to be probable of achievement for these types of awards, recognition of stock-based compensation expense commences. Once the number of shares eligible to vest is determined, those shares vest in two equal installments with 50% vesting upon achievement and the remaining 50% vesting on the first anniversary of achievement, in each case, subject to the recipient’s continued service through the applicable vesting date. If the performance goals are achieved at the threshold level, the number of shares eligible to vest in respect of the PSUs and PBOs would be equal to half the number of PSUs granted and one-quarter the number of shares underlying the PBOs granted. If the performance goals are achieved at the target level, the number of shares eligible to vest in respect of the PSUs and PBOs would be equal to the number of PSUs granted and half of the shares underlying the PBOs granted. If the performance goals are achieved at the superior level, the number of shares eligible to vest in respect of the PSUs would be equal to two times the number of PSUs granted and equal to the number of PBOs granted. The number of shares issuable upon achievement of the performance goals at the levels between the threshold and target levels for the PSUs and PBOs or between the target level and superior levels for the PSUs would be determined using linear interpolation. Achievement below the threshold level would result in no shares being eligible to vest in respect of the PSUs and PBOs. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In the first quarter of 2020, we awarded PSUs ("2020 PSUs") and PBOs ("2020 PBOs"), each of which commence vesting based upon the achievement of various weighted performance goals, including sustained revenue and performance enzyme growth, strategic advancements of biotherapeutics pipeline, safety and technology development. As of June 30, 2020, we estimated that the 2020 PSUs and 2020 PBOs performance goals would be achieved at 100% of the target level, and recognized expenses accordingly. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In 2019, we awarded PSUs ("2019 PSUs") and PBOs ("2019 PBOs"), each of which commenced vesting based upon the achievement of various weighted performance goals, including sustained revenue and performance enzyme growth, strategic advancement of biotherapeutics, cash balance and strategic plan development. In the first quarter of 2020, we determined that the 2019 PSUs and 2019 PBOs performance goals had been achieved at 106% of the target level, and recognized expenses accordingly. Accordingly, 50% of the shares underlying the 2019 PSUs and PBOs vested in the first quarter of 2020 and 50% of the shares underlying the 2019 PSUs and PBOs will vest in the first quarter of 2021, in each case subject to the recipient’s continued service on each vesting date.</span></div><div style="text-indent:18pt;margin-top:9pt;margin-bottom:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In 2018, we awarded PSUs ("2018 PSUs") and PBOs ("2018 PBOs"), each of which commenced vesting based upon the achievement of various weighted performance goals, including core business revenue growth, cash balance, new licensing collaborations, new research and development service revenue arrangements, technology advancement and novel therapeutic enzymes advancement. In the first quarter of 2019, we determined that the 2018 PSUs and 2018 PBOs performance goals had been achieved at 118% of the target level, and recognized expenses accordingly. Accordingly, 50% of the shares underlying the 2018 PSUs and PBOs vested in the first quarter of 2019 and 50% of the shares underlying the 2018 PSUs and PBOs vested in the first quarter of 2020, in each case subject to the recipient’s continued service on each vesting date.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Stock-Based Compensation Expense </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Stock-based compensation expense is included in the unaudited condensed consolidated statements of operations as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.526%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Research and development </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">471 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">403 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">894 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">791 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Selling, general and administrative</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,468 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,585 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,214 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,260 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">   Total</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,939 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,988 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,108 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,051 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations for the three and six months ended June 30, 2020 and 2019 (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.233%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.823%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Stock options</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">575 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">581 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,116 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,135 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">RSUs and RSAs</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">610 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">386 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,210 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">847 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">PSUs</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">296 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">316 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">627 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">707 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">PBOs</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">458 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">705 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,155 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,362 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">   Total</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,939 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,988 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,108 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,051 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div><div style="text-indent:18pt;margin-top:9pt;"><span><br/></span></div><div style="margin-top:9pt;"><span><br/></span></div><div style="text-indent:27pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%;">In June 2020, we granted an option to purchase 60,000 shares of common stock to a non-employee as compensation for services. The estimated fair value of the grant was valued at $0.3 million using the Black-Scholes-Merton option pricing model with the following assumptions used to estimate the fair value of non-employee stock options: (i) volatility rate at 51.9%, (ii) risk-free interest rate of 0.4% and (iii) no expected dividend yield. The option vests over 2 years from the date of grant with 50% vesting after one year and the remaining 50% vesting monthly in the second year. We recognized stock-based compensation expense related to the non-employee of $4 thousand for the three and six months ended June 30, 2020.</span></div><div style="text-indent:27pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">As of June 30, 2020, unrecognized stock-based compensation expense, net of expected forfeitures, was $4.8 million related to unvested employee stock options, $0.2 million related to unvested non-employee stock options, $2.7 million related to unvested RSUs and RSAs, $1.1 million related to unvested PSUs, and $1.7 million related to unvested PBOs based on current estimates of the level of achievement. Stock-based compensation expense for these awards will be recognized through the year of 2024.</span></div> 7897144 14000000 8100000 1 0.85 0.10 1.10 P10Y P4Y 0.25 0.75 P3Y P4Y 0.25 2 0.50 0.50 0 1 1.06 0.50 0.50 1.18 0.50 0.50 <div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Stock-based compensation expense is included in the unaudited condensed consolidated statements of operations as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.526%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Research and development </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">471 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">403 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">894 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">791 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Selling, general and administrative</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,468 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,585 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,214 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,260 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">   Total</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,939 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,988 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,108 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,051 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div> 471000 403000 894000 791000 1468000 1585000 3214000 3260000 1939000 1988000 4108000 4051000 <div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations for the three and six months ended June 30, 2020 and 2019 (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.233%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.823%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Stock options</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">575 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">581 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,116 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,135 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">RSUs and RSAs</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">610 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">386 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,210 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">847 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">PSUs</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">296 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">316 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">627 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">707 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">PBOs</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">458 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">705 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,155 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,362 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">   Total</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,939 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,988 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,108 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,051 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;border-bottom:3pt double #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div> 575000 581000 1116000 1135000 610000 386000 1210000 847000 296000 316000 627000 707000 458000 705000 1155000 1362000 1939000 1988000 4108000 4051000 60000 300000 0.519 0.004 0 P2Y 0.50 0.50 4000 4000 4800000 200000 2700000 1100000 1700000 Capital Stock<div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Exercise of Options</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">For the six months ended June 30, 2020 and June 30, 2019, we issued 32,749 and 529,187 shares, respectively, upon option exercises at a weighted-average exercise price of $6.03 and $5.37 per share, respectively, with net cash proceeds of $0.2 million and $2.8 million, respectively. </span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Private Offering</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In June 2019, we entered into a Securities Purchase Agreement with an affiliate of Casdin pursuant to which we issued and sold to Casdin 3,048,780 shares of our common stock at a purchase price of $16.40 per share. After deducting legal fees of $74 thousand from the Private Offering, our net proceeds were $49.9 million.</span></div><div style="text-indent:18pt;margin-top:9pt;margin-bottom:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The Private Offering was exempt from registration pursuant to the exemption for transactions by an issuer not involving any public offering under Section 4(a)(2) the Securities Act, and Regulation D under the Securities Act.</span></div> 32749 529187 6.03 5.37 200000 2800000 3048780 16.40 74000 49900000 Commitments and Contingencies<div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Operating Leases</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Our headquarters are located in Redwood City, California, where we occupy approximately 77,300 square feet of office and laboratory space in four buildings within the same business park of Metropolitan Life Insurance Company ("MetLife"). Our lease (“Lease”) with MetLife includes approximately 28,200 square feet of space located at 200 and 220 Penobscot Drive, Redwood City, California (the “Penobscot Space”), approximately 37,900 square feet of space located at 400 Penobscot Drive, Redwood City, California (the “Building 2 Space”), and approximately 11,200 square feet of space located at 501 Chesapeake Drive, Redwood City, California (the “501 Chesapeake Space”). </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Until January 31, 2020, we also leased approximately 29,900 square feet of space located at 101 Saginaw Drive, Redwood City, California (the “Saginaw Space”). During the period January 1, 2020 through January 31, 2020, we subleased approximately 26,500 square feet of the Saginaw Space to Minerva Surgical, Inc. The lease and sublease for the Saginaw Space both expired at the end of January 2020. During the period from February 1, 2020 through April 30, 2020, we subleased approximately 3,400 square feet of the Saginaw Space from Minerva Surgical, Inc. The sublease expired at the end of April 2020.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We entered into the initial lease with MetLife for a portion of this space in 2004 and the lease has been amended multiple times since then to adjust space and terms of the lease ("Lease"). In February 2019, we entered into an Eighth Amendment to the Lease ( the “Eighth Amendment”) with MetLife with respect to the Penobscot Space, the Building 2 Space and the 501 Chesapeake Space to extend the term of the Lease for additional periods. Pursuant to the Eighth Amendment, the term of the lease of the Penobscot Space and the Building 2 Space has been extended through May 2027. The lease term for the 501 Chesapeake Space has been extended to May 2029. We have two consecutive options to extend the term of the lease for the Penobscot Space, the Building 2 Space and the 501 Chesapeake Space for an additional period of five years per option.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We are required to restore certain areas of the Redwood City facilities that we are renting to their original form. We are expensing the asset retirement obligation over the terms of the respective leases. We review the estimated obligation each reporting period and make adjustments if our estimates change. We recorded asset retirement obligations of $0.2 million as of June 30, 2020 and December 31, 2019, which are included in other liabilities on the unaudited condensed consolidated balance sheets. Accretion expense related to our asset retirement obligations was nominal.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Pursuant to the terms of the Lease, we exercised our right to deliver a letter of credit in lieu of a security deposit. The letter of credit is collateralized by deposit balances held by the bank in the amount of $1.1 million as of June 30, 2020 and December 31, 2019, and are recorded as non-current restricted cash on the unaudited condensed consolidated balance sheets.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Finance Leases</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In December 2016, we entered into a three-year financing lease agreement with a third party supplier for the purchase of laboratory equipment that was partially financed through a finance lease of approximately $0.4 million. The lease became effective upon delivery of the equipment in February 2017, and term of the three-year lease was from February 2017 and expired in February 2020. This financing agreement was accounted for as a finance lease due to bargain purchase options at the end of the lease. In April 2017, we entered into a three-year financing lease agreement with a third-party supplier for the purchase of information technology equipment for approximately $0.3 million. The effective term of the three-year lease was from May 2017 and expired in April 2020.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Lease Costs and other information</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Lease related costs were as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:32.941%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.648%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Finance lease costs: </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:11.25pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Amortization of right-of-use assets</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">45 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">54 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">99 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">109 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:11.25pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Interest on lease obligations</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:30pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Finance lease costs</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">46 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">57 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">100 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">115 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Operating lease cost</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,032 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,100 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,100 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,278 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;">Short-term lease cost </span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;vertical-align:top;">(1)</sup></div></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">16 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">47 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Sublease income</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(254)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(55)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(465)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total lease cost</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,094 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">903 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,192 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,928 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div style="text-indent:18pt;margin-top:9pt;"><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">(1)</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> Short-term lease costs on leases with terms of over one month and less than one year.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Other information related to non-cancellable finance leases and operating leases under non-cancellable subleases as of June 30, 2020 was as follows:</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:81.771%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Operating Leases</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Weighted-average remaining lease term (in years)</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7.2 years</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Weighted-average discount rate</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6.6 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td></tr></table></div><div style="text-indent:18pt;margin-top:9pt;"><span><br/></span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Cash paid for amounts included in the measurement of lease obligations was as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.543%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.646%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Operating cash flows from operating leases</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">774 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,633 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Operating cash flows from finance leases</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Financing cash flows from finance leases</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">60 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">119 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div><div style="text-indent:18pt;"><span><br/></span></div><div style="text-indent:18pt;"><span><br/></span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">As of June 30, 2020, our maturity analysis of annual undiscounted cash flows of the non-cancellable finance and operating leases are as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:81.771%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Years ending December 31,</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Operating Leases</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;border-top:1pt solid #000000;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020 (remaining 6 months)</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,042 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2021</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,197 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2022</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,285 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2023</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,589 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2024</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,726 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2025 and thereafter</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">13,494 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total minimum lease payments</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">33,333 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Less: imputed interest</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(7,186)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Lease Obligations</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">26,147 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:3pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Other Commitments</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We enter into supply and service arrangements in the normal course of business. Supply arrangements are primarily for fixed-price manufacture and supply. Service agreements are primarily for the development of manufacturing processes and certain studies. Commitments under service agreements are subject to cancellation at our discretion which may require payment of certain cancellation fees. The timing of completion of service arrangements is subject to variability in estimates of the time required to complete the work.</span></div><div style="text-indent:18pt;text-align:justify;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following table provides quantitative data regarding our other commitments. Future minimum payments reflect amounts that we expect to pay including potential obligations under services agreements subject to risk of cancellation by us (in thousands):</span></div><div style="text-align:justify;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.397%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.646%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Other Commitment Agreement Type</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Agreement Date</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Future Minimum Payment</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Manufacture and supply agreement with expected future payment date of December 2022</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">April 2016</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">704 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Development and manufacturing services agreements</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">September 2019</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,785 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Strategic Collaboration and License Agreement</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">March 2020</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">364 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total other commitments</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,853 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:6pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div style="text-indent:18pt;margin-top:12pt;"><span><br/></span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Credit Facility</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In June 30, 2017, we entered into a credit facility (the “Credit Facility”) consisting of term loans (“Term Debt”) up to $10.0 million, and advances (“Advances”) under a revolving line of credit ("Revolving Line of Credit") up to $5.0 million with an accounts receivable borrowing base of 80% of eligible accounts receivable. At June 30, 2020 and December 31, 2019, we have not drawn from the Credit Facility. We may draw on the Revolving Line of Credit at any time prior to the September 30, 2020 maturity date. On October 1, 2023, loans drawn under the Term Debt mature and the Revolving Line of Credit terminates. Loans made under the Term Debt bears interest through maturity at a variable rate based on the LIBOR plus 3.60%. Advances under the Revolving Line of Credit bear interest at a variable annual rate equal to the greater of (i) 1.00% above the prime rate and (ii) 5.00%. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Our obligations under the Credit Facility are secured by a lien on substantially all of our personal property other than our intellectual property. The Credit Facility includes a number of customary covenants and restrictive financial covenants including meeting minimum product revenue levels and maintaining certain minimum cash levels with the lender. The Credit Facility's financial covenants restrict the ability of the Company to transfer collateral, incur additional indebtedness, engage in mergers or acquisitions, pay dividends or make other distributions, make investments, create liens, sell assets, or sell certain assets held at foreign subsidiaries. A failure to comply with these covenants could permit the lender to exercise remedies against us and the collateral securing the Credit Facility, including foreclosure of our properties securing the Credit Facilities and our cash. At June 30, 2020, we were in compliance with the covenants for the Credit Facility.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The Credit Facility allows for interest-only payments on the Term Debt through November 1, 2021. Monthly payments of principal and interest on the Term Debt are required following the applicable amortization date. We may elect to prepay in full the Term Debt and Advances under the Revolving Line of Credit at any time. </span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Legal Proceedings</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We are not currently a party to any material pending litigation or other material legal proceedings.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);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="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We are required to recognize a liability for the fair value of any obligations we assume upon the issuance of a guarantee. We have certain agreements with licensors, licensees and collaborators that contain indemnification provisions. In such provisions, we typically agree to indemnify the licensor, licensee and collaborator against certain types of third party claims. The maximum amount of the indemnifications is not limited. We accrue for known indemnification issues when a loss is probable and can be reasonably estimated. There were no accruals for expenses related to indemnification issues for any periods presented.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Impact of COVID-19</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We are subject to risks and uncertainties as a result of the current COVID-19 pandemic. The COVID-19 pandemic has presented a substantial public health and economic challenge around the world and is affecting our employees, communities and business operations, as well as the U.S. economy and other economies worldwide. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition will depend on future developments that are highly uncertain and cannot be accurately predicted, including the duration and severity of the pandemic and the extent and severity of the impact on our customers, new information that may emerge concerning COVID-19, the actions taken to contain it or treat its impact and the economic impact on local, regional, national and international markets.</span></div><div style="text-indent:18pt;margin-top:6pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">To date, we and our collaboration partners have been able to continue to supply our enzymes to our customers worldwide. However, we are dependent on our manufacturing and logistics partners and consequently, disruptions in operations of our partners and customers may affect our ability to supply enzymes to our customers. Furthermore, our ability to provide future research and development ("R&amp;D") services will continue to be impacted as a result of governmental orders and any disruptions in operations of our customers with whom we collaborate. We are continuing to assess the potential impact of the COVID-19 pandemic on our business and operations, including our product sales, R&amp;D service revenue, expenses and manufacturing. However, we are unable to fully determine and quantify the extent to which this pandemic affected our total revenues due to complex accounting judgments.</span></div><div><span><br/></span></div><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In the U.S., the impact of COVID-19, including governmental orders ("Orders") governing the operation of businesses during the pandemic, caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Research and development operations for all other projects were temporarily suspended from mid-March 2020 through the end of April in accordance with these Orders. In May 2020, we initiated limited operations and gradually ramped up our R&amp;D operations so that we are currently utilizing the majority of our normal R&amp;D capacity. Additionally, we have resumed small scale manufacturing at our Redwood City pilot plant in May 2020. </span></div><div style="text-indent:22.5pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Our future results of operations and liquidity could be adversely impacted by delays in payments of outstanding receivable amounts beyond normal payment terms, supply chain disruptions and uncertain demand, and the impact of any initiatives or programs that we may undertake to address financial and operations challenges faced by our customers. As of the date of issuance of these condensed consolidated financial statements, the extent to which the COVID-19 pandemic may materially impact our financial condition, liquidity, or results of operations is uncertain.</span></div> 77300 4 28200 37900 11200 29900 26500 3400 P5Y 200000 200000 0 0 1100000 1100000 400000 P3Y P3Y 300000 P3Y <div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Lease related costs were as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:32.941%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.648%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Finance lease costs: </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:11.25pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Amortization of right-of-use assets</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">45 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">54 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">99 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">109 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:11.25pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Interest on lease obligations</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:30pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Finance lease costs</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">46 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">57 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">100 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">115 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Operating lease cost</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,032 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,100 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,100 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,278 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;">Short-term lease cost </span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;vertical-align:top;">(1)</sup></div></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">16 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">47 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Sublease income</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(254)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(55)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(465)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total lease cost</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,094 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">903 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,192 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,928 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div style="text-indent:18pt;margin-top:9pt;"><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">(1)</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> Short-term lease costs on leases with terms of over one month and less than one year.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Other information related to non-cancellable finance leases and operating leases under non-cancellable subleases as of June 30, 2020 was as follows:</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:81.771%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Operating Leases</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Weighted-average remaining lease term (in years)</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7.2 years</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Weighted-average discount rate</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6.6 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td></tr></table></div><div style="text-indent:18pt;margin-top:9pt;"><span><br/></span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Cash paid for amounts included in the measurement of lease obligations was as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.543%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.646%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Operating cash flows from operating leases</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">774 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,633 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Operating cash flows from finance leases</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Financing cash flows from finance leases</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">60 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">119 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr></table></div> 45000 54000 99000 109000 1000 3000 1000 6000 46000 57000 100000 115000 1032000 1100000 2100000 2278000 16000 0 47000 0 0 254000 55000 465000 1094000 903000 2192000 1928000 P7Y2M12D 0.066 774000 1633000 0 6000 60000 119000 <div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">As of June 30, 2020, our maturity analysis of annual undiscounted cash flows of the non-cancellable finance and operating leases are as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:81.771%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Years ending December 31,</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Operating Leases</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;border-top:1pt solid #000000;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020 (remaining 6 months)</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,042 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2021</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,197 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2022</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,285 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2023</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,589 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2024</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,726 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2025 and thereafter</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">13,494 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total minimum lease payments</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">33,333 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Less: imputed interest</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(7,186)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Lease Obligations</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">26,147 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:3pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> <div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">As of June 30, 2020, our maturity analysis of annual undiscounted cash flows of the non-cancellable finance and operating leases are as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:81.771%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Years ending December 31,</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Operating Leases</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;border-top:1pt solid #000000;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020 (remaining 6 months)</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,042 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2021</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,197 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2022</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,285 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2023</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,589 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2024</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,726 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2025 and thereafter</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">13,494 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total minimum lease payments</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">33,333 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Less: imputed interest</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(7,186)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Lease Obligations</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">26,147 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:3pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 2042000 4197000 4285000 4589000 4726000 13494000 33333000 7186000 26147000 <div style="text-indent:18pt;text-align:justify;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following table provides quantitative data regarding our other commitments. Future minimum payments reflect amounts that we expect to pay including potential obligations under services agreements subject to risk of cancellation by us (in thousands):</span></div><div style="text-align:justify;margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.397%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.646%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Other Commitment Agreement Type</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Agreement Date</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Future Minimum Payment</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Manufacture and supply agreement with expected future payment date of December 2022</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">April 2016</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">704 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Development and manufacturing services agreements</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">September 2019</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,785 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Strategic Collaboration and License Agreement</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">March 2020</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">364 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total other commitments</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,853 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:6pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 704000 3785000 364000 4853000 10000000.0 5000000.0 0.80 0.0360 0.0100 0.0500 0 Related Party<div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">AstraZeneca PLC</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Pam P. Cheng, a member of our board of directors for a three-year term expiring at our Annual Shareholder Meeting in June 2020, joined AstraZeneca PLC as Executive Vice President, Operations and Information Technology in June 2015. We sell biocatalyst products to AstraZeneca PLC and its controlled purchasing agents and contract manufacturers.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We recognized $20 thousand and $0.1 million in revenue in the three and six months ended June 30, 2020, respectively, compared to $0.4 million and $0.4 million in the three and six months ended June 30, 2019, respectively, from transactions with AstraZeneca PLC and its controlled purchasing agents and contract manufacturers. At June 30, 2020 and December 31, 2019, we had nominal and $0.3 million, respectively, of receivables from AstraZeneca PLC and its controlled purchasing agents and contract manufacturers, respectively.</span></div><div style="text-indent:18pt;"><span><br/></span></div><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Molecular Assemblies, Inc.</span></div><div style="text-indent:18pt;"><span><br/></span></div><div style="text-indent:18pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">In June 2020, we entered into a Stock Purchase Agreement with Molecular Assemblies, Inc (“MAI”) pursuant to which we purchased 1,587,050 shares of Series A preferred stock for $1.0 million in MAI and, concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">At the same time, we entered into a Master Collaboration and Research Agreement (the “MAI Agreement”) with MAI to engineer DNA polymerase enzymes to deliver differentiated and cost-effective solutions for the enzymatic synthesis of DNA. Under the MAI Agreement and its related statement of work (“SOW”), we will apply our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology to improve the DNA polymerase enzymes that are critical for enzymatic DNA synthesis. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Based on these services, we are eligible to earn additional Series A preferred stock of MAI. MAI will combine its advanced chemistries with our enzymes to drive the process to commercialization. Under the MAI Agreement and its associated SOW, we will engage in research and development activities to engineer DNA polymerase enzymes for the enzymatic synthesis of DNA and will receive monthly fees in the form of shares of Series A preferred stock in MAI. Such non-monetary payments will be earned over <span style="-sec-ix-hidden:id3VybDovL2RvY3MudjEvZG9jOjA3M2VhODkwOTI5YjQ5ZGE5MjYwMzM1YjVkMDM0NTM2L3NlYzowNzNlYTg5MDkyOWI0OWRhOTI2MDMzNWI1ZDAzNDUzNl82Ny9mcmFnOjQ3YzMyZDkxMmExNzRmNjU5MWMyNmUyN2IyMGFiZmMxL3RleHRyZWdpb246NDdjMzJkOTEyYTE3NGY2NTkxYzI2ZTI3YjIwYWJmYzFfNzE0NjgyNTYyMDU5MQ_c30d3f88-2791-487f-8dfc-d924555ad44f">ten</span> to thirteen months and issued thirty days in arrears after each calendar quarter-end. We are also eligible to receive amounts for bonuses, targets and milestones on achievement of timeline and project goals specified in the SOW. Payments for bonuses, targets and milestones on achievement of timeline and project goals are to be issued thirty days after the Company provides notification of completion. Under the MAI Agreement, we will have the right to use and sell the engineered enzymes to third parties for any purpose other than for the synthesis of native DNA. Under the MAI Agreement, we would make a $0.5 million payment to MAI on meeting a milestone of $5.0 million in aggregate commercial sales by the Company to third parties of the engineered enzymes or any product incorporating or derived from the engineered enzymes for any purpose other than the synthesis of native DNA. The MAI Agreement contemplates that we and MAI will enter into a Commercialization and Enzyme Supply Agreement (the “CESA”) within six months following the completion of certain timelines specified in the SOW. In addition, we and MAI have agreed pursuant to the MAI Agreement to certain terms to be contained within the CESA in the event that the CESA becomes executed in the future. Those include: (a) that MAI would receive an exclusive license to use the DNA polymerase enzymes engineering by us under the MAI Agreement in the synthesis of native DNA and a non-exclusive license to use these enzymes for research and development on the synthesis of non-native DNA, and (b) that we would become the exclusive manufacturer of these enzymes for MAI, its affiliates and licensees.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We recognized no research and development revenue in the three and six months ended June 30, 2020 from transactions with MAI.</span></div> P3Y 20000 100000 400000 400000 0 300000 1587050 1000000.0 P13M P30D P30D 500000 5000000.0 P6M 0 0 Segment, Geographical and Other Revenue Information<div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Segment Information</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We manage our business as two business segments: Performance Enzymes and Novel Biotherapeutics, which are based on our operating segments. Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the CODM, or decision making group, in deciding how to allocate resources, and in assessing performance. Our CODM is our Chief Executive Officer. Our business segments are primarily based on our organizational structure and our operating results as used by our CODM in assessing performance and allocating resources for the Company.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We report corporate-related expenses such as legal, accounting, information technology, and other costs that are not otherwise included in our reportable business segments as "Corporate costs." All items not included in income (loss) from operations are excluded from the business segments. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We manage our assets on a total company basis, not by business segment, as the majority of our operating assets are shared or commingled. Our CODM does not review asset information by business segment in assessing performance or allocating resources, and accordingly, we do not report asset information by business segment. </span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Performance Enzymes</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We initially commercialized our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering technology platform and products in the pharmaceuticals market, and to date this continues to be our largest market served. Our customers, which include many large global pharmaceutical companies, use our technology, products and services in their manufacturing processes and process development. We have also used the technology to develop customized enzymes for use in other industrial markets. These markets consist of several large industrial verticals, including food and food ingredients, animal feed, flavors, fragrances, and agricultural chemicals. We also use our technology to develop enzymes for customers using NGS and PCR/qPCR for in vitro molecular diagnostic and molecular biology research applications.</span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Novel Biotherapeutics</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We are also targeting new opportunities in the pharmaceutical industry to discover, improve, and/or develop biotherapeutic drug candidates. We believe that our CodeEvolver</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;vertical-align:top;">®</sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;"> protein engineering platform technology can be used to discover novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. Similarly, we believe that we can deploy our platform technology to improve specific characteristics of a customer’s pre-existing biotherapeutic drug candidate, such as its activity, stability or immunogenicity. Most notable is our lead program for the potential treatment of PKU in humans. PKU is an inherited metabolic disorder in which the enzyme that converts the essential amino acid phenylalanine into tyrosine is deficient. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">We have also developed a pipeline of other biotherapeutic drug candidates, which are in preclinical development, and in which we expect to continue to make additional investments with the aim of advancing additional product candidates targeting other therapeutic areas. In March 2020 we entered into the Takeda Agreement with Takeda under which we will research and develop protein sequences for use in gene therapy products for certain diseases.</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Factors considered in determining the two reportable segments of the Company include the nature of business activities, the management structure directly accountable to our CODM for operating and administrative activities, availability of discrete financial information and information presented to the Board of Directors. Our CODM regularly reviews our segments and the approach provided by management for performance evaluation and resource allocation. </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Operating expenses that directly support the segment activity are allocated based on segment headcount, revenue contribution or activity of the business units within the segments, based on the corporate activity type provided to the segment. The expense allocation excludes certain corporate costs that are separately managed from the segments. This provides the CODM with more meaningful segment profitability reporting to support operating decisions and allocate resources.</span></div><div style="text-indent:18pt;margin-top:9pt;margin-bottom:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following tables provide financial information by our reportable business segments along with a reconciliation to consolidated loss before income taxes (in thousands):</span></div><div style="margin-top:6pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%;"><tr><td style="width:1.0%;"/><td style="width:23.110%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.747%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.747%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.747%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.747%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.747%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.751%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">  Product revenue</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,504 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,504 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,249 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,249 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">  Research and development revenue</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,002 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,463 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,340 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,070 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,506 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,967 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,589 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,319 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Costs and operating expenses:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">  Cost of product revenue</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,699 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,699 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,772 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,772 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">  Research and development</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(1)</sup></div></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,997 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,490 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,487 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,134 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,856 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,990 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">  Selling, general and administrative</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(1)</sup></div></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,375 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">621 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,996 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,362 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">561 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,923 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total segment costs and operating expenses</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,071 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,111 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">15,182 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,268 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,417 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">13,685 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Income (loss) from operations</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1,565)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,350 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(215)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">321 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1,687)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1,366)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">Corporate costs </span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(2)</sup></div></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(5,316)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(4,698)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Depreciation and amortization</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(506)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(427)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Loss before income taxes</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(6,037)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(6,491)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="39" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="39" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(2) Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses.</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div><div style="text-indent:18pt;padding-left:9pt;margin-top:9pt;"><span><br/></span></div><div style="margin-top:9pt;margin-bottom:12pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:24.023%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.706%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Product revenue</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,604 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,604 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,236 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,236 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Research and development revenue</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,775 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,258 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20,033 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,440 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">13,665 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">18,379 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,258 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">29,637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20,676 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27,901 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Costs and operating expenses:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Cost of product revenue</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,240 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,240 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,163 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,163 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><div style="padding-left:6.75pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">Research and development</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(1)</sup></div></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,693 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,415 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">21,108 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,576 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,172 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">15,748 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div style="padding-left:6.75pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">Selling, general and administrative</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(1)</sup></div></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,720 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,213 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,933 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,463 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,078 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,541 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total segment costs and operating expenses</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">19,653 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,628 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">31,281 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">21,202 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,250 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">28,452 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Loss from operations</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1,274)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(370)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1,644)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(526)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(25)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(551)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">Corporate costs </span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(2)</sup></div></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(11,042)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(10,271)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Depreciation and amortization</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(998)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(802)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Loss before income taxes</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(13,684)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(11,624)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="39" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="39" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(2) Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses. </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div><div style="text-indent:18pt;padding-left:9pt;margin-top:6pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following tables provides stock-based compensation expense included in loss from operations (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:12.473%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.356%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.380%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.941%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.941%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.823%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.502%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.380%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.941%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.953%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="45" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-bottom:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Corporate cost</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Corporate cost</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Stock-based compensation</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">741 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">252 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">946 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,939 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">601 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">197 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,190 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,988 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="45" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-bottom:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Corporate cost</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Corporate cost</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Stock-based compensation</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,496 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">494 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,118 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,108 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,237 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">338 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,476 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,051 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div style="margin-top:12pt;"><span><br/></span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Significant Customers</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Customers that each accounted for 10% or more of our total revenues were as follows:</span></div><div style="margin-top:12pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.526%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-bottom:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Percentage of Total Revenues for the</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six Months Ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer A</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">16%</span></td><td colspan="3" style="background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">35%</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20%</span></td><td colspan="3" style="background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">38%</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer B</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12%</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14%</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11%</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">26%</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer C</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11%</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer D</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">13%</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer E</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">38%</span></td><td colspan="3" style="background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27%</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div><div style="text-indent:18pt;margin-top:12pt;"><span><br/></span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Customers that each accounted for 10% or more of accounts receivable had balances as of the periods presented as follows:</span></div><div style="text-indent:18pt;"><span><br/></span></div><div style="text-align:center;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.982%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Percentage of Accounts Receivables as of</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer A</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">26 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">38 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer B</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer D</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">30 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer F</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td></tr></table></div><div style="padding-left:9pt;"><span><br/></span></div><div style="padding-left:9pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;">* Percentage was l</span><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:120%;">ess than 10% </span></div><div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Geographical Information </span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Geographic revenues are identified by the location of the customer and consist of the following (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.526%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Revenues</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Americas</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,906 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,076 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,131 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,913 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">EMEA</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,314 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,741 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,285 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,466 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">APAC</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,747 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,502 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,221 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,522 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,967 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,319 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">29,637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27,901 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div><div style="text-indent:18pt;margin-top:9pt;"><span><br/></span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Identifiable long-lived assets by location was as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:60.719%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:16.274%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:16.277%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Long-lived assets</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">United States</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,822 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,282 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div style="margin-bottom:9pt;"><span><br/></span></div><div style="text-indent:18pt;margin-bottom:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Identifiable goodwill was as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:49.315%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">As of June 30, 2020 and December 31, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Goodwill</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,463 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">778 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,241 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 2 2 <div style="text-indent:18pt;margin-top:9pt;margin-bottom:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following tables provide financial information by our reportable business segments along with a reconciliation to consolidated loss before income taxes (in thousands):</span></div><div style="margin-top:6pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.561%;"><tr><td style="width:1.0%;"/><td style="width:23.110%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.747%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.747%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.747%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.747%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.747%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.751%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:middle;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">  Product revenue</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,504 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,504 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,249 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,249 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">  Research and development revenue</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,002 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,463 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,340 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,070 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,506 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,461 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,967 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,589 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,730 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,319 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Costs and operating expenses:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">  Cost of product revenue</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,699 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,699 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,772 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,772 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">  Research and development</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(1)</sup></div></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,997 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,490 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,487 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,134 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,856 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,990 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">  Selling, general and administrative</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(1)</sup></div></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,375 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">621 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,996 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,362 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">561 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,923 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total segment costs and operating expenses</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,071 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,111 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">15,182 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,268 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,417 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">13,685 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Income (loss) from operations</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1,565)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,350 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(215)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">321 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1,687)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1,366)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">Corporate costs </span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(2)</sup></div></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(5,316)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(4,698)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Depreciation and amortization</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(506)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(427)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Loss before income taxes</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(6,037)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(6,491)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="39" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="39" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(2) Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses.</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div><div style="text-indent:18pt;padding-left:9pt;margin-top:9pt;"><span><br/></span></div><div style="margin-top:9pt;margin-bottom:12pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:24.023%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.695%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.706%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:middle;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Revenues:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Product revenue</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,604 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,604 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,236 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,236 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Research and development revenue</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,775 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,258 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20,033 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,440 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">13,665 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">18,379 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,258 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">29,637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20,676 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,225 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27,901 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Costs and operating expenses:</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:6.75pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Cost of product revenue</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,240 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,240 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,163 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,163 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><div style="padding-left:6.75pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">Research and development</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(1)</sup></div></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,693 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10,415 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">21,108 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,576 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,172 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">15,748 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><div style="padding-left:6.75pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">Selling, general and administrative</span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(1)</sup></div></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,720 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,213 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,933 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,463 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,078 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">5,541 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total segment costs and operating expenses</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">19,653 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11,628 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">31,281 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">21,202 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7,250 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">28,452 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Loss from operations</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1,274)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(370)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1,644)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(526)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(25)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(551)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><div><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:9.5pt;font-weight:400;line-height:100%;">Corporate costs </span><sup style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.17pt;font-weight:400;line-height:100%;vertical-align:top;">(2)</sup></div></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(11,042)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(10,271)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:middle;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:middle;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Depreciation and amortization</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(998)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(802)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9.5pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Loss before income taxes</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(13,684)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(11,624)</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:9pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="39" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="39" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:8pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">(2) Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses. </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div><div style="text-indent:18pt;padding-left:9pt;margin-top:6pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following tables provides stock-based compensation expense included in loss from operations (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:12.473%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.356%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.380%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.941%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.941%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.823%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.502%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.380%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.941%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:7.953%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="45" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-bottom:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Corporate cost</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Corporate cost</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Stock-based compensation</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">741 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">252 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">946 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,939 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">601 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">197 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,190 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,988 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:12pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="45" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-bottom:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Corporate cost</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Corporate cost</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:7pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Stock-based compensation</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,496 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">494 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,118 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,108 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,237 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">338 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,476 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,051 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 4504000 4504000 6249000 6249000 3002000 7461000 10463000 4340000 1730000 6070000 7506000 7461000 14967000 10589000 1730000 12319000 1699000 1699000 2772000 2772000 4997000 5490000 10487000 5134000 2856000 7990000 2375000 621000 2996000 2362000 561000 2923000 9071000 6111000 15182000 10268000 3417000 13685000 -1565000 1350000 -215000 321000 -1687000 -1366000 -5316000 -4698000 506000 427000 -6037000 -6491000 9604000 9604000 14236000 14236000 8775000 11258000 20033000 6440000 7225000 13665000 18379000 11258000 29637000 20676000 7225000 27901000 4240000 4240000 7163000 7163000 10693000 10415000 21108000 9576000 6172000 15748000 4720000 1213000 5933000 4463000 1078000 5541000 19653000 11628000 31281000 21202000 7250000 28452000 -1274000 -370000 -1644000 -526000 -25000 -551000 -11042000 -10271000 998000 802000 -13684000 -11624000 741000 252000 946000 1939000 601000 197000 1190000 1988000 1496000 494000 2118000 4108000 1237000 338000 2476000 4051000 <div style="margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%;">Significant Customers</span></div><div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Customers that each accounted for 10% or more of our total revenues were as follows:</span></div><div style="margin-top:12pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.526%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="21" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-bottom:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Percentage of Total Revenues for the</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six Months Ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:9pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer A</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">16%</span></td><td colspan="3" style="background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">35%</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">20%</span></td><td colspan="3" style="background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">38%</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer B</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12%</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14%</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11%</span></td><td colspan="3" style="background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">26%</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer C</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11%</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer D</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">13%</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer E</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">38%</span></td><td colspan="3" style="background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27%</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div><div style="text-indent:18pt;margin-top:12pt;"><span><br/></span></div><div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Customers that each accounted for 10% or more of accounts receivable had balances as of the periods presented as follows:</span></div><div style="text-indent:18pt;"><span><br/></span></div><div style="text-align:center;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:65.982%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Percentage of Accounts Receivables as of</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer A</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">26 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">38 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer B</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">11 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer D</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">30 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Customer F</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">10 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">%</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">*</span></td></tr></table></div>* Percentage was less than 10% 0.16 0.35 0.20 0.38 0.12 0.14 0.11 0.26 0.11 0.13 0.38 0.27 0.26 0.38 0.11 0.10 0.30 0.10 <div style="text-indent:18pt;margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Geographic revenues are identified by the location of the customer and consist of the following (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:33.526%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="9" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Six months ended June 30,</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Revenues</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Americas</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,906 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,076 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,131 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,913 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">EMEA</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,314 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,741 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,285 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,466 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">APAC</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">4,747 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,502 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,221 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,522 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total revenues</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,967 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,319 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">29,637 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">27,901 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div> 6906000 4076000 12131000 6913000 3314000 4741000 9285000 12466000 4747000 3502000 8221000 8522000 14967000 12319000 29637000 27901000 <div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Identifiable long-lived assets by location was as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:60.719%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:16.274%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.530%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:16.277%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Long-lived assets</span></td><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">United States</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,822 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">6,282 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:8pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 6822000 6282000 <div style="text-indent:18pt;margin-bottom:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">Identifiable goodwill was as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:49.315%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.643%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.384%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.647%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="15" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">As of June 30, 2020 and December 31, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Performance Enzymes</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Novel Biotherapeutics</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Goodwill</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">2,463 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">778 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">3,241 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:15pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 2463000 778000 3241000 Allowance for Credit Losses<div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">An analysis of the allowance for credit losses is as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:78.409%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.969%;"/><td style="width:0.1%;"/><td style="width:0.1%;"/><td style="width:2.577%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="6" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three and six months<br/> ended <br/>June 30, 2020</span></td><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Beginning Balance January 1, 2020</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">34 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Write-offs charged against the allowance</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Recoveries of amounts previously written off</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Ending Balance June 30, 2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">34 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div><div style="margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following tables below summarizes accounts receivable by aging category (in thousands):</span></div><div style="margin-top:5pt;"><span><br/></span></div><div style="margin-top:5pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.707%;"><tr><td style="width:1.0%;"/><td style="width:28.498%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.001%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="33" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">31-60 Days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">61-90 Days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">91 days and over</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total over 31 days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Current</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total balance</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Accounts receivable</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,000 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">39 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,039 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,996 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,035 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div><div style="text-indent:18pt;margin-top:5pt;"><span><br/></span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.707%;"><tr><td style="width:1.0%;"/><td style="width:28.498%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.001%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="33" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">31-60 Days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">61-90 Days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">91 days and over</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total over 31 days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Current</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total balance</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Accounts receivable</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">185 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">65 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">257 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,806 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,063 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div> <div style="text-indent:18pt;margin-top:12pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">An analysis of the allowance for credit losses is as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:78.409%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.969%;"/><td style="width:0.1%;"/><td style="width:0.1%;"/><td style="width:2.577%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:13.645%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="6" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three and six months<br/> ended <br/>June 30, 2020</span></td><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Beginning Balance January 1, 2020</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">34 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Write-offs charged against the allowance</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:18pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Recoveries of amounts previously written off</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Ending Balance June 30, 2020</span></td><td colspan="3" style="background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td colspan="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">34 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:3pt;background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:3pt;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 34000 0 0 34000 <div style="margin-top:9pt;"><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">The following tables below summarizes accounts receivable by aging category (in thousands):</span></div><div style="margin-top:5pt;"><span><br/></span></div><div style="margin-top:5pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.707%;"><tr><td style="width:1.0%;"/><td style="width:28.498%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.001%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="33" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">June 30, 2020</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">31-60 Days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">61-90 Days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">91 days and over</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total over 31 days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Current</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total balance</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Accounts receivable</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">— </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,000 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">39 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">1,039 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">12,996 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">14,035 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:5pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div><div style="text-indent:18pt;margin-top:5pt;"><span><br/></span></div><div style="margin-top:9pt;"><table style="border-collapse:collapse;display:inline-table;vertical-align:top;width:99.707%;"><tr><td style="width:1.0%;"/><td style="width:28.498%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.997%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.386%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.001%;"/><td style="width:1.0%;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="33" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">December 31, 2019</span></td><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">31-60 Days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">61-90 Days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">91 days and over</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total over 31 days</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Current</span></td><td colspan="3" style="background-color:rgb(255,255,255, 0.0);text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:rgb(255,255,255, 0.0);text-align:center;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;padding-right:1pt;"><span style="font-size:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Total balance</span></td></tr><tr><td colspan="3" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Accounts receivable</span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">185 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">7 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">65 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">257 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">8,806 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td><td colspan="3" style="background-color:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:bottom;border-top:1pt solid #000;padding-left:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">$</span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">9,063 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;padding-right:1pt;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"> </span></td></tr><tr><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:6pt;background-color:#ffffff;text-align:left;vertical-align:bottom;border-top:3pt double #000;padding-left:1pt;padding-right:1pt;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr><tr><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div> 0 1000000 39000 1039000 12996000 14035000 185000 7000 65000 257000 8806000 9063000 XML 11 R1.htm IDEA: XBRL DOCUMENT v3.20.2
Cover Page - shares
6 Months Ended
Jun. 30, 2020
Jul. 31, 2020
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Jun. 30, 2020  
Document Transition Report false  
Entity File Number 001-34705  
Entity Registrant Name Codexis, Inc.  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 71-0872999  
Entity Address, Address Line One 200 Penobscot Drive,  
Entity Address, City or Town Redwood City,  
Entity Address, State or Province CA  
Entity Address, Postal Zip Code 94063  
City Area Code 650  
Local Phone Number 421-8100  
Title of 12(b) Security Common Stock, par value $0.0001 per share  
Trading Symbol CDXS  
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 false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding   59,126,820
Entity Central Index Key 0001200375  
Amendment Flag false  
Document Fiscal Year Focus 2020  
Document Fiscal Period Focus Q2  
Current Fiscal Year End Date --12-31  
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.20.2
Condensed Consolidated Balance Sheets - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Current assets:    
Cash and cash equivalents $ 75,649 $ 90,498
Restricted cash, current 619 661
Financial assets:    
Accounts receivable 14,035 9,063
Contract assets 0 1,027
Unbilled receivables 12,412 10,099
Total Financial assets 26,447 20,189
Less: allowances (34) (34)
Total Financial assets, net 26,413 20,155
Inventories 686 371
Prepaid expenses and other current assets 3,131 2,520
Total current assets 106,498 114,205
Restricted cash 1,062 1,062
Investment in Equity Securities 1,000 0
Right-of-use assets - Operating leases, net 22,599 23,837
Right-of-use assets - Finance leases, net 170 268
Property and equipment, net 6,822 6,282
Goodwill 3,241 3,241
Other non-current assets 391 178
Total assets 141,783 149,073
Current liabilities:    
Accounts payable 2,637 2,621
Accrued compensation 4,979 5,003
Other accrued liabilities 6,943 6,540
Current portion of lease obligations - Operating leases 2,482 1,107
Current portion of lease obligations - Finance leases 0 60
Deferred revenue 1,903 57
Total current liabilities 18,944 15,388
Deferred revenue, net of current portion 3,142 1,987
Long-term lease obligations - Operating leases 23,665 24,951
Other long-term liabilities 1,246 1,230
Total liabilities 46,997 43,556
Commitments and Contingencies (Note 11)
Stockholders' equity:    
Preferred stock, $0.0001 par value per share; 5,000 shares authorized, none issued and outstanding 0 0
Common stock, $0.0001 par value per share; 100,000 shares authorized; 59,125 shares and 58,877 shares issued and outstanding at June 30, 2020 and December 31, 2019, respectively 6 6
Additional paid-in capital 451,185 447,920
Accumulated deficit (356,405) (342,409)
Total stockholders' equity 94,786 105,517
Total liabilities and stockholders' equity $ 141,783 $ 149,073
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.20.2
Condensed Consolidated Balance Sheets (Parenthetical) - $ / shares
Jun. 30, 2020
Dec. 31, 2019
Statement of Financial Position [Abstract]    
Preferred stock, par value (usd per share) $ 0.0001 $ 0.0001
Preferred stock, shares authorized (shares) 5,000,000 5,000,000
Preferred stock, shares issued (shares) 0 0
Preferred stock, shares outstanding (shares) 0 0
Common stock, par value (usd per share) $ 0.0001 $ 0.0001
Common stock, shares authorized (shares) 100,000,000 100,000,000
Common stock, shares, issued (shares) 59,125,000 58,877,000
Common stock, shares outstanding (shares) 59,125,000 58,877,000
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.20.2
Condensed Consolidated Statements of Operations - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Revenues:        
Total revenues $ 14,967 $ 12,319 $ 29,637 $ 27,901
Costs and operating expenses:        
Cost of product revenue 1,699 2,772 4,240 7,163
Research and development 10,853 8,274 21,820 16,290
Selling, general and administrative 8,522 7,896 17,512 16,311
Total costs and operating expenses 21,074 18,942 43,572 39,764
Loss from operations (6,107) (6,623) (13,935) (11,863)
Interest income 57 220 323 450
Other income (expenses), net 13 (88) (72) (211)
Loss before income taxes (6,037) (6,491) (13,684) (11,624)
Provision for income taxes 307 16 312 19
Net loss $ (6,344) $ (6,507) $ (13,996) $ (11,643)
Net loss per share, basic and diluted (usd per share) $ (0.11) $ (0.12) $ (0.24) $ (0.21)
Weighted average common stock shares used in computing net loss per share, basic and diluted (shares) 59,000 54,954 58,944 54,564
Product Sales [Member]        
Revenues:        
Total revenues $ 4,504 $ 6,249 $ 9,604 $ 14,236
Research and Development Revenue [Member]        
Revenues:        
Total revenues $ 10,463 $ 6,070 $ 20,033 $ 13,665
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.20.2
Condensed Consolidated Statements of Stockholders' Equity - USD ($)
$ in Thousands
Total
Common Stock [Member]
Additional Paid-in Capital [Member]
Accumulated Deficit [Member]
Beginning balance (shares) at Dec. 31, 2018   54,065,000    
Beginning balance at Dec. 31, 2018 $ 56,306 $ 5 $ 386,775 $ (330,474)
Increase (Decrease) in Stockholders' Equity [Roll Forward]        
Exercise of stock options (shares) 529,187 529,000    
Exercise of stock options $ 2,843   2,843  
Release of stock awards (shares)   441,000    
Employee stock-based compensation 4,051   4,051  
Taxes paid related to net share settlement of equity awards (in shares)   (144,000)    
Taxes paid related to net share settlement of equity awards (2,799)   (2,799)  
Issuance of common stock, net of issuance costs (shares)   3,049,000    
Issuance of common stock, net of issuance costs of $74 49,926 $ 1 49,925  
Net loss (11,643)     (11,643)
Ending balance (shares) at Jun. 30, 2019   57,940,000    
Ending balance at Jun. 30, 2019 98,684 $ 6 440,795 (342,117)
Increase (Decrease) in Stockholders' Equity [Roll Forward]        
Costs incurred in connection with private placement 74      
Beginning balance (shares) at Mar. 31, 2019   54,541,000    
Beginning balance at Mar. 31, 2019 51,210 $ 5 386,815 (335,610)
Increase (Decrease) in Stockholders' Equity [Roll Forward]        
Exercise of stock options (shares)   310,000    
Exercise of stock options 2,067   2,067  
Release of stock awards (shares)   40,000    
Employee stock-based compensation 1,988   1,988  
Issuance of common stock, net of issuance costs (shares)   3,049,000    
Issuance of common stock, net of issuance costs of $74 49,926 $ 1 49,925  
Net loss (6,507)     (6,507)
Ending balance (shares) at Jun. 30, 2019   57,940,000    
Ending balance at Jun. 30, 2019 98,684 $ 6 440,795 (342,117)
Increase (Decrease) in Stockholders' Equity [Roll Forward]        
Costs incurred in connection with private placement 74      
Beginning balance (shares) at Dec. 31, 2019   58,877,000    
Beginning balance at Dec. 31, 2019 $ 105,517 $ 6 447,920 (342,409)
Increase (Decrease) in Stockholders' Equity [Roll Forward]        
Exercise of stock options (shares) 32,749 32,000    
Exercise of stock options $ 197   197  
Release of stock awards (shares)   300,000    
Employee stock-based compensation 4,104   4,104  
Non-employee stock-based compensation 4   4  
Taxes paid related to net share settlement of equity awards (in shares)   (84,000)    
Taxes paid related to net share settlement of equity awards (1,040)   (1,040)  
Net loss (13,996)     (13,996)
Ending balance (shares) at Jun. 30, 2020   59,125,000    
Ending balance at Jun. 30, 2020 94,786 $ 6 451,185 (356,405)
Increase (Decrease) in Stockholders' Equity [Roll Forward]        
Costs incurred in connection with private placement 0      
Beginning balance (shares) at Mar. 31, 2020   59,017,000    
Beginning balance at Mar. 31, 2020 99,066 $ 6 449,121 (350,061)
Increase (Decrease) in Stockholders' Equity [Roll Forward]        
Exercise of stock options (shares)   27,000    
Exercise of stock options 158   158  
Release of stock awards (shares)   81,000    
Employee stock-based compensation 1,935   1,935  
Non-employee stock-based compensation 4   4  
Taxes paid related to net share settlement of equity awards (in shares)   0    
Taxes paid related to net share settlement of equity awards (33)   (33)  
Net loss (6,344)     (6,344)
Ending balance (shares) at Jun. 30, 2020   59,125,000    
Ending balance at Jun. 30, 2020 $ 94,786 $ 6 $ 451,185 $ (356,405)
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.20.2
Condensed Consolidated Statements of Stockholders' Equity (Parenthetical) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Statement of Stockholders' Equity [Abstract]      
Issuance costs $ 74 $ 0 $ 74
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.20.2
Condensed Consolidated Statements of Cash Flows - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Operating activities:    
Net loss $ (13,996) $ (11,643)
Adjustments to reconcile net loss to net cash used in operating activities:    
Depreciation 900 693
Amortization expense - right-of-use assets - operating and finance leases 1,336 1,486
Gain on disposal of property and equipment 0 (1)
Stock-based compensation 4,108 4,051
Unrealized loss on investment in equity securities 0 168
Changes in operating assets and liabilities:    
Accounts receivable, net (4,972) (262)
Contract assets 1,027 35
Unbilled receivables (2,313) 365
Inventories (315) (131)
Prepaid expenses and other current assets (611) (882)
Other non-current assets (213) 59
Accounts payable (19) (1,625)
Accrued compensation (24) (721)
Other accrued liabilities 1,863 402
Other long-term liabilities (1,270) (715)
Deferred revenue 3,001 812
Net cash used in operating activities (11,498) (7,909)
Investing activities:    
Purchase of property and equipment (1,490) (1,258)
Proceeds from disposal of property and equipment 0 1
Investment in equity securities (1,000) 0
Net cash used in investing activities (2,490) (1,257)
Financing activities:    
Proceeds from exercises of stock options 197 2,843
Proceeds from issuance of common stock in connection with private placement 0 50,000
Costs incurred in connection with private placement 0 (74)
Payments of lease obligations - Finance leases (60) (119)
Taxes paid related to net share settlement of equity awards (1,040) (2,799)
Net cash provided by (used in) financing activities (903) 49,851
Net increase (decrease) in cash, cash equivalents and restricted cash (14,891) 40,685
Cash, cash equivalents and restricted cash at the beginning of the period 92,221 54,485
Cash, cash equivalents and restricted cash at the end of the period 77,330 95,170
Supplemental disclosure of cash flow information    
Interest paid 4 9
Income taxes paid 5 0
Purchase of property and equipment recorded in accounts payable and accrued expenses 90 773
Total cash, cash equivalents and restricted cash at the end of the period $ 77,330 $ 95,170
XML 18 R8.htm IDEA: XBRL DOCUMENT v3.20.2
Description of Business
6 Months Ended
Jun. 30, 2020
Organization, Consolidation and Presentation of Financial Statements [Abstract]  
Description of Business Description of Business
In these notes to the unaudited condensed consolidated financial statements, the “Company,” “we,” “us,” and “our” refers to Codexis, Inc. and its subsidiaries on a consolidated basis.
We discover, develop and sell proteins that deliver value to our clients in a growing set of industries. We view proteins as a vast untapped source of value-creating materials, and we are using our proven technologies, which we have been continuously improving since our inception in 2002, to commercialize an increasing number of novel proteins, both as proprietary Codexis products and in partnership with our customers.
We are a pioneer in the harnessing of computational technologies to drive biology advancements. Since 2002, we have made substantial investments in the development of our CodeEvolver® protein engineering technology platform, the primary source of our competitive advantage. Our technology platform is powered by proprietary, artificial intelligence-based, computational algorithms that rapidly mine our large and continuously growing library of protein variants’ performance attributes. These computational outputs enable increasingly reliable predictions for next generation protein variants to be engineered, enabling delivery of targeted performance enhancements in a time-efficient manner. In addition to its computational prowess, our CodeEvolver® protein engineering technology platform integrates additional modular competencies, including robotic high-throughput screening and genomic sequencing, organic chemistry and process development which are all coordinated to create our novel protein innovations.
Our approach to developing commercially viable biocatalytic manufacturing processes begins by conceptually designing the most cost-effective and practical process for a targeted product. We then develop optimized protein catalysts to enable that process design, using our CodeEvolver® protein engineering platform technology. Engineered protein catalyst candidates - many thousands for each protein engineering project - are then rapidly screened and validated in high throughput screening under relevant manufacturing operating conditions. This approach results in an optimized protein catalyst enabling cost-efficient processes that typically are relatively simple to run in conventional manufacturing equipment. This also allows for the efficient technical transfer of our process to our manufacturing partners.
The successful embodiment of our CodeEvolver® protein engineering technology platform in commercial manufacturing processes requires well-integrated expertise in a number of technical disciplines. In addition to those directly involved in practicing our CodeEvolver® protein engineering platform technology, such as molecular biology, enzymology, microbiology, cellular engineering, metabolic engineering, bioinformatics, biochemistry and high throughput analytical chemistry, our process development projects also involve integrated expertise in organic chemistry, chemical process development, chemical engineering, fermentation process development and fermentation engineering. Our integrated, multi-disciplinary approach to biocatalyst and process development is a critical success factor for the Company.
We initially commercialized our CodeEvolver® protein engineering technology platform and products in the pharmaceuticals market, which remains a primary business focus. Our customers, which include many large global pharmaceutical companies, use our technology, products and services in their manufacturing processes and process development. We have also licensed our proprietary CodeEvolver® protein engineering technology platform to global pharmaceutical companies so that they may in turn use this technology to engineer enzymes for their own businesses. Most recently, in May 2019, we entered into a Platform Technology Transfer and License Agreement (the “Novartis CodeEvolver® Agreement”) with Novartis Pharma AG (“Novartis”). The Novartis CodeEvolver® Agreement allows Novartis to use our proprietary CodeEvolver® protein engineering platform technology in the field of human healthcare.
As evidence of our strategy to extend our technology beyond pharmaceutical manufacturing, we have also used the technology to develop protein catalysts and industrial enzymes for use in a wider set of industrial markets. These target industries consist of several large market verticals, including food and food ingredients, animal feed, consumer care, flavors, fragrances and agricultural chemicals. In addition, we are using our technology to develop enzymes for customers using next generation sequencing ("NGS") and polymerase chain reaction ("PCR/qPCR") for in vitro molecular diagnostic and genomic research applications. In December 2019, we entered into a license agreement to provide Roche Sequencing Solutions, Inc. (“Roche”) with our first enzyme for this target market, the Company's EvoT4™ DNA ligase. In June 2020, we entered into a co-marketing and enzyme supply collaboration agreement with Alphazyme LLC for the production and co-marketing of enzymes for life science applications including, initially, high-fidelity DNA polymerase, T7 RNA polymerase and reverse transcriptase enzymes.
We have also begun using the CodeEvolver® protein engineering technology platform to develop early stage, novel biotherapeutic product candidates, both for our customers and for our own business. In October 2017, we entered into the "Nestlé Agreement” with Nestlé Health Science to advance CDX-6114, our enzyme biotherapeutic product candidate for the potential treatment of phenylketonuria ("PKU"). PKU is an inherited metabolic disorder in which the enzyme that converts the essential amino acid phenylalanine into tyrosine is deficient. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive license to develop and commercialize CDX-6114. In March 2020, we entered into a Strategic Collaboration and License Agreement (“Takeda Agreement”) with Shire Human Genetic Therapies, Inc., a wholly-owned subsidiary of Takeda Pharmaceutical Company Limited (“Takeda”), for the research and development of novel gene therapies for certain disease indications, including the treatment of lysosomal storage disorders and blood factor deficiencies.
Below are brief descriptions of our business segments:
Performance Enzymes
We initially commercialized our CodeEvolver® protein engineering technology platform and products in the pharmaceuticals market, and to date this continues to be our largest market served. Our customers, which include many large global pharmaceutical companies, use our technology, products and services in their manufacturing processes and process development. We have also used the technology to develop customized enzymes for use in other industrial markets. These markets consist of several large industrial verticals, including food and food ingredients, animal feed, consumer care, flavors, fragrances, and agricultural chemicals. We also use our technology to develop enzymes for customers using NGS and PCR/qPCR for in vitro molecular diagnostic and molecular biology research applications.
Novel Biotherapeutics
We are also targeting new opportunities in the pharmaceutical industry to discover, improve, and/or develop biotherapeutic drug candidates. We believe that our CodeEvolver® protein engineering platform technology can be used to discover novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. Similarly, we believe that we can deploy our platform technology to improve specific characteristics of a customer’s pre-existing biotherapeutic drug candidate, such as its activity, stability or immunogenicity.
Our first lead program was for the potential treatment of hyperphenylalaninemia (“HPA”) (also referred to as PKU) in humans. PKU is an inherited metabolic disorder in which the enzyme that converts the essential amino acid phenylalanine into tyrosine is deficient. In October 2017, we announced a global development, option and license agreement with Nestlé Health Science to advance CDX-6114, our own novel orally administrable enzyme therapeutic candidate for the potential treatment of PKU. In July 2018, we announced that we had dosed the first subjects in a first-in-human Phase 1a dose-escalation trial with CDX-6114, which was conducted in Australia. In November 2018, we announced top-line results from the Phase 1a study in healthy volunteers with CDX-6114. In December 2018, Nestlé Health Science became obligated to pay us an additional $1.0 million within 60 days after the achievement of a milestone relating to formulation of CDX-6114. In January 2019, we received notice from the U.S. Food and Drug Administration that it had completed its review of our investigational drug application for CDX-6114 and concluded that we may proceed with the proposed Phase 1b multiple ascending dose study in healthy volunteers in the United States. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive, worldwide, royalty-bearing, sub-licensable license for the global development and commercialization of CDX-6114 for the management of PKU. In January 2020, we and Nestlé Health Science entered into a development agreement pursuant to which we and Nestlé Health Science are collaborating to advance a lead candidate targeting a gastro-intestinal disorder discovered through our Strategic Collaboration Agreement into pre-clinical and early clinical studies. The Strategic Collaboration Agreement was extended through December 2021. Using our CodeEvolver® protein engineering platform technology, we have also developed a pipeline of other biotherapeutic drug candidates, all of which are in preclinical development.
Our most recent achievement in novel biotherapeutics came in March 2020, when we announced a strategic collaboration and license agreement with Takeda in which we will collaborate with Takeda to research and develop protein sequences for use in gene therapy products for certain disease indications. Under the terms of the Takeda Agreement, we will generate novel gene sequences encoding protein variants tailored to enhance efficacy as a result of increased activity, stability, and cellular uptake using our CodeEvolver® protein engineering platform. Takeda will combine these improved transgenes with its gene therapy capabilities to generate novel candidates for the treatment of rare genetic disorders. We are currently collaborating on three initial programs for the treatment of Fabry disease, Pompe disease, and an unnamed blood factor deficiency. The Company is responsible for the creation of novel enzyme sequences for advancement as gene therapies into pre-clinical development. Takeda is responsible for the pre-clinical and clinical development and commercialization of gene therapy products resulting from the collaboration programs. Under the terms of the agreement, in addition to the three initial programs, Takeda may initiate up to four additional programs for separate target indications. In March 2020, we began research and development activities under the program plans and received a $8.5 million one-time, non-refundable cash payment.
We expect to continue to make additional investments in our pipeline with the aim of advancing additional product candidates targeting other therapeutic areas.
For additional discussion of our business segments, see Note 13, "Segment, Geographical and Other Revenue Information."

Business Update Regarding COVID-19
We are subject to risks and uncertainties as a result of the current COVID-19 pandemic. The COVID-19 pandemic has presented a substantial public health and economic challenge around the world and is affecting our employees, communities and business operations, as well as the U.S. economy and other economies worldwide. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition will depend on future developments that are highly uncertain and cannot be accurately predicted, including the duration and severity of the pandemic and the extent and severity of the impact on our customers, new information that may emerge concerning COVID-19, the actions taken to contain it or treat its impact and the economic impact on local, regional, national and international markets.
To date, we and our collaboration partners have been able to continue to supply our enzymes to our customers worldwide. However, we are dependent on our manufacturing and logistics partners and consequently, disruptions in operations of our partners and customers may affect our ability to supply enzymes to our customers. Furthermore, our ability to provide future research and development ("R&D") services will continue to be impacted as a result of governmental orders and any disruptions in operations of our customers with whom we collaborate. We are continuing to assess the potential impact of the COVID-19 pandemic on our business and operations, including our product sales, R&D service revenue, expenses and manufacturing. However, we are unable to fully determine and quantify the extent to which this pandemic affected our total revenues due to complex accounting judgments.
In the U.S., the impact of COVID-19, including governmental orders ("Orders") governing the operation of businesses during the pandemic, caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Research and development operations for all other projects were temporarily suspended from mid-March 2020 through the end of April in accordance with these Orders. In May 2020, we initiated limited operations and gradually ramped up our R&D operations so that we are currently utilizing the majority of our normal R&D capacity. Additionally, we have resumed small scale manufacturing at our Redwood City pilot plant in May 2020.
Our future results of operations and liquidity could be adversely impacted by delays in payments of outstanding receivable amounts beyond normal payment terms, supply chain disruptions and uncertain demand, and the impact of any initiatives or programs that we may undertake to address financial and operations challenges faced by our customers. As of the date of issuance of the unaudited condensed consolidated financial statements, the extent to which the COVID-19 pandemic may materially impact our financial condition, liquidity, or results of operations is uncertain in the future.

Recent Investing Activities
In June 2020, we entered into a Master Collaboration and Research Agreement with Molecular Assemblies, Inc. (“MAI”), a privately held company, to engineer enzymes to deliver differentiated and cost-effective solutions for the enzymatic synthesis of DNA (“MAI Agreement”). Under an associated stock purchase agreement, we purchased 1,587,050 shares of MAI's Series A preferred stock for $1.0 million, and in connection with our investment, John Nicols, our chief executive officer joined MAI’s board of directors. Under the MAI Agreement, for a fixed monthly fee payable in shares of Series A preferred stock, we will apply our CodeEvolver® protein engineering platform technology to improve the DNA polymerase enzymes that are critical for enzymatic DNA synthesis. Through the provision of these services, we are eligible to earn additional shares of Series A preferred stock. MAI will combine its advanced chemistries with our enzymes to drive the process to commercialization. For additional information, see Note 12, "Related Party Transactions," in the Notes to Unaudited Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q.
XML 19 R9.htm IDEA: XBRL DOCUMENT v3.20.2
Basis of Presentation and Summary of Significant Accounting Policies
6 Months Ended
Jun. 30, 2020
Accounting Policies [Abstract]  
Basis of Presentation and Summary of Significant Accounting Policies Basis of Presentation and Summary of Significant Accounting Policies
Basis of Presentation and Principles of Consolidation
The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States of America ("GAAP") and the applicable rules and regulations of the Securities and Exchange Commission ("SEC") for interim financial information. Accordingly, they do not include all the information and notes required by GAAP for complete financial statements. These interim unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto contained in our Annual Report on Form 10-K for the year ended December 31, 2019. The condensed consolidated balance sheet at December 31, 2019 has been derived from the audited consolidated financial statements at that date, but does not include all disclosures, including notes, required by GAAP for complete financial statements. The significant accounting policies used in preparation of the unaudited condensed consolidated financial statements for the three and six months ended June 30, 2020 are consistent with those discussed in Note 2 to the audited consolidated financial statements in the Company’s 2019 Annual Report on Form 10-K and are updated below as necessary.
Certain prior year amounts have been reclassified to conform to 2020 presentation. In June 2016, the Financial Accounting Standards Board (“FASB”) issued guidance requiring implementation of a new impairment model applicable to financial assets measured at amortized cost which, among other things required that accounts receivable, contract assets, unbilled receivables and related allowances be reclassified as financial assets.
Except as noted above, the unaudited condensed consolidated financial statements have been prepared on the same basis as the audited consolidated financial statements and, in the opinion of management, reflect all adjustments of a normal recurring nature considered necessary to present fairly our financial position as of June 30, 2020, results of our operations for the three and six months ended June 30, 2020 and 2019, changes in stockholders' equity for the three and six months ended June 30, 2020 and 2019, and cash flows for the six months ended June 30, 2020 and 2019. The interim results are not necessarily indicative of the results for any future interim period or for the entire year. The results of the six months ended June 30, 2020 reflect the adoption of the accounting standards including: Accounting Standard Update ("ASU") 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments which added a new impairment model applicable to our financial assets measured at amortized cost, and (ii) ASU No. 2017-04, Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment, which adjusts testing for goodwill impairment. See "Recently adopted accounting pronouncements" for details regarding the adoption of these standards.
The unaudited interim condensed consolidated financial statements include the accounts of Codexis, Inc. and its wholly owned subsidiaries. All significant intercompany balances and transactions have been eliminated in consolidation.
Use of Estimates
The preparation of our unaudited condensed consolidated financial statements in conformity with GAAP requires us to make estimates, judgments and assumptions that may affect the reported amounts of assets, liabilities, equity, revenues and expenses and related disclosure of contingent assets and liabilities. We regularly assess these estimates which primarily affect revenue recognition, the interest rate used to adjust the promised amount of consideration for the effects of significant financial assets (comprised of accounts receivable, contract assets, and unbilled receivables), inventories, goodwill arising out of business acquisitions, accrued liabilities, stock awards, and the valuation allowances associated with deferred tax assets. Actual results could differ from those estimates and such differences may be material to the unaudited condensed consolidated financial statements. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition, including sales, expenses, reserves and allowances, manufacturing, research and development costs and employee-related amounts, will depend on future developments that are highly uncertain, including as a result of new information that may emerge concerning COVID-19 and the actions taken to contain or treat COVID-19, as well as the economic impact on local, regional, national and international customers, markets and economies.
Financial assets and Allowances
We currently sell enzymes primarily to pharmaceutical and fine chemicals companies throughout the world by the extension of trade credit terms based on an assessment of each customer's financial condition. Trade credit terms are generally offered without collateral and may include an insignificant discount for prompt payment for specific customers. To manage our credit exposure, we perform ongoing evaluations of our customers' financial conditions. In addition, accounts receivable include amounts owed to us under our collaborative research and development agreements. We recognize accounts receivable at invoiced amounts and we maintain a valuation allowance as follows:
Allowance for credit losses from January 1, 2020
On and subsequent to January 1, 2020, our financial results reflect an impairment model (known as the “current expected credit loss model” or “CECL”) based on estimates and forecasts of future conditions requiring recognition of a lifetime of expected credit losses at inception on our financial assets measured at amortized costs which is comprised of accounts receivable, contract assets, and unbilled receivables. We have determined that our financial assets share similar risk characteristics including: (i) customer origination in the pharmaceutical and fine chemicals industry, (ii) similar historical credit loss pattern of customers (iii) no meaningful trade receivable differences in terms, (iv) similar historical credit loss experience and (v) our belief that the composition of certain assets are comparable to our historical portfolio used to develop loss history. As a result, we measured the allowance for credit loss (“ACL”) on a collective basis. Our ACL methodology considers how long the asset has been past due, the financial condition of the customers, which includes ongoing quarterly evaluations and assessments of changes in customer credit ratings, and other market data that we believe are relevant to the collectability of the assets. Nearly all financial assets are due from customers that are highly rated by major rating agencies and have a long history of no credit loss. We derive our ACL by establishing an impairment rate attributable to assets not yet identified as impaired.
We derive our ACL by initially relying on our historical financial asset loss rate which contemplates the full contractual life of the assets sharing similar risk characteristics, adjusted to reflect (i) the extent to which we have determined current conditions differ from the conditions that existed for the period over which historical loss information was evaluated and (ii) by taking into consideration the changes in certain macroeconomic historical and forecasted information. We apply the ACL to past due financial assets and record charges to the ACL as a provision to credit loss expense in the Statement of Operations. Financial assets we identify as uncollectible are also charged against the ACL. We adjust the impairment rate to reflect the extent to which we have determined current conditions differ from the conditions that existed for the period over which historical loss information was evaluated. Adjustments to historical loss information may be qualitative or quantitative in nature and reflect changes related to relevant data.
In the three and six months ended June 30, 2020, inputs to our CECL forecast incorporated forward-looking adjustments associated with the COVID-19 pandemic which we believe are appropriate to incorporate due to the uncertainty of the economic impact on cash flows from our financial assets.
Allowance for credit losses before January 1, 2020
Prior to January 1, 2020, the allowances for doubtful accounts reflected our best estimates of probable losses inherent in our accounts receivable, contract assets, and unbilled receivables balances. The allowance determination was based on known troubled accounts, historical experience, and other currently available evidence. Uncollectible accounts receivable were written off against the allowance for doubtful accounts when all efforts to collect them have been exhausted. Recoveries were recognized when they were received. Actual collection losses may differ from our estimates and could be material to our consolidated financial position, results of operations, and cash flows.
Investment in Equity Securities
We own an equity investment in Molecular Assemblies, Inc. (“MAI”) which is a privately held company. Concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors, and we entered into the MAI Agreement pursuant to which we will provide technical services and expertise in exchange for compensation in the form of additional shares of voting preferred stock. We and MAI envision entering into an arrangement to commercialize products developed under the MAI Agreement.
To analyze the fair value measurement of our equity investment in MAI, we perform a qualitative analysis using significant unobservable inputs. Significant changes to the unobservable inputs may result in a significantly higher or lower fair value estimate. We may value our equity investment based on significant recent arms-length equity transactions with sophisticated non-strategic unrelated new investors, providing the terms of these equity transactions are substantially similar to the equity transactions terms between the company and us. The impact of the difference in transaction terms on the market value of the portfolio company may be difficult or impossible to quantify.
We evaluate our investment for impairment when circumstances indicate that we may not be able to recover the carrying value. We impair our investment when we determine that there has been an “other-than-temporary” decline in the company's estimated fair value compared to its carrying value. We calculate the estimated fair value of the investment using information from the company, which may include:
Audited and unaudited financial statements;
Projected technological developments of the company;
Projected ability of the company to service its debt obligations;
If a deemed liquidation event were to occur;
Current fundraising transactions;
Current ability of the company to raise additional financing if needed;
Changes in the economic environment which may have a material impact on the operating results of the company;
Qualitative assessment of key management;
Contractual rights, obligations or restrictions associated with the investment; and
Other factors deemed relevant by our management to assess valuation.
The valuation may be reduced if the company's potential has deteriorated significantly. If the factors that led to a reduction in valuation are overcome, the valuation may be readjusted.

Goodwill
Goodwill represents the excess of consideration transferred over the fair value of net assets of businesses acquired and is assigned to reporting units. We test goodwill for impairment considering amongst other things, whether there have been sustained declines in the trading price of our stock on the Nasdaq Global Select Market. If we conclude it is more likely than not that the fair value of a reporting unit is less than its carrying amount, a quantitative fair value test is performed. We manage our business as two reporting units and we test goodwill for impairment at the reporting unit level. We allocated goodwill to the two reporting units using a relative fair value allocation methodology that primarily relied on our estimates of revenue and future earnings for each reporting unit. Using the relative fair value allocation methodology, we have determined that approximately 76% of goodwill was to be allocated to the Performance Enzymes segment and 24% allocated to the Novel Biotherapeutics segment. As a result of the calculation, $2.4 million of the goodwill is assigned to the Performance Enzymes segment and $0.8 million is assigned to the Novel Biotherapeutics segment. We test goodwill for impairment on an annual basis on the last day of the fourth fiscal quarter and, when specific circumstances dictate, between annual tests, by first assessing qualitative factors to determine whether it is more likely than not that the fair value of a reporting unit is less than its carrying amount. During 2020 and 2019, we did not record impairment charges related to goodwill. We test for goodwill impairment is as follows:
Goodwill impairment testing from January 1, 2020
On and subsequent to January 1, 2020, we test for goodwill impairment by comparing the fair value of each reporting unit to its respective carrying value. Using the relative fair value allocation methodology for assets and liabilities used in both of our reporting units, we compare the allocated carrying amount of each reporting unit’s net assets and the assigned goodwill to its fair value. If the fair value of the reporting unit exceeds its carrying amount, goodwill of the reporting unit is considered not impaired. Any excess of the reporting unit’s carrying amount of goodwill over its fair value is recognized as an impairment.
Goodwill impairment testing before January 1, 2020
Prior to January 1, 2020, the goodwill impairment test consisted of a two-step process. The first step of the goodwill impairment test, used to identify potential impairment, compared the fair value of each reporting unit to its carrying value. Using the relative fair value allocation methodology for assets and liabilities used in both of our reporting units, we compared the allocated carrying amount of each reporting unit’s net assets and the assigned goodwill to its fair value. If the fair value of the reporting unit exceeded its carrying amount, goodwill of the reporting unit was considered not impaired, and the second step of the impairment test was not required. The second step, if required, compared the implied fair value of the reporting unit’s goodwill with the carrying amount of that goodwill. Implied fair value was the excess of the fair value of the reporting unit over the fair value of all identified or allocated assets and liabilities. Any excess of the reporting unit’s carrying amount goodwill over the respective implied fair value was recognized as an impairment.
Interim Goodwill Impairment Testing
We tested goodwill for impairment in the quarter ended June 30, 2020. In late 2019, COVID-19 was reported to have surfaced and has since spread worldwide. The impact of COVID-19 has caused a decline in global and domestic macroeconomic conditions, the general deterioration of the U.S. economy and other economies worldwide, all of which may negatively impact our overall financial performance, driving a reduction in our cash flows. We believe that the impact of the COVID-19 pandemic was a triggering event that gave rise to the need to perform a goodwill impairment test. We tested for goodwill impairment by comparing the fair value of each reporting unit to its respective carrying value. We used the relative fair value allocation methodology for assets and liabilities used in both of our reporting units. We compared the allocated carrying amounts of each reporting unit’s net assets at June 30, 2020 and the assigned goodwill to its fair value at June 30, 2020. We concluded that there was no goodwill impairment at June 30, 2020.
Segment Reporting
We report two business segments, Performance Enzymes and Novel Biotherapeutics, which are based on our operating segments. Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the chief operating decision maker ("CODM"), or decision making group, in deciding how to allocate resources, and in assessing performance. Our CODM is our Chief Executive Officer. Our business segments are primarily based on our organizational structure and our operating results as used by our CODM in assessing performance and allocating resources for the Company. We do not allocate or evaluate assets by segment.
The Novel Biotherapeutics segment focuses on new opportunities in the pharmaceutical industry to discover or improve novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. The Performance Enzymes segment consists of protein catalyst products and services with focus on pharmaceutical, food, molecular diagnostics, and other industrial markets.
Income Taxes
Changes to Tax Law
On March 27, 2020, the Coronavirus Aid, Relief, and Economic Security Act (“CARES Act”), P.L. 116-136,was passed into law, amending portions of certain relevant US tax laws. The CARES Act includes a number of federal income tax law changes, including, but not limited to: (i) permitting net operating loss carrybacks to offset 100% of taxable income for taxable years beginning before 2021, (ii) accelerating alternative minimum tax credit refunds, (iii) temporarily increasing the allowable business interest deduction from 30% to 50% of adjusted taxable income, and (iv) providing a technical correction for depreciation related to qualified improvement property. The Company is currently evaluating if it will claim the Employee Retention Credit and apply for payroll tax deferrals under the CARES Act.
Accounting Pronouncements
Recently adopted accounting pronouncements
In June 2016, the FASB issued ASU 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments, which amends the FASB's guidance on the impairment of financial instruments. The standard adds a new impairment model, known as CECL, which replaces the probable loss model. The CECL impairment model is based on estimates and forecasts of future conditions which requires recognition of a lifetime of expected credit losses at inception on financial assets measured at amortized costs. Our financial assets measured at amortized cost are comprised of accounts receivable, contract assets, and unbilled receivables. We adopted the new standard in the first quarter of 2020 using a modified retrospective approach requiring a cumulative-effect adjustment to the opening accumulated deficit as of the date of adoption. The ASU establishes a new valuation account “allowance for credit losses” replacing the “allowance for doubtful accounts” in the consolidated balance sheet, which is used to adjust the amortized cost basis of assets in presentation of the net amount expected to be collected. The adoption required certain additional disclosures but had no other impact on our unaudited condensed consolidated financial statements.
In January 2017, the FASB issued ASU No. 2017-04, Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment. The amendments eliminate Step 2 from the goodwill impairment test. The annual, or interim, goodwill impairment test is performed by comparing the fair value of a reporting unit to its carrying amount. An impairment charge should be recognized for the amount by which the carrying amount exceeds the reporting unit’s fair value; however, the loss recognized should not exceed the total amount of goodwill allocated to that reporting unit. In addition, income tax effects from any tax-deductible goodwill on the carrying amount of the reporting unit should be considered when measuring the goodwill impairment loss, if applicable. The amendments eliminate the requirements for any reporting unit with a zero or negative carrying amount to perform a qualitative assessment, and if it fails that qualitative test, to perform Step 2 of the goodwill impairment test. An entity still has the option to perform the qualitative assessment for a reporting unit to determine if the quantitative impairment test is necessary. We adopted the standard in the first quarter of 2020 using a prospective approach. The adoption required certain additional disclosures but had no impact on our unaudited condensed consolidated financial statements.
In August 2018, the FASB issued ASU 2018-13, Fair Value Measurement (Topic 820): Disclosure Framework—Changes to the Disclosure Requirements for Fair Value Measurement. The primary focus of the standard is to improve the effectiveness of the disclosure requirements for fair value measurements. The changes affect all companies that are required to include fair value measurement disclosures. The standard requires the use of the prospective method of transition for disclosures related to changes in unrealized gains and losses, the range and weighted average of significant unobservable inputs used to develop fair value measurements categorized within Level 3 of the fair value hierarchy, and narrative description of measurement uncertainty. All other amendments in the standard are required to be adopted retrospectively. We adopted the standard in the first quarter of 2020 and the adoption had no impact on our unaudited condensed consolidated financial statements and related disclosures.
In November 2018, the FASB issued ASU 2018-18, Collaborative Arrangements (Topic 808): Clarifying the Interaction Between Topic 808 and Topic 606. ASU 2018-18 provides guidance on how to assess whether certain transactions between collaborative arrangement participants should be accounted for within the revenue recognition standard. The standard also provides more comparability in the presentation of revenue for certain transactions between collaborative arrangement participants. The standard is to be applied retrospectively to the date of the initial application of Topic 606 which also requires recognition of the cumulative effect of applying the amendments as an adjustment to the opening balance of retained earnings of the later or the earliest annual period presented and the annual period inclusive of the initial application of Topic 606. We adopted the standard in the first quarter of 2020. The adoption will adjust certain annual disclosures but had no impact on our unaudited condensed consolidated financial statements and related disclosures.
Recently issued accounting pronouncements not yet adopted
From time to time, new accounting pronouncements are issued by the FASB or other standards setting bodies that are adopted by us as of the specified effective date. Unless otherwise discussed, we believe that the impact of recently issued standards that are not yet effective will not have a material impact on our unaudited condensed consolidated financial statements upon adoption.
In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes which is intended to simplify various aspects related to accounting for income taxes. The standard is effective for fiscal years, and interim periods within those years, beginning after December 15, 2020, with early adoption permitted. The standard will be adopted upon the effective date for us beginning January 1, 2021. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
In March 2020, the FASB issued ASU 2020-04, Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting. The standard provides optional expedients and exceptions for applying GAAP to contracts, hedging relationships, and other transactions in which the reference LIBOR or another reference rate are expected to be discontinued as a result of the Reference Rate Reform. The standard is effective for all entities. The standard may be adopted as of any date from the beginning of an interim period that includes or is subsequent to March 12, 2020 through December 31, 2022. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
In May 2020, the Securities and Exchange Commission formally adopted amendments to financial disclosure regulations regarding the acquisition and disposition of certain business and among other things, amends the definition of a “significant subsidiary” by altering prescribed significance tests under Rule 1-02(w) of Regulation S-X, as well as under Rule 405 of the Securities Act of 1933 and Rule 12b-2 under the Securities Exchange Act of 1934. The amendments apply to reports and information filings as of January 1, 2021, with early adoption permitted. The effect of adoption will adjust certain annual disclosures but we expect no impact on our consolidated financial statements.
XML 20 R10.htm IDEA: XBRL DOCUMENT v3.20.2
Revenue Recognition
6 Months Ended
Jun. 30, 2020
Revenue from Contract with Customer [Abstract]  
Revenue Recognition Revenue Recognition
Disaggregation of Revenue
The following table provides information about disaggregated revenue from contracts with customers into the nature of the products and services and geographic regions, and includes a reconciliation of the disaggregated revenue with reportable segments. The geographic regions that are tracked are the Americas (United States, Canada and Latin America), EMEA (Europe, Middle East and Africa), and APAC (Australia, New Zealand, Southeast Asia and China).
Segment information is as follows (in thousands):
Three months ended June 30, 2020Three months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Major products and service:
       Product Revenue$4,504  $—  $4,504  $6,249  $—  $6,249  
Research and development revenue3,002  7,461  10,463  4,340  1,730  6,070  
Total revenues$7,506  $7,461  $14,967  $10,589  $1,730  $12,319  
Primary geographical markets:
Americas
$1,173  $5,733  $6,906  $4,076  $—  $4,076  
EMEA
1,586  1,728  3,314  3,011  1,730  4,741  
APAC
4,747  —  4,747  3,502  —  3,502  
Total revenues$7,506  $7,461  $14,967  $10,589  $1,730  $12,319  

Six months ended June 30, 2020Six months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Major products and service:
Product revenue$9,604  $—  $9,604  $14,236  $—  $14,236  
Research and development revenue8,775  11,258  20,033  6,440  7,225  13,665  
Total revenues$18,379  $11,258  $29,637  $20,676  $7,225  $27,901  
Primary geographical markets:
Americas$4,171  $7,960  $12,131  $6,913  $—  $6,913  
EMEA5,987  3,298  9,285  5,241  7,225  12,466  
APAC8,221  —  8,221  8,522  —  8,522  
Total revenues$18,379  $11,258  $29,637  $20,676  $7,225  $27,901  

Contract Balances
The following table presents balances of contract assets, unbilled receivables, contract costs, and contract liabilities (in thousands):
June 30, 2020December 31, 2019
Contract Assets$—  $1,027  
Unbilled receivables$12,412  $10,099  
Contract Costs$172  $—  
Contract Liabilities: Deferred Revenue$5,045  $2,044  


We had no asset impairment charges related to contract assets in the three and six months ended June 30, 2020 and 2019.
During the six months ended June 30, 2020, decreases in contract assets were primarily due to contract assets that were subsequently invoiced as our right to consideration for goods and services became unconditional. Increases in unbilled receivables were primarily due to the timing of billings. The increase in deferred revenue were primarily due to cash advances received in excess of revenue recognized.
During the three and six months ended June 30, 2020 and 2019, we recognized the following revenues (in thousands):
Three months ended June 30,Six months ended June 30,
2020201920202019
Amounts included in contract liabilities at the beginning of the period:
     Performance obligations satisfied$4,272  $1,367  $57  $3,752  
Changes in the period:
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods1,357  (92) 637  43  
Performance obligations satisfied from new activities in the period - contract revenue9,338  11,044  28,943  24,106  
Total revenues$14,967  $12,319  $29,637  $27,901  

Performance Obligations
The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting periods. The estimated revenue does not include contracts with original durations of one year or less, amounts of variable consideration attributable to royalties, or contract renewals that are unexercised as of June 30, 2020.
The balances in the table below are partially based on judgments involved in estimating future orders from customers subject to the exercise of material rights pursuant to respective contracts (in thousands):
Remainder of 202020212022 and ThereafterTotal
Product Revenue$567  $385  $1,883  $2,835  
Research and development revenue1,107  624  479  2,210  
Total revenues$1,674  $1,009  $2,362  $5,045  
XML 21 R11.htm IDEA: XBRL DOCUMENT v3.20.2
Net loss per Share
6 Months Ended
Jun. 30, 2020
Earnings Per Share [Abstract]  
Net loss per Share Net loss per Share
Basic net loss per share is computed by dividing the net loss by the weighted-average number of shares of common stock outstanding, less restricted stock awards ("RSAs") subject to forfeiture. Diluted net loss per share is computed by dividing net loss by the weighted-average number of shares of common stock outstanding, less RSAs subject to forfeiture, plus all additional common stock shares that would have been outstanding, assuming dilutive potential common stock shares had been issued for other dilutive securities. For periods of net loss, diluted and basic net loss per share are identical since potential common stock shares are excluded from the calculation, as their effect was anti-dilutive.
Anti-Dilutive Securities
In periods of net loss, the weighted average number of shares outstanding, prior to the application of the treasury stock method, excludes potentially dilutive securities from the computation of diluted net loss per common share because including such shares would have an anti-dilutive effect. The following shares were not included in the computation of diluted net loss per share (in thousands):
 Three months ended June 30,Six months ended June 30,
 2020201920202019
Shares issuable under the Equity Incentive Plan5,2896,2545,2896,254
XML 22 R12.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements
6 Months Ended
Jun. 30, 2020
Research and Development [Abstract]  
Collaborative Arrangements Collaborative Arrangements
GSK Platform Technology Transfer, Collaboration and License Agreement
In July 2014, we entered into a CodeEvolver® protein engineering platform technology transfer collaboration and license agreement (the "GSK CodeEvolver® Agreement") with GlaxoSmithKline ("GSK"). Pursuant to the terms of the agreement, we granted GSK a non-exclusive license to use the CodeEvolver® protein engineering platform technology to develop novel enzymes for use in the manufacture of GSK's pharmaceutical and health care products.
We received an upfront fee upon the execution of the agreement in July 2014 and milestone payments in each of the years from 2014 through April 2016. We completed the transfer of the CodeEvolver® protein engineering platform technology to GSK in April 2016 and all revenues relating to the technology transfer have been recognized as of April 2016. We have the potential to receive additional cumulative contingent payments that range from $5.75 million to $38.5 million per project based on GSK’s successful application of the licensed technology. We are also eligible to receive royalties based on net sales of GSK's sales of licensed enzyme products that are currently not being recognized.
In 2019, we received a $2.0 million milestone payment on the advancement of an enzyme developed by GSK using our CodeEvolver® protein engineering platform technology. We recognized no research and development revenue for the three and six months ended June 30, 2020 and 2019.
Merck Platform Technology Transfer and License Agreement
In August 2015, we entered into a CodeEvolver® platform technology transfer collaboration and license agreement (the "Merck CodeEvolver® Agreement") with Merck, Sharp & Dohme ("Merck") which allows Merck to use the CodeEvolver® protein engineering technology platform in the field of human and animal healthcare.
We received an up-front license fee upon execution of the Merck CodeEvolver® Agreement, and milestone payments in September 2015 and in September 2016, when we completed the transfer of the engineering platform technology. We recognized research and development revenues $0.2 million and $1.0 million for the three and six months ended June 30, 2020, respectively, compared to $1.0 million and $2.0 million for the three and six months ended June 30, 2019, respectively, for various research projects under our collaborative arrangement.
We have the potential to receive payments of up to a maximum of $15.0 million for each commercial active pharmaceutical ingredient ("API") that is manufactured by Merck using one or more novel enzymes developed by Merck using the CodeEvolver® protein engineering technology platform. The API payments, which are currently not recognized in revenue, are based on the quantity of API developed and manufactured by Merck and will be recognized as usage-based royalties.
In January 2019, we entered into an amendment to the Merck CodeEvolver® Agreement to install certain CodeEvolver® protein engineering technology upgrades into Merck’s platform license installation and maintain those upgrades for a multi-year term. The license installation was completed in 2019 and we recognized $0.9 million in the three and six months ended June 30, 2019 as a license fee revenue accordingly under the amendment. Pursuant to the agreement, Merck has options to future technology enhancements for a specified fee. As of June 30, 2020, Merck has not exercised its option for technology enhancements. We recognized $25 thousand and $50 thousand in research and development revenues under the terms of the amendment in the three and six months ended June 30, 2020, respectively. As of June 30, 2020 and December 31, 2019, we had deferred revenue balances of $0.1 million and nil, respectively.
Merck Sitagliptin Catalyst Supply Agreement
In February 2012, we entered into a five-year Sitagliptin Catalyst Supply Agreement (“Sitagliptin Catalyst Supply Agreement”) with Merck whereby Merck may obtain commercial scale enzyme for use in the manufacture of Januvia®, its product based on the active ingredient sitagliptin. In December 2015, Merck exercised its option under the terms of the sitagliptin Catalyst Supply Agreement to extend the agreement for an additional five years through February 2022.
Effective as of January 2016, we and Merck amended the Sitagliptin Catalyst Supply Agreement to prospectively provide for variable pricing based on the cumulative volume of sitagliptin catalyst purchased by Merck and to allow Merck to purchase a percentage of its requirements for sitagliptin catalyst from a specified third-party supplier. Merck received a distinct, functional license to manufacture a portion of its demand beginning January 1, 2018, which we recognized as research and development revenue.
We have determined that the variable pricing, which provides a discount based on the cumulative volume of sitagliptin catalyst purchased by Merck, provides Merck material rights and we are recognizing product revenues using the alternative method. Under the alternative approach, we estimate the total expected consideration and allocate it proportionately with the expected sales.
The Sitagliptin Catalyst Supply Agreement requires Merck to pay an annual fee for the rights to the sitagliptin technology each year for the term of the Sitagliptin Catalyst Supply Agreement. Amounts of annual license fees are based on contractually agreed prices and are on a declining scale over the term of the contract.
Pursuant to the terms of the Sitagliptin Catalyst Supply Agreement, Merck may purchase supply from us for a fee based on contractually stated prices. Deferred revenues were offset against contract assets where the right of offset exists within the contract. We recognized revenue of $2.0 million and $3.8 million for the three and six months ended June 30, 2020, respectively, compared to $2.5 million and $7.8 million in the three and six months ended June 30, 2019, respectively, in product revenue under this agreement. As of June 30, 2020 and December 31, 2019, we had deferred revenue balances related to the Sitagliptin Catalyst Supply Agreement of $0.3 million and nil, respectively. 
Enzyme Supply Agreement
In November 2016, we entered into a supply agreement whereby our customer may purchase quantities of one of our proprietary enzymes for use in its commercial manufacture of a product. Pursuant to the supply agreement, we received an upfront payment in December 2016 which was recorded as deferred revenues. Such upfront payment will be recognized over the period of the supply agreement as the customer purchases our proprietary enzyme. We additionally have determined that the volume discounts under the supply agreement provides the customer material rights and we are recognizing revenues using the alternative method. As of June 30, 2020 and December 31, 2019, we had deferred revenue balances from the supply agreement of $2.0 million. 
Global Development, Option and License Agreement, Strategic Collaboration Agreement, and Development Agreement
In October 2017, we entered into a Global Development, Option and License Agreement (the “Nestlé Agreement”) with Société des Produits Nestlé (formerly known as Nestec Ltd.) (“Nestlé Health Science”) and, solely for the purpose of the integration and the dispute resolution clauses of the Nestlé Agreement, Nestlé Health Science S.A., to advance CDX-6114, our enzyme biotherapeutic product candidate for the potential treatment of PKU.
We received an upfront cash payment of $14.0 million in 2017 upon the execution of the Nestlé Agreement, a $4.0 million milestone payment after dosing the first subjects in a first-in-human Phase 1a dose-escalation trial with CDX-6114, and a $1.0 million milestone payment upon achievement of a milestone relating to formulation of CDX-6114. The $4.0 million milestone payment that was triggered by the initiation of the trial was received in 2018 and the $1.0 million milestone payment that was triggered by the achievement of a formulation relating to CDX-6114 was received in February 2019. The upfront payment and the variable consideration relating to the progress payment of $4.0 million and milestone payment of $1.0 million were recognized over time as the development work was performed. Revenue was recognized using a single measure of progress that depicted our performance in transferring control of the services, which was based on the ratio of level of effort incurred to date compared to the total estimated level of effort required to complete all performance obligations under the agreement. We recognized nominal research and development revenue for the three and six months ended June 30, 2020, respectively, compared to $0.5 million and $1.7 million for the three and six months ended June 30, 2019, respectively.
In January 2019, we received notice from the FDA that it had completed its review of our investigational new drug application ("IND") for CDX-6114 and concluded that we may proceed with the proposed Phase 1b multiple ascending dose study in healthy volunteers in the United States. In February 2019, Nestlé Health Science exercised its option to obtain an exclusive, worldwide, royalty-bearing, sub-licensable license for the global development and commercialization of CDX-6114 for the management of PKU and paid us $3.0 million which we recognized as research and development revenue in 2019. Upon exercising its option, Nestlé Health Science assumed all responsibilities for future clinical development and commercialization of CDX-6114, with the exception of the completion of an extension study, CDX-6114-004, which was substantially completed in the fourth quarter of 2019. Other potential payments from Nestlé Health Science to us under the Nestlé Agreement include (i) development and approval milestones of up to $85.0 million, (ii) sales-based milestones of up to $250.0 million in the aggregate, which aggregate amount is achievable if net sales exceed $1.0 billion in a single year, and (iii) tiered royalties, at percentages ranging from the middle single digits to low double-digits, of net sales of product.
In October 2017, we also entered into a Strategic Collaboration Agreement (the “Strategic Collaboration Agreement”) with Nestlé Health Science pursuant to which we and Nestlé Health Science are collaborating to leverage the CodeEvolver® protein engineering technology platform to develop novel enzymes for Nestlé Health Science’s established Consumer Care and Medical Nutrition business areas. Under the Strategic Collaboration Agreement, we received an upfront payment of $1.2 million in 2017 and an incremental payment of $0.6 million in September 2018 for additional services. The Strategic Collaboration Agreement has been extended through December 2021.
In January 2020, we entered into a development agreement with Nestlé Health Science pursuant to which we and Nestlé Health Science are collaborating to advance a lead candidate targeting a gastro-intestinal disorder discovered through our Strategic Collaboration Agreement into pre-clinical and early clinical studies.
We recognized research and development fees of $1.7 million and $3.3 million for the three and six months ended June 30, 2020, respectively, compared to $1.2 million and $2.5 million in the three and six months ended June 30, 2019, respectively.
Strategic Collaboration Agreement
In April 2018, we entered into the Porton Agreement with Porton to license key elements of our biocatalyst technology for use in Porton’s global custom intermediate and API development and manufacturing business. Under the Porton Agreement, we are eligible to receive annual collaboration fees and research and development revenues. We received an initial collaboration fee of $0.5 million within 30 days of the effective date of the Porton Agreement, $1.5 million upon the first anniversary of the effective date of the agreement. In the second quarter of 2020, we recognized $1.0 million in research and development revenue on the second anniversary of the effective date of the agreement. We are eligible to receive $1.0 million on the third anniversary of the effective date of the agreement. We completed the technical transfer in the fourth quarter of 2018 and recognized $2.8 million in research and development revenue. We recognized revenue related to the functional license provided to Porton at a point in time when control of the license was transferred to the customer. We recognized research and development revenue related to the Porton Agreement of $1.0 million and $1.1 million in the three and six months ended June 30, 2020, respectively, and no revenue in the three and six months ended June 30, 2019.
Platform Technology Transfer and License Agreement
In May 2019, we entered into a Platform Technology Transfer and License Agreement (the “Novartis CodeEvolver® Agreement”) with Novartis Pharma AG (“Novartis”). The Agreement allows Novartis to use our proprietary CodeEvolver® protein engineering platform technology in the field of human healthcare. Under the Novartis CodeEvolver® Agreement, we are transferring our proprietary CodeEvolver® protein engineering platform technology to Novartis over approximately 23 months, starting with the date on which we commenced the technology transfer (the “Technology Transfer Period”). As a part of this technology transfer, the Company provided to Novartis our proprietary enzymes, proprietary protein engineering protocols and methods, and proprietary software algorithms. In addition, teams of the Company and Novartis scientists participated in technology training sessions and collaborative research projects at the our laboratories in Redwood City, California and at a designated Novartis laboratory in Basel, Switzerland. Upon completion of technology transfer, Novartis will have the CodeEvolver® protein engineering platform technology installed at its designated laboratory.
Pursuant to the agreement, we received an upfront payment of $5.0 million shortly after the effective date of the Novartis CodeEvolver® Agreement. In the second quarter of 2020, we completed the second technology milestone transfer under the agreement and became eligible to receive a milestone payment of $4.0 million, which we subsequently received in July 2020. We are eligible to receive an additional $5.0 million upon satisfactory completion of the third technology transfer milestone. In consideration for the continued disclosure and license of improvements to our technology and materials during a multi-year period that begins on the conclusion of the Technology Transfer Period, Novartis will pay us annual payments which amount to an additional $8.0 million. The Company also has the potential to receive quantity-dependent, usage payments for each API that is manufactured by Novartis using one or more enzymes that have been developed or are in development using the CodeEvolver® protein engineering platform technology during the period that begins on the conclusion of the Technology Transfer Period and ends on the expiration date of the last to expire licensed patent. These product-related usage payments, if any, will be paid by Novartis to us for each quarter that Novartis manufactures API using a CodeEvolver®-developed enzyme. The usage payments will be based on the total volume of API produced using the CodeEvolver®-developed enzyme. These usage payments can begin in the clinical stage and will extend throughout the commercial life of each API. Revenue for the combined initial license and technology transfer performance obligation, which is expected to occur over twenty-three months, is being recognized using a single measure of progress that depicts our performance in transferring control of the services, which is based on the ratio of level of effort incurred to date compared to the total estimated level of effort required to complete the performance obligation relating to the combined initial license and technology transfer. Revenue allocated to future improvements will be recognized during the Improvement Term. We recognized $0.9 million and $3.7 million in research and
development revenue for the three and six months ended June 30, 2020, respectively and no revenue in the three and six months ended June 30, 2019 from the Novartis CodeEvolver® Agreement.
License Agreement
In December 2019, we entered a license agreement with Roche Sequencing Solutions, Inc. (“Roche”) to provide Roche with our EvoT4 DNA™ ligase high-performance molecular diagnostic enzyme. The royalty bearing license grants Roche worldwide rights to include the EvoT4 DNA™ ligase in its nucleic acid sequencing products and workflows. Under the license agreement, we received an initial collaboration fee payment within 45 days of the effective date of the agreement and we are eligible to receive an additional milestone within 60 days after the completion of technology transfer. The agreement also contemplates milestone payments to the Company upon the achievement of various development and commercialization events and royalty payments from commercial sales of the enzyme. We recognized research and development fees of $0.2 million and $0.8 million for the three and six months ended June 30, 2020, respectively.
Strategic Collaboration and License Agreement
In March 2020, we entered into a Strategic Collaboration and License Agreement (the “Takeda Agreement”) with Shire Human Genetic Therapies, Inc., a wholly-owned subsidiary of Takeda Pharmaceutical Co. Ltd. (“Takeda”) under which we will research and develop protein sequences for use in gene therapy products for certain diseases (each, a “Field”) in accordance with each applicable program plan (each, a “Program Plan”).
In March 2020, we received an up-front nonrefundable cash payment of $8.5 million and we initiated activities under three Program Plans for Fabry Disease, Pompe Disease, and an unnamed blood factor deficiency respectively (the “Initial Programs”). We are primarily responsible for the research and development of protein sequences under the Program Plans (the “Protein Sequences”) and we are eligible to receive up to $22.3 million of research and development fees and pre-clinical milestone payments for the Initial Programs. Takeda has the right, but not the obligation, to develop, manufacture and commercialize gene therapy products that include nucleic acid sequences that encode the Protein Sequences (“Products”) at their expense. Takeda has the right to a certain number of additional disease indications (“Reserved Target Indications”) for a limited period in which Takeda may initiate a Program Plan for one or more Reserved Target Indications (“Additional/Option Program,” with Initial Programs, the “Programs”), provided, (a) if Takeda elects to initiate an Additional/Option Program while the parties are collaborating on three other Programs at the time of such election, or (b) if Takeda elects to initiate an Additional/Option Program using the last remaining Reserved Target Indication, then Takeda must pay us an option exercise fee to initiate such Additional/Option Program. We will own all rights to the Protein Sequences and corresponding nucleic acid sequences and related intellectual property rights and Takeda will own all rights to Products and related intellectual property rights.
We granted to Takeda an exclusive, worldwide, royalty-bearing, sublicensable license to use the Protein Sequences and their corresponding nucleic acid sequences to develop, manufacture and commercialize the applicable Products in the applicable Field. We also granted to Takeda a limited non-exclusive, worldwide, sublicensable license (a) to research the Protein Sequences within or outside the applicable Fields and (b) to research the Products outside of the applicable Fields, which such rights exclude Takeda's right to perform any Investigational New Drug-enabling activities. The licenses to research the Protein Sequences expire after a pre-determined period of time.
The term of the Takeda Agreement begins on the Effective Date and continues on a Product-by-Product and country-by-country basis, until the expiration of Takeda’s obligation to pay royalties to the Company with respect to that Product in that country. The Takeda Agreement expires in its entirety upon the expiration of Takeda’s obligation to pay royalties to the Company with respect to the Products in all countries worldwide. Subject to the terms of the Takeda Agreement, and after the first anniversary of the Effective Date with respect to the Initial Programs or after the first anniversary of confirmation of the applicable Program Plan by the parties with respect to the Additional/Option Programs, Takeda may terminate a Program upon specified prior written notice to the Company. Subject to the terms of the Takeda Agreement, Takeda may terminate the Takeda Agreement, at will, on a Product-by-Product basis upon specified prior written notice to the Company and the Takeda Agreement in its entirety upon specified prior written notice to the Company. Subject to the terms of the Takeda Agreement, Takeda may terminate the Takeda Agreement on a Product-by-Product basis for safety reasons upon specified prior written notice to the Company. Either party may terminate the Takeda Agreement for an uncured material breach by the other party, or the other party’s insolvency or bankruptcy.
We are eligible to receive certain development and commercialization milestone payments up to $100.0 million per target gene, the modulation of which would lead to the treatment of the disease indications by the applicable Product. We are also eligible to receive tiered royalties based on net sales of Products at percentages ranging from the middle-single digits to low single-digits. We recognized research and development revenue related to the Takeda Agreement of $5.7 million and $8.0 million in the three and six months ended June 30, 2020, respectively. As of June 30, 2020, we had a deferred revenue balance of $2.2 million from Takeda.
Master Collaboration and Research Agreement and Stock Purchase Agreement
In June 2020, we entered into a Stock Purchase Agreement with Molecular Assemblies, Inc. ("MAI") pursuant to which we purchased 1,587,050 shares of MAI's Series A preferred stock for $1.0 million in connection with the transaction, our chief executive officer, John Nicols, also joined MAI’s board of directors.
At the same time, we entered into a Master Collaboration and Research Agreement (the “MAI Agreement”) with MAI to engineer DNA polymerase enzymes to deliver differentiated and cost-effective solutions for the enzymatic synthesis of DNA. Under the MAI Agreement and its related statement of work (“SOW”), we will apply our CodeEvolver® protein engineering platform technology to improve the DNA polymerase enzymes that are critical for enzymatic DNA synthesis. Based on these services, the Company is eligible to earn additional shares of MAI's Series A preferred stock. MAI will combine its advanced chemistries with our enzymes to drive the process to commercialization. Under the MAI Agreement and its associated SOW, we will engage in research and development activities to engineer DNA polymerase enzymes for the enzymatic synthesis of DNA in exchange for monthly fees in the form of shares of Series A preferred stock in MAI. We are eligible to earn such non-monetary payments over ten to thirteen months, and any such shares would be issued thirty days in arrears after each calendar quarter-end. We are also eligible to receive amounts for bonuses, targets and milestones on achievement of timeline and project goals specified in the SOW. Payments for bonuses, targets and milestones on achievement of timeline and project goals are to be issued thirty days after the Company provides notification of completion. Under the MAI Agreement, the Company will have the right to use and sell the engineered enzymes to third parties for any purpose other than for the synthesis of native DNA. Under the MAI Agreement, we would make a $0.5 million payment to MAI upon our achievement of a milestone of $5.0 million in aggregate commercial sales to third parties of the engineered enzymes or any product incorporating or derived from the engineered enzymes for any purpose other than the synthesis of native DNA. The MAI Agreement contemplates that we and MAI will enter into a Commercialization and Enzyme Supply Agreement (the “CESA”) within six months following the completion of certain timelines specified in the SOW. In addition, we and MAI have agreed pursuant to the MAI Agreement to certain terms to be contained within the CESA in the event that the CESA becomes executed in the future. Those include: (a) that MAI would receive an exclusive license to use the DNA polymerase enzymes engineering by us under the MAI Agreement in the synthesis of native DNA and a non-exclusive license to use these enzymes for research and development on the synthesis of non-native DNA, and (b) we would become the exclusive manufacturer of these enzymes for MAI, its affiliates and licensees.
We recognized no research and development revenue in the three and six months ended June 30, 2020 from transactions with MAI.
XML 23 R13.htm IDEA: XBRL DOCUMENT v3.20.2
Cash Equivalents and Equity Securities
6 Months Ended
Jun. 30, 2020
Cash Equivalents and Marketable Securities [Abstract]  
Cash Equivalents and Equity Securities Cash Equivalents and Equity Securities
Cash equivalents at June 30, 2020 and December 31, 2019 consisted of the following (in thousands):
 June 30, 2020December 31, 2019
 Adjusted CostEstimated
Fair Value
Adjusted CostEstimated Fair Value
Money market funds (1)
$58,482  $58,482  $71,248  $71,248  
(1) Money market funds are classified in cash and cash equivalents on our unaudited condensed consolidated balance sheets.

As of June 30, 2020, the total cash and cash equivalents balance of $75.6 million was comprised of money market funds of $58.5 million and cash of $17.1 million held with major financial institutions worldwide. As of December 31, 2019, the total cash and cash equivalents balance of $90.5 million was comprised of money market funds of $71.2 million and cash of $19.3 million held with major financial institutions worldwide.
Investment in Equity Securities
No single investor in MAI holds 20% or more of the voting stock. Our investment represented approximately 4% of MAI's voting stock at the time of the transaction. Concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors, and we entered into the MAI Agreement pursuant to which we will provide technical services and expertise in exchange for compensation in the form of additional shares of voting preferred stock. Our investment was $1.0 million at June 30, 2020. For additional information, see Note 12, "Related Party Transactions."
XML 24 R14.htm IDEA: XBRL DOCUMENT v3.20.2
Fair Value Measurements
6 Months Ended
Jun. 30, 2020
Fair Value Disclosures [Abstract]  
Fair Value Measurements Fair Value Measurements
The following tables present the financial instruments that were measured at fair value on a recurring basis at June 30, 2020 and December 31, 2019 by level within the fair value hierarchy (in thousands):
 June 30, 2020
 Level 1Level 2Level 3Total
Money market funds $58,482  $—  $—  $58,482  

 December 31, 2019
 Level 1Level 2Level 3Total
Money market funds$71,248  $—  $—  $71,248  
XML 25 R15.htm IDEA: XBRL DOCUMENT v3.20.2
Balance Sheets Details
6 Months Ended
Jun. 30, 2020
Balance Sheets Details [Abstract]  
Balance Sheets Details Balance Sheets Details
Inventories
Inventories consisted of the following (in thousands):
June 30, 2020December 31, 2019
Raw materials$77  $ 
Work-in-process28  26  
Finished goods581  338  
    Inventories$686  $371  

Property and Equipment, net
Property and equipment, net consisted of the following (in thousands):
June 30, 2020December 31, 2019
Laboratory equipment$24,717  $23,561  
Leasehold improvements10,774  10,804  
Computer equipment and software3,135  3,016  
Office equipment and furniture1,115  1,461  
Construction in progress648  691  
Property and equipment40,389  39,533  
       Less: accumulated depreciation and amortization(33,567) (33,251) 
     Property and equipment, net$6,822  $6,282  
Goodwill
Goodwill had a carrying value of approximately $3.2 million as of June 30, 2020 and December 31, 2019.
Other Accrued Liabilities
Other accrued liabilities consisted of the following (in thousands):
June 30, 2020December 31, 2019
Accrued purchases $3,669  $4,386  
Accrued professional and outside service fees2,949  1,802  
Other325  352  
     Total$6,943  $6,540  
XML 26 R16.htm IDEA: XBRL DOCUMENT v3.20.2
Stock-based Compensation
6 Months Ended
Jun. 30, 2020
Share-based Payment Arrangement [Abstract]  
Stock-based Compensation Stock-based Compensation
Equity Incentive Plans
In June 2019, our board of directors (the "Board") and stockholders approved the 2019 Incentive Award Plan (the "2019 Plan"). The 2019 Plan superseded and replaced in its entirety our 2010 Equity Incentive Plan (the “2010 Plan”) which was effective in March 2010, and no further awards will be granted under the 2010 Plan; however, the terms and conditions of the 2010 Plan will continue to govern any outstanding awards thereunder. 
The 2010 Plan provided for the grant of incentive stock options, non-statutory stock options, restricted stock units ("RSUs"), restricted stock awards ("RSAs"), performance-contingent restricted stock units ("PSUs"), performance based options ("PBOs"), stock appreciation rights, and stock purchase rights to our employees, non-employee directors and consultants.
The number of shares of our common stock available for issuance under the 2019 Plan is equal to the sum of (i) 7,897,144 shares, and (ii) any shares subject to awards granted under the 2010 Plan that were outstanding as of April 22, 2019 and thereafter terminate, expire, lapse or are forfeited; provided that no more than 14,000,000 shares may be issued upon the exercise of incentive stock options (“ISOs”). In June 2019, 8.1 million shares authorized for issuance under the 2019 Plan were registered under the Securities Act of 1933, as amended (the “Securities Act”).
The 2019 Plan provides for the grant of stock options, including incentive stock options and non-qualified stock options, stock appreciation rights, restricted stock, restricted stock units, other stock or cash based awards and dividend equivalents to eligible employees and consultants of the Company or any parent or subsidiary, as well as members of the Board.
Stock Options
The option exercise price for incentive stock options must be at least 100% of the fair value of our common stock on the date of grant and the option exercise price for non-statutory stock options is 85% of the fair value of our common stock on the date of grant, as determined by the Board. If, at the time of a grant, the optionee directly or by attribution owns stock possessing more than 10% of the total combined voting power of all of our outstanding capital stock, the exercise price for these options must be at least 110% of the fair value of the underlying common stock. Stock options granted to employees generally have a maximum term of 10 years and vest over four years from the date of grant, of which 25% vest at the end of one year, and 75% vest monthly over the remaining three years. We may grant options with different vesting terms from time to time. Unless an employee's termination of service is due to disability or death, upon termination of service, any unexercised vested options will be forfeited at the end of three months or the expiration of the option, whichever is earlier.
Restricted Stock Units (RSUs)
We also grant employees RSUs, which generally vest over either a three year period with one-third of the shares subject to the RSUs vesting on each yearly anniversary of the vesting commencement date or over a four year period with 25% of the shares subject to the RSU vesting on each yearly anniversary of the vesting commencement date, in each case contingent upon such employee’s continued service on such vesting date. RSUs are generally subject to forfeiture if employment terminates prior to the release of vesting restrictions. We may grant RSUs with different vesting terms from time to time.
Performance-contingent Restricted Stock Units (PSUs) and Performance Based Options (PBOs)
We also grant our executives and our non-executive employees PSUs, and we grant our executives PBOs. The PSUs and PBOs vest based upon both the successful achievement of certain corporate operating milestones in specified timelines and continued employment through the applicable vesting date. When the performance goals are deemed to be probable of achievement for these types of awards, recognition of stock-based compensation expense commences. Once the number of shares eligible to vest is determined, those shares vest in two equal installments with 50% vesting upon achievement and the remaining 50% vesting on the first anniversary of achievement, in each case, subject to the recipient’s continued service through the applicable vesting date. If the performance goals are achieved at the threshold level, the number of shares eligible to vest in respect of the PSUs and PBOs would be equal to half the number of PSUs granted and one-quarter the number of shares underlying the PBOs granted. If the performance goals are achieved at the target level, the number of shares eligible to vest in respect of the PSUs and PBOs would be equal to the number of PSUs granted and half of the shares underlying the PBOs granted. If the performance goals are achieved at the superior level, the number of shares eligible to vest in respect of the PSUs would be equal to two times the number of PSUs granted and equal to the number of PBOs granted. The number of shares issuable upon achievement of the performance goals at the levels between the threshold and target levels for the PSUs and PBOs or between the target level and superior levels for the PSUs would be determined using linear interpolation. Achievement below the threshold level would result in no shares being eligible to vest in respect of the PSUs and PBOs.
In the first quarter of 2020, we awarded PSUs ("2020 PSUs") and PBOs ("2020 PBOs"), each of which commence vesting based upon the achievement of various weighted performance goals, including sustained revenue and performance enzyme growth, strategic advancements of biotherapeutics pipeline, safety and technology development. As of June 30, 2020, we estimated that the 2020 PSUs and 2020 PBOs performance goals would be achieved at 100% of the target level, and recognized expenses accordingly.
In 2019, we awarded PSUs ("2019 PSUs") and PBOs ("2019 PBOs"), each of which commenced vesting based upon the achievement of various weighted performance goals, including sustained revenue and performance enzyme growth, strategic advancement of biotherapeutics, cash balance and strategic plan development. In the first quarter of 2020, we determined that the 2019 PSUs and 2019 PBOs performance goals had been achieved at 106% of the target level, and recognized expenses accordingly. Accordingly, 50% of the shares underlying the 2019 PSUs and PBOs vested in the first quarter of 2020 and 50% of the shares underlying the 2019 PSUs and PBOs will vest in the first quarter of 2021, in each case subject to the recipient’s continued service on each vesting date.
In 2018, we awarded PSUs ("2018 PSUs") and PBOs ("2018 PBOs"), each of which commenced vesting based upon the achievement of various weighted performance goals, including core business revenue growth, cash balance, new licensing collaborations, new research and development service revenue arrangements, technology advancement and novel therapeutic enzymes advancement. In the first quarter of 2019, we determined that the 2018 PSUs and 2018 PBOs performance goals had been achieved at 118% of the target level, and recognized expenses accordingly. Accordingly, 50% of the shares underlying the 2018 PSUs and PBOs vested in the first quarter of 2019 and 50% of the shares underlying the 2018 PSUs and PBOs vested in the first quarter of 2020, in each case subject to the recipient’s continued service on each vesting date.
Stock-Based Compensation Expense
Stock-based compensation expense is included in the unaudited condensed consolidated statements of operations as follows (in thousands):
 Three Months Ended June 30,Six months ended June 30,
 2020201920202019
Research and development $471  $403  $894  $791  
Selling, general and administrative1,468  1,585  3,214  3,260  
   Total$1,939  $1,988  $4,108  $4,051  
The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations for the three and six months ended June 30, 2020 and 2019 (in thousands):
 Three Months Ended June 30,Six months ended June 30,
 2020201920202019
Stock options$575  $581  $1,116  $1,135  
RSUs and RSAs610  386  1,210  847  
PSUs296  316  627  707  
PBOs458  705  1,155  1,362  
   Total$1,939  $1,988  $4,108  $4,051  


In June 2020, we granted an option to purchase 60,000 shares of common stock to a non-employee as compensation for services. The estimated fair value of the grant was valued at $0.3 million using the Black-Scholes-Merton option pricing model with the following assumptions used to estimate the fair value of non-employee stock options: (i) volatility rate at 51.9%, (ii) risk-free interest rate of 0.4% and (iii) no expected dividend yield. The option vests over 2 years from the date of grant with 50% vesting after one year and the remaining 50% vesting monthly in the second year. We recognized stock-based compensation expense related to the non-employee of $4 thousand for the three and six months ended June 30, 2020.
As of June 30, 2020, unrecognized stock-based compensation expense, net of expected forfeitures, was $4.8 million related to unvested employee stock options, $0.2 million related to unvested non-employee stock options, $2.7 million related to unvested RSUs and RSAs, $1.1 million related to unvested PSUs, and $1.7 million related to unvested PBOs based on current estimates of the level of achievement. Stock-based compensation expense for these awards will be recognized through the year of 2024.
XML 27 R17.htm IDEA: XBRL DOCUMENT v3.20.2
Capital Stock
6 Months Ended
Jun. 30, 2020
Equity [Abstract]  
Capital Stock Capital Stock
Exercise of Options
For the six months ended June 30, 2020 and June 30, 2019, we issued 32,749 and 529,187 shares, respectively, upon option exercises at a weighted-average exercise price of $6.03 and $5.37 per share, respectively, with net cash proceeds of $0.2 million and $2.8 million, respectively.
Private Offering
In June 2019, we entered into a Securities Purchase Agreement with an affiliate of Casdin pursuant to which we issued and sold to Casdin 3,048,780 shares of our common stock at a purchase price of $16.40 per share. After deducting legal fees of $74 thousand from the Private Offering, our net proceeds were $49.9 million.
The Private Offering was exempt from registration pursuant to the exemption for transactions by an issuer not involving any public offering under Section 4(a)(2) the Securities Act, and Regulation D under the Securities Act.
XML 28 R18.htm IDEA: XBRL DOCUMENT v3.20.2
Commitments and Contingencies
6 Months Ended
Jun. 30, 2020
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingencies Commitments and Contingencies
Operating Leases
Our headquarters are located in Redwood City, California, where we occupy approximately 77,300 square feet of office and laboratory space in four buildings within the same business park of Metropolitan Life Insurance Company ("MetLife"). Our lease (“Lease”) with MetLife includes approximately 28,200 square feet of space located at 200 and 220 Penobscot Drive, Redwood City, California (the “Penobscot Space”), approximately 37,900 square feet of space located at 400 Penobscot Drive, Redwood City, California (the “Building 2 Space”), and approximately 11,200 square feet of space located at 501 Chesapeake Drive, Redwood City, California (the “501 Chesapeake Space”).
Until January 31, 2020, we also leased approximately 29,900 square feet of space located at 101 Saginaw Drive, Redwood City, California (the “Saginaw Space”). During the period January 1, 2020 through January 31, 2020, we subleased approximately 26,500 square feet of the Saginaw Space to Minerva Surgical, Inc. The lease and sublease for the Saginaw Space both expired at the end of January 2020. During the period from February 1, 2020 through April 30, 2020, we subleased approximately 3,400 square feet of the Saginaw Space from Minerva Surgical, Inc. The sublease expired at the end of April 2020.
We entered into the initial lease with MetLife for a portion of this space in 2004 and the lease has been amended multiple times since then to adjust space and terms of the lease ("Lease"). In February 2019, we entered into an Eighth Amendment to the Lease ( the “Eighth Amendment”) with MetLife with respect to the Penobscot Space, the Building 2 Space and the 501 Chesapeake Space to extend the term of the Lease for additional periods. Pursuant to the Eighth Amendment, the term of the lease of the Penobscot Space and the Building 2 Space has been extended through May 2027. The lease term for the 501 Chesapeake Space has been extended to May 2029. We have two consecutive options to extend the term of the lease for the Penobscot Space, the Building 2 Space and the 501 Chesapeake Space for an additional period of five years per option.
We are required to restore certain areas of the Redwood City facilities that we are renting to their original form. We are expensing the asset retirement obligation over the terms of the respective leases. We review the estimated obligation each reporting period and make adjustments if our estimates change. We recorded asset retirement obligations of $0.2 million as of June 30, 2020 and December 31, 2019, which are included in other liabilities on the unaudited condensed consolidated balance sheets. Accretion expense related to our asset retirement obligations was nominal.
Pursuant to the terms of the Lease, we exercised our right to deliver a letter of credit in lieu of a security deposit. The letter of credit is collateralized by deposit balances held by the bank in the amount of $1.1 million as of June 30, 2020 and December 31, 2019, and are recorded as non-current restricted cash on the unaudited condensed consolidated balance sheets.
Finance Leases
In December 2016, we entered into a three-year financing lease agreement with a third party supplier for the purchase of laboratory equipment that was partially financed through a finance lease of approximately $0.4 million. The lease became effective upon delivery of the equipment in February 2017, and term of the three-year lease was from February 2017 and expired in February 2020. This financing agreement was accounted for as a finance lease due to bargain purchase options at the end of the lease. In April 2017, we entered into a three-year financing lease agreement with a third-party supplier for the purchase of information technology equipment for approximately $0.3 million. The effective term of the three-year lease was from May 2017 and expired in April 2020.
Lease Costs and other information
Lease related costs were as follows (in thousands):
Three months ended June 30,Six months ended June 30,
 2020201920202019
Finance lease costs:
Amortization of right-of-use assets$45  $54  $99  $109  
Interest on lease obligations    
Finance lease costs46  57  100  115  
Operating lease cost1,032  1,100  2,100  2,278  
Short-term lease cost (1)
16  —  47  —  
Sublease income—  (254) (55) (465) 
Total lease cost$1,094  $903  $2,192  $1,928  
(1) Short-term lease costs on leases with terms of over one month and less than one year.
Other information related to non-cancellable finance leases and operating leases under non-cancellable subleases as of June 30, 2020 was as follows:
Operating Leases
Weighted-average remaining lease term (in years)7.2 years
Weighted-average discount rate6.6 %

Cash paid for amounts included in the measurement of lease obligations was as follows (in thousands):
Six months ended June 30,
20202019
Operating cash flows from operating leases$774  $1,633  
Operating cash flows from finance leases$—  $ 
Financing cash flows from finance leases$60  $119  


As of June 30, 2020, our maturity analysis of annual undiscounted cash flows of the non-cancellable finance and operating leases are as follows (in thousands):
Years ending December 31,Operating Leases
2020 (remaining 6 months)$2,042  
20214,197  
20224,285  
20234,589  
20244,726  
2025 and thereafter13,494  
Total minimum lease payments33,333  
Less: imputed interest(7,186) 
Lease Obligations$26,147  
Other Commitments
We enter into supply and service arrangements in the normal course of business. Supply arrangements are primarily for fixed-price manufacture and supply. Service agreements are primarily for the development of manufacturing processes and certain studies. Commitments under service agreements are subject to cancellation at our discretion which may require payment of certain cancellation fees. The timing of completion of service arrangements is subject to variability in estimates of the time required to complete the work.
The following table provides quantitative data regarding our other commitments. Future minimum payments reflect amounts that we expect to pay including potential obligations under services agreements subject to risk of cancellation by us (in thousands):
Other Commitment Agreement TypeAgreement DateFuture Minimum Payment
Manufacture and supply agreement with expected future payment date of December 2022April 2016$704  
Development and manufacturing services agreementsSeptember 20193,785  
Strategic Collaboration and License AgreementMarch 2020364  
Total other commitments$4,853  

Credit Facility
In June 30, 2017, we entered into a credit facility (the “Credit Facility”) consisting of term loans (“Term Debt”) up to $10.0 million, and advances (“Advances”) under a revolving line of credit ("Revolving Line of Credit") up to $5.0 million with an accounts receivable borrowing base of 80% of eligible accounts receivable. At June 30, 2020 and December 31, 2019, we have not drawn from the Credit Facility. We may draw on the Revolving Line of Credit at any time prior to the September 30, 2020 maturity date. On October 1, 2023, loans drawn under the Term Debt mature and the Revolving Line of Credit terminates. Loans made under the Term Debt bears interest through maturity at a variable rate based on the LIBOR plus 3.60%. Advances under the Revolving Line of Credit bear interest at a variable annual rate equal to the greater of (i) 1.00% above the prime rate and (ii) 5.00%.
Our obligations under the Credit Facility are secured by a lien on substantially all of our personal property other than our intellectual property. The Credit Facility includes a number of customary covenants and restrictive financial covenants including meeting minimum product revenue levels and maintaining certain minimum cash levels with the lender. The Credit Facility's financial covenants restrict the ability of the Company to transfer collateral, incur additional indebtedness, engage in mergers or acquisitions, pay dividends or make other distributions, make investments, create liens, sell assets, or sell certain assets held at foreign subsidiaries. A failure to comply with these covenants could permit the lender to exercise remedies against us and the collateral securing the Credit Facility, including foreclosure of our properties securing the Credit Facilities and our cash. At June 30, 2020, we were in compliance with the covenants for the Credit Facility.
The Credit Facility allows for interest-only payments on the Term Debt through November 1, 2021. Monthly payments of principal and interest on the Term Debt are required following the applicable amortization date. We may elect to prepay in full the Term Debt and Advances under the Revolving Line of Credit at any time.
Legal Proceedings
We are not currently a party to any material pending litigation or other material legal proceedings.
Indemnifications
We are required to recognize a liability for the fair value of any obligations we assume upon the issuance of a guarantee. We have certain agreements with licensors, licensees and collaborators that contain indemnification provisions. In such provisions, we typically agree to indemnify the licensor, licensee and collaborator against certain types of third party claims. The maximum amount of the indemnifications is not limited. We accrue for known indemnification issues when a loss is probable and can be reasonably estimated. There were no accruals for expenses related to indemnification issues for any periods presented.
Impact of COVID-19
We are subject to risks and uncertainties as a result of the current COVID-19 pandemic. The COVID-19 pandemic has presented a substantial public health and economic challenge around the world and is affecting our employees, communities and business operations, as well as the U.S. economy and other economies worldwide. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition will depend on future developments that are highly uncertain and cannot be accurately predicted, including the duration and severity of the pandemic and the extent and severity of the impact on our customers, new information that may emerge concerning COVID-19, the actions taken to contain it or treat its impact and the economic impact on local, regional, national and international markets.
To date, we and our collaboration partners have been able to continue to supply our enzymes to our customers worldwide. However, we are dependent on our manufacturing and logistics partners and consequently, disruptions in operations of our partners and customers may affect our ability to supply enzymes to our customers. Furthermore, our ability to provide future research and development ("R&D") services will continue to be impacted as a result of governmental orders and any disruptions in operations of our customers with whom we collaborate. We are continuing to assess the potential impact of the COVID-19 pandemic on our business and operations, including our product sales, R&D service revenue, expenses and manufacturing. However, we are unable to fully determine and quantify the extent to which this pandemic affected our total revenues due to complex accounting judgments.

In the U.S., the impact of COVID-19, including governmental orders ("Orders") governing the operation of businesses during the pandemic, caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Research and development operations for all other projects were temporarily suspended from mid-March 2020 through the end of April in accordance with these Orders. In May 2020, we initiated limited operations and gradually ramped up our R&D operations so that we are currently utilizing the majority of our normal R&D capacity. Additionally, we have resumed small scale manufacturing at our Redwood City pilot plant in May 2020.
Our future results of operations and liquidity could be adversely impacted by delays in payments of outstanding receivable amounts beyond normal payment terms, supply chain disruptions and uncertain demand, and the impact of any initiatives or programs that we may undertake to address financial and operations challenges faced by our customers. As of the date of issuance of these condensed consolidated financial statements, the extent to which the COVID-19 pandemic may materially impact our financial condition, liquidity, or results of operations is uncertain.
XML 29 R19.htm IDEA: XBRL DOCUMENT v3.20.2
Related Party
6 Months Ended
Jun. 30, 2020
Related Party Transactions [Abstract]  
Related Party Related Party
AstraZeneca PLC
Pam P. Cheng, a member of our board of directors for a three-year term expiring at our Annual Shareholder Meeting in June 2020, joined AstraZeneca PLC as Executive Vice President, Operations and Information Technology in June 2015. We sell biocatalyst products to AstraZeneca PLC and its controlled purchasing agents and contract manufacturers.
We recognized $20 thousand and $0.1 million in revenue in the three and six months ended June 30, 2020, respectively, compared to $0.4 million and $0.4 million in the three and six months ended June 30, 2019, respectively, from transactions with AstraZeneca PLC and its controlled purchasing agents and contract manufacturers. At June 30, 2020 and December 31, 2019, we had nominal and $0.3 million, respectively, of receivables from AstraZeneca PLC and its controlled purchasing agents and contract manufacturers, respectively.

Molecular Assemblies, Inc.

In June 2020, we entered into a Stock Purchase Agreement with Molecular Assemblies, Inc (“MAI”) pursuant to which we purchased 1,587,050 shares of Series A preferred stock for $1.0 million in MAI and, concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors.
At the same time, we entered into a Master Collaboration and Research Agreement (the “MAI Agreement”) with MAI to engineer DNA polymerase enzymes to deliver differentiated and cost-effective solutions for the enzymatic synthesis of DNA. Under the MAI Agreement and its related statement of work (“SOW”), we will apply our CodeEvolver® protein engineering platform technology to improve the DNA polymerase enzymes that are critical for enzymatic DNA synthesis.
Based on these services, we are eligible to earn additional Series A preferred stock of MAI. MAI will combine its advanced chemistries with our enzymes to drive the process to commercialization. Under the MAI Agreement and its associated SOW, we will engage in research and development activities to engineer DNA polymerase enzymes for the enzymatic synthesis of DNA and will receive monthly fees in the form of shares of Series A preferred stock in MAI. Such non-monetary payments will be earned over ten to thirteen months and issued thirty days in arrears after each calendar quarter-end. We are also eligible to receive amounts for bonuses, targets and milestones on achievement of timeline and project goals specified in the SOW. Payments for bonuses, targets and milestones on achievement of timeline and project goals are to be issued thirty days after the Company provides notification of completion. Under the MAI Agreement, we will have the right to use and sell the engineered enzymes to third parties for any purpose other than for the synthesis of native DNA. Under the MAI Agreement, we would make a $0.5 million payment to MAI on meeting a milestone of $5.0 million in aggregate commercial sales by the Company to third parties of the engineered enzymes or any product incorporating or derived from the engineered enzymes for any purpose other than the synthesis of native DNA. The MAI Agreement contemplates that we and MAI will enter into a Commercialization and Enzyme Supply Agreement (the “CESA”) within six months following the completion of certain timelines specified in the SOW. In addition, we and MAI have agreed pursuant to the MAI Agreement to certain terms to be contained within the CESA in the event that the CESA becomes executed in the future. Those include: (a) that MAI would receive an exclusive license to use the DNA polymerase enzymes engineering by us under the MAI Agreement in the synthesis of native DNA and a non-exclusive license to use these enzymes for research and development on the synthesis of non-native DNA, and (b) that we would become the exclusive manufacturer of these enzymes for MAI, its affiliates and licensees.
We recognized no research and development revenue in the three and six months ended June 30, 2020 from transactions with MAI.
XML 30 R20.htm IDEA: XBRL DOCUMENT v3.20.2
Segment, Geographical and Other Revenue Information
6 Months Ended
Jun. 30, 2020
Segment Reporting [Abstract]  
Segment, Geographical and Other Revenue Information Segment, Geographical and Other Revenue Information
Segment Information
We manage our business as two business segments: Performance Enzymes and Novel Biotherapeutics, which are based on our operating segments. Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the CODM, or decision making group, in deciding how to allocate resources, and in assessing performance. Our CODM is our Chief Executive Officer. Our business segments are primarily based on our organizational structure and our operating results as used by our CODM in assessing performance and allocating resources for the Company.
We report corporate-related expenses such as legal, accounting, information technology, and other costs that are not otherwise included in our reportable business segments as "Corporate costs." All items not included in income (loss) from operations are excluded from the business segments.
We manage our assets on a total company basis, not by business segment, as the majority of our operating assets are shared or commingled. Our CODM does not review asset information by business segment in assessing performance or allocating resources, and accordingly, we do not report asset information by business segment.
Performance Enzymes
We initially commercialized our CodeEvolver® protein engineering technology platform and products in the pharmaceuticals market, and to date this continues to be our largest market served. Our customers, which include many large global pharmaceutical companies, use our technology, products and services in their manufacturing processes and process development. We have also used the technology to develop customized enzymes for use in other industrial markets. These markets consist of several large industrial verticals, including food and food ingredients, animal feed, flavors, fragrances, and agricultural chemicals. We also use our technology to develop enzymes for customers using NGS and PCR/qPCR for in vitro molecular diagnostic and molecular biology research applications.
Novel Biotherapeutics
We are also targeting new opportunities in the pharmaceutical industry to discover, improve, and/or develop biotherapeutic drug candidates. We believe that our CodeEvolver® protein engineering platform technology can be used to discover novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. Similarly, we believe that we can deploy our platform technology to improve specific characteristics of a customer’s pre-existing biotherapeutic drug candidate, such as its activity, stability or immunogenicity. Most notable is our lead program for the potential treatment of PKU in humans. PKU is an inherited metabolic disorder in which the enzyme that converts the essential amino acid phenylalanine into tyrosine is deficient.
We have also developed a pipeline of other biotherapeutic drug candidates, which are in preclinical development, and in which we expect to continue to make additional investments with the aim of advancing additional product candidates targeting other therapeutic areas. In March 2020 we entered into the Takeda Agreement with Takeda under which we will research and develop protein sequences for use in gene therapy products for certain diseases.
Factors considered in determining the two reportable segments of the Company include the nature of business activities, the management structure directly accountable to our CODM for operating and administrative activities, availability of discrete financial information and information presented to the Board of Directors. Our CODM regularly reviews our segments and the approach provided by management for performance evaluation and resource allocation.
Operating expenses that directly support the segment activity are allocated based on segment headcount, revenue contribution or activity of the business units within the segments, based on the corporate activity type provided to the segment. The expense allocation excludes certain corporate costs that are separately managed from the segments. This provides the CODM with more meaningful segment profitability reporting to support operating decisions and allocate resources.
The following tables provide financial information by our reportable business segments along with a reconciliation to consolidated loss before income taxes (in thousands):
Three months ended June 30, 2020Three months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Revenues:
  Product revenue$4,504  $—  $4,504  $6,249  $—  $6,249  
  Research and development revenue3,002  7,461  10,463  4,340  1,730  6,070  
Total revenues7,506  7,461  14,967  10,589  1,730  12,319  
Costs and operating expenses:
  Cost of product revenue1,699  —  1,699  2,772  —  2,772  
  Research and development(1)
4,997  5,490  10,487  5,134  2,856  7,990  
  Selling, general and administrative(1)
2,375  621  2,996  2,362  561  2,923  
Total segment costs and operating expenses9,071  6,111  15,182  10,268  3,417  13,685  
Income (loss) from operations$(1,565) $1,350  $(215) $321  $(1,687) $(1,366) 
Corporate costs (2)
(5,316) (4,698) 
Depreciation and amortization(506) (427) 
Loss before income taxes$(6,037) $(6,491) 
(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.
(2) Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses.

Six months ended June 30, 2020Six months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Revenues:
Product revenue$9,604  $—  $9,604  $14,236  $—  $14,236  
Research and development revenue8,775  11,258  20,033  6,440  7,225  13,665  
Total revenues18,379  11,258  29,637  20,676  7,225  27,901  
Costs and operating expenses:
Cost of product revenue4,240  —  4,240  7,163  —  7,163  
Research and development(1)
10,693  10,415  21,108  9,576  6,172  15,748  
Selling, general and administrative(1)
4,720  1,213  5,933  4,463  1,078  5,541  
Total segment costs and operating expenses19,653  11,628  31,281  21,202  7,250  28,452  
Loss from operations(1,274) (370) (1,644) (526) (25) (551) 
Corporate costs (2)
(11,042) (10,271) 
Depreciation and amortization(998) (802) 
Loss before income taxes$(13,684) $(11,624) 
(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.
(2) Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses.
The following tables provides stock-based compensation expense included in loss from operations (in thousands):
Three months ended June 30,
20202019
Performance EnzymesNovel BiotherapeuticsCorporate costTotalPerformance EnzymesNovel BiotherapeuticsCorporate costTotal
Stock-based compensation$741  $252  $946  $1,939  $601  $197  $1,190  $1,988  
Six months ended June 30,
20202019
Performance EnzymesNovel BiotherapeuticsCorporate costTotalPerformance EnzymesNovel BiotherapeuticsCorporate costTotal
Stock-based compensation$1,496  $494  $2,118  $4,108  $1,237  $338  $2,476  $4,051  

Significant Customers
Customers that each accounted for 10% or more of our total revenues were as follows:
Percentage of Total Revenues for the
Three Months Ended June 30,Six Months Ended June 30,
2020201920202019
Customer A16%35%20%38%
Customer B12%14%11%26%
Customer C*11%**
Customer D**13%*
Customer E38%*27%*

Customers that each accounted for 10% or more of accounts receivable had balances as of the periods presented as follows:

Percentage of Accounts Receivables as of
June 30, 2020December 31, 2019
Customer A26 %38 %
Customer B11 %10 %
Customer D30 %*
Customer F10 %*

* Percentage was less than 10%
Geographical Information
Geographic revenues are identified by the location of the customer and consist of the following (in thousands):
 Three Months Ended June 30,Six months ended June 30,
2020201920202019
Revenues
Americas$6,906  $4,076  $12,131  $6,913  
EMEA3,314  4,741  9,285  12,466  
APAC4,747  3,502  8,221  8,522  
Total revenues$14,967  $12,319  $29,637  $27,901  

Identifiable long-lived assets by location was as follows (in thousands):
Long-lived assetsJune 30, 2020December 31, 2019
United States$6,822  $6,282  

Identifiable goodwill was as follows (in thousands):
As of June 30, 2020 and December 31, 2019
Performance EnzymesNovel BiotherapeuticsTotal
Goodwill$2,463  $778  $3,241  
XML 31 R21.htm IDEA: XBRL DOCUMENT v3.20.2
Allowance for Credit Losses
6 Months Ended
Jun. 30, 2020
Receivables [Abstract]  
Allowance for Credit Losses Allowance for Credit Losses
An analysis of the allowance for credit losses is as follows (in thousands):
Three and six months
ended
June 30, 2020
Beginning Balance January 1, 2020$34  
Write-offs charged against the allowance—  
Recoveries of amounts previously written off—  
Ending Balance June 30, 2020$34  
The following tables below summarizes accounts receivable by aging category (in thousands):

June 30, 2020
31-60 Days61-90 Days91 days and overTotal over 31 daysCurrentTotal balance
Accounts receivable$—  $1,000  $39  $1,039  $12,996  $14,035  

December 31, 2019
31-60 Days61-90 Days91 days and overTotal over 31 daysCurrentTotal balance
Accounts receivable$185  $ $65  $257  $8,806  $9,063  
XML 32 R22.htm IDEA: XBRL DOCUMENT v3.20.2
Basis of Presentation and Summary of Significant Accounting Policies (Policies)
6 Months Ended
Jun. 30, 2020
Accounting Policies [Abstract]  
Basis of Presentation and Principles of Consolidation
Basis of Presentation and Principles of Consolidation
The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States of America ("GAAP") and the applicable rules and regulations of the Securities and Exchange Commission ("SEC") for interim financial information. Accordingly, they do not include all the information and notes required by GAAP for complete financial statements. These interim unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto contained in our Annual Report on Form 10-K for the year ended December 31, 2019. The condensed consolidated balance sheet at December 31, 2019 has been derived from the audited consolidated financial statements at that date, but does not include all disclosures, including notes, required by GAAP for complete financial statements. The significant accounting policies used in preparation of the unaudited condensed consolidated financial statements for the three and six months ended June 30, 2020 are consistent with those discussed in Note 2 to the audited consolidated financial statements in the Company’s 2019 Annual Report on Form 10-K and are updated below as necessary.
Certain prior year amounts have been reclassified to conform to 2020 presentation. In June 2016, the Financial Accounting Standards Board (“FASB”) issued guidance requiring implementation of a new impairment model applicable to financial assets measured at amortized cost which, among other things required that accounts receivable, contract assets, unbilled receivables and related allowances be reclassified as financial assets.
Except as noted above, the unaudited condensed consolidated financial statements have been prepared on the same basis as the audited consolidated financial statements and, in the opinion of management, reflect all adjustments of a normal recurring nature considered necessary to present fairly our financial position as of June 30, 2020, results of our operations for the three and six months ended June 30, 2020 and 2019, changes in stockholders' equity for the three and six months ended June 30, 2020 and 2019, and cash flows for the six months ended June 30, 2020 and 2019. The interim results are not necessarily indicative of the results for any future interim period or for the entire year. The results of the six months ended June 30, 2020 reflect the adoption of the accounting standards including: Accounting Standard Update ("ASU") 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments which added a new impairment model applicable to our financial assets measured at amortized cost, and (ii) ASU No. 2017-04, Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment, which adjusts testing for goodwill impairment. See "Recently adopted accounting pronouncements" for details regarding the adoption of these standards.
The unaudited interim condensed consolidated financial statements include the accounts of Codexis, Inc. and its wholly owned subsidiaries. All significant intercompany balances and transactions have been eliminated in consolidation.
Use of Estimates
Use of Estimates
The preparation of our unaudited condensed consolidated financial statements in conformity with GAAP requires us to make estimates, judgments and assumptions that may affect the reported amounts of assets, liabilities, equity, revenues and expenses and related disclosure of contingent assets and liabilities. We regularly assess these estimates which primarily affect revenue recognition, the interest rate used to adjust the promised amount of consideration for the effects of significant financial assets (comprised of accounts receivable, contract assets, and unbilled receivables), inventories, goodwill arising out of business acquisitions, accrued liabilities, stock awards, and the valuation allowances associated with deferred tax assets. Actual results could differ from those estimates and such differences may be material to the unaudited condensed consolidated financial statements. The full extent to which the COVID-19 pandemic will directly or indirectly impact our business, results of operations and financial condition, including sales, expenses, reserves and allowances, manufacturing, research and development costs and employee-related amounts, will depend on future developments that are highly uncertain, including as a result of new information that may emerge concerning COVID-19 and the actions taken to contain or treat COVID-19, as well as the economic impact on local, regional, national and international customers, markets and economies.
Financing assets and Allowances Financial assets and AllowancesWe currently sell enzymes primarily to pharmaceutical and fine chemicals companies throughout the world by the extension of trade credit terms based on an assessment of each customer's financial condition. Trade credit terms are generally offered without collateral and may include an insignificant discount for prompt payment for specific customers. To manage our credit exposure, we perform ongoing evaluations of our customers' financial conditions. In addition, accounts receivable include amounts owed to us under our collaborative research and development agreements. We recognize accounts receivable at invoiced amounts and we maintain a valuation allowance as follows:
Allowance for credit losses from January 1, 2020
On and subsequent to January 1, 2020, our financial results reflect an impairment model (known as the “current expected credit loss model” or “CECL”) based on estimates and forecasts of future conditions requiring recognition of a lifetime of expected credit losses at inception on our financial assets measured at amortized costs which is comprised of accounts receivable, contract assets, and unbilled receivables. We have determined that our financial assets share similar risk characteristics including: (i) customer origination in the pharmaceutical and fine chemicals industry, (ii) similar historical credit loss pattern of customers (iii) no meaningful trade receivable differences in terms, (iv) similar historical credit loss experience and (v) our belief that the composition of certain assets are comparable to our historical portfolio used to develop loss history. As a result, we measured the allowance for credit loss (“ACL”) on a collective basis. Our ACL methodology considers how long the asset has been past due, the financial condition of the customers, which includes ongoing quarterly evaluations and assessments of changes in customer credit ratings, and other market data that we believe are relevant to the collectability of the assets. Nearly all financial assets are due from customers that are highly rated by major rating agencies and have a long history of no credit loss. We derive our ACL by establishing an impairment rate attributable to assets not yet identified as impaired.
We derive our ACL by initially relying on our historical financial asset loss rate which contemplates the full contractual life of the assets sharing similar risk characteristics, adjusted to reflect (i) the extent to which we have determined current conditions differ from the conditions that existed for the period over which historical loss information was evaluated and (ii) by taking into consideration the changes in certain macroeconomic historical and forecasted information. We apply the ACL to past due financial assets and record charges to the ACL as a provision to credit loss expense in the Statement of Operations. Financial assets we identify as uncollectible are also charged against the ACL. We adjust the impairment rate to reflect the extent to which we have determined current conditions differ from the conditions that existed for the period over which historical loss information was evaluated. Adjustments to historical loss information may be qualitative or quantitative in nature and reflect changes related to relevant data.
In the three and six months ended June 30, 2020, inputs to our CECL forecast incorporated forward-looking adjustments associated with the COVID-19 pandemic which we believe are appropriate to incorporate due to the uncertainty of the economic impact on cash flows from our financial assets.
Allowance for credit losses before January 1, 2020
Prior to January 1, 2020, the allowances for doubtful accounts reflected our best estimates of probable losses inherent in our accounts receivable, contract assets, and unbilled receivables balances. The allowance determination was based on known troubled accounts, historical experience, and other currently available evidence. Uncollectible accounts receivable were written off against the allowance for doubtful accounts when all efforts to collect them have been exhausted. Recoveries were recognized when they were received. Actual collection losses may differ from our estimates and could be material to our consolidated financial position, results of operations, and cash flows.
Investment in Equity Securities
Investment in Equity Securities
We own an equity investment in Molecular Assemblies, Inc. (“MAI”) which is a privately held company. Concurrently with our initial equity investment, John Nicols, our chief executive officer, joined MAI’s board of directors, and we entered into the MAI Agreement pursuant to which we will provide technical services and expertise in exchange for compensation in the form of additional shares of voting preferred stock. We and MAI envision entering into an arrangement to commercialize products developed under the MAI Agreement.
To analyze the fair value measurement of our equity investment in MAI, we perform a qualitative analysis using significant unobservable inputs. Significant changes to the unobservable inputs may result in a significantly higher or lower fair value estimate. We may value our equity investment based on significant recent arms-length equity transactions with sophisticated non-strategic unrelated new investors, providing the terms of these equity transactions are substantially similar to the equity transactions terms between the company and us. The impact of the difference in transaction terms on the market value of the portfolio company may be difficult or impossible to quantify.
We evaluate our investment for impairment when circumstances indicate that we may not be able to recover the carrying value. We impair our investment when we determine that there has been an “other-than-temporary” decline in the company's estimated fair value compared to its carrying value. We calculate the estimated fair value of the investment using information from the company, which may include:
Audited and unaudited financial statements;
Projected technological developments of the company;
Projected ability of the company to service its debt obligations;
If a deemed liquidation event were to occur;
Current fundraising transactions;
Current ability of the company to raise additional financing if needed;
Changes in the economic environment which may have a material impact on the operating results of the company;
Qualitative assessment of key management;
Contractual rights, obligations or restrictions associated with the investment; and
Other factors deemed relevant by our management to assess valuation.
The valuation may be reduced if the company's potential has deteriorated significantly. If the factors that led to a reduction in valuation are overcome, the valuation may be readjusted.
Goodwill
Goodwill
Goodwill represents the excess of consideration transferred over the fair value of net assets of businesses acquired and is assigned to reporting units. We test goodwill for impairment considering amongst other things, whether there have been sustained declines in the trading price of our stock on the Nasdaq Global Select Market. If we conclude it is more likely than not that the fair value of a reporting unit is less than its carrying amount, a quantitative fair value test is performed. We manage our business as two reporting units and we test goodwill for impairment at the reporting unit level. We allocated goodwill to the two reporting units using a relative fair value allocation methodology that primarily relied on our estimates of revenue and future earnings for each reporting unit. Using the relative fair value allocation methodology, we have determined that approximately 76% of goodwill was to be allocated to the Performance Enzymes segment and 24% allocated to the Novel Biotherapeutics segment. As a result of the calculation, $2.4 million of the goodwill is assigned to the Performance Enzymes segment and $0.8 million is assigned to the Novel Biotherapeutics segment. We test goodwill for impairment on an annual basis on the last day of the fourth fiscal quarter and, when specific circumstances dictate, between annual tests, by first assessing qualitative factors to determine whether it is more likely than not that the fair value of a reporting unit is less than its carrying amount. During 2020 and 2019, we did not record impairment charges related to goodwill. We test for goodwill impairment is as follows:
Goodwill impairment testing from January 1, 2020
On and subsequent to January 1, 2020, we test for goodwill impairment by comparing the fair value of each reporting unit to its respective carrying value. Using the relative fair value allocation methodology for assets and liabilities used in both of our reporting units, we compare the allocated carrying amount of each reporting unit’s net assets and the assigned goodwill to its fair value. If the fair value of the reporting unit exceeds its carrying amount, goodwill of the reporting unit is considered not impaired. Any excess of the reporting unit’s carrying amount of goodwill over its fair value is recognized as an impairment.
Goodwill impairment testing before January 1, 2020
Prior to January 1, 2020, the goodwill impairment test consisted of a two-step process. The first step of the goodwill impairment test, used to identify potential impairment, compared the fair value of each reporting unit to its carrying value. Using the relative fair value allocation methodology for assets and liabilities used in both of our reporting units, we compared the allocated carrying amount of each reporting unit’s net assets and the assigned goodwill to its fair value. If the fair value of the reporting unit exceeded its carrying amount, goodwill of the reporting unit was considered not impaired, and the second step of the impairment test was not required. The second step, if required, compared the implied fair value of the reporting unit’s goodwill with the carrying amount of that goodwill. Implied fair value was the excess of the fair value of the reporting unit over the fair value of all identified or allocated assets and liabilities. Any excess of the reporting unit’s carrying amount goodwill over the respective implied fair value was recognized as an impairment.
Interim Goodwill Impairment Testing
We tested goodwill for impairment in the quarter ended June 30, 2020. In late 2019, COVID-19 was reported to have surfaced and has since spread worldwide. The impact of COVID-19 has caused a decline in global and domestic macroeconomic conditions, the general deterioration of the U.S. economy and other economies worldwide, all of which may negatively impact our overall financial performance, driving a reduction in our cash flows. We believe that the impact of the COVID-19 pandemic was a triggering event that gave rise to the need to perform a goodwill impairment test. We tested for goodwill impairment by comparing the fair value of each reporting unit to its respective carrying value. We used the relative fair value allocation methodology for assets and liabilities used in both of our reporting units. We compared the allocated carrying amounts of each reporting unit’s net assets at June 30, 2020 and the assigned goodwill to its fair value at June 30, 2020. We concluded that there was no goodwill impairment at June 30, 2020.
Segment Reporting
Segment Reporting
We report two business segments, Performance Enzymes and Novel Biotherapeutics, which are based on our operating segments. Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the chief operating decision maker ("CODM"), or decision making group, in deciding how to allocate resources, and in assessing performance. Our CODM is our Chief Executive Officer. Our business segments are primarily based on our organizational structure and our operating results as used by our CODM in assessing performance and allocating resources for the Company. We do not allocate or evaluate assets by segment.
The Novel Biotherapeutics segment focuses on new opportunities in the pharmaceutical industry to discover or improve novel biotherapeutic drug candidates that will target human diseases that are in need of improved therapeutic interventions. The Performance Enzymes segment consists of protein catalyst products and services with focus on pharmaceutical, food, molecular diagnostics, and other industrial markets.
Segment Information
We manage our business as two business segments: Performance Enzymes and Novel Biotherapeutics, which are based on our operating segments. Operating segments are defined as components of an enterprise about which separate financial information is available that is evaluated regularly by the CODM, or decision making group, in deciding how to allocate resources, and in assessing performance. Our CODM is our Chief Executive Officer. Our business segments are primarily based on our organizational structure and our operating results as used by our CODM in assessing performance and allocating resources for the Company.
We report corporate-related expenses such as legal, accounting, information technology, and other costs that are not otherwise included in our reportable business segments as "Corporate costs." All items not included in income (loss) from operations are excluded from the business segments.
We manage our assets on a total company basis, not by business segment, as the majority of our operating assets are shared or commingled. Our CODM does not review asset information by business segment in assessing performance or allocating resources, and accordingly, we do not report asset information by business segment.
Income Taxes
Income Taxes
Changes to Tax Law
On March 27, 2020, the Coronavirus Aid, Relief, and Economic Security Act (“CARES Act”), P.L. 116-136,was passed into law, amending portions of certain relevant US tax laws. The CARES Act includes a number of federal income tax law changes, including, but not limited to: (i) permitting net operating loss carrybacks to offset 100% of taxable income for taxable years beginning before 2021, (ii) accelerating alternative minimum tax credit refunds, (iii) temporarily increasing the allowable business interest deduction from 30% to 50% of adjusted taxable income, and (iv) providing a technical correction for depreciation related to qualified improvement property. The Company is currently evaluating if it will claim the Employee Retention Credit and apply for payroll tax deferrals under the CARES Act.
Accounting Pronouncements
Accounting Pronouncements
Recently adopted accounting pronouncements
In June 2016, the FASB issued ASU 2016-13, Financial Instruments - Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments, which amends the FASB's guidance on the impairment of financial instruments. The standard adds a new impairment model, known as CECL, which replaces the probable loss model. The CECL impairment model is based on estimates and forecasts of future conditions which requires recognition of a lifetime of expected credit losses at inception on financial assets measured at amortized costs. Our financial assets measured at amortized cost are comprised of accounts receivable, contract assets, and unbilled receivables. We adopted the new standard in the first quarter of 2020 using a modified retrospective approach requiring a cumulative-effect adjustment to the opening accumulated deficit as of the date of adoption. The ASU establishes a new valuation account “allowance for credit losses” replacing the “allowance for doubtful accounts” in the consolidated balance sheet, which is used to adjust the amortized cost basis of assets in presentation of the net amount expected to be collected. The adoption required certain additional disclosures but had no other impact on our unaudited condensed consolidated financial statements.
In January 2017, the FASB issued ASU No. 2017-04, Intangibles - Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment. The amendments eliminate Step 2 from the goodwill impairment test. The annual, or interim, goodwill impairment test is performed by comparing the fair value of a reporting unit to its carrying amount. An impairment charge should be recognized for the amount by which the carrying amount exceeds the reporting unit’s fair value; however, the loss recognized should not exceed the total amount of goodwill allocated to that reporting unit. In addition, income tax effects from any tax-deductible goodwill on the carrying amount of the reporting unit should be considered when measuring the goodwill impairment loss, if applicable. The amendments eliminate the requirements for any reporting unit with a zero or negative carrying amount to perform a qualitative assessment, and if it fails that qualitative test, to perform Step 2 of the goodwill impairment test. An entity still has the option to perform the qualitative assessment for a reporting unit to determine if the quantitative impairment test is necessary. We adopted the standard in the first quarter of 2020 using a prospective approach. The adoption required certain additional disclosures but had no impact on our unaudited condensed consolidated financial statements.
In August 2018, the FASB issued ASU 2018-13, Fair Value Measurement (Topic 820): Disclosure Framework—Changes to the Disclosure Requirements for Fair Value Measurement. The primary focus of the standard is to improve the effectiveness of the disclosure requirements for fair value measurements. The changes affect all companies that are required to include fair value measurement disclosures. The standard requires the use of the prospective method of transition for disclosures related to changes in unrealized gains and losses, the range and weighted average of significant unobservable inputs used to develop fair value measurements categorized within Level 3 of the fair value hierarchy, and narrative description of measurement uncertainty. All other amendments in the standard are required to be adopted retrospectively. We adopted the standard in the first quarter of 2020 and the adoption had no impact on our unaudited condensed consolidated financial statements and related disclosures.
In November 2018, the FASB issued ASU 2018-18, Collaborative Arrangements (Topic 808): Clarifying the Interaction Between Topic 808 and Topic 606. ASU 2018-18 provides guidance on how to assess whether certain transactions between collaborative arrangement participants should be accounted for within the revenue recognition standard. The standard also provides more comparability in the presentation of revenue for certain transactions between collaborative arrangement participants. The standard is to be applied retrospectively to the date of the initial application of Topic 606 which also requires recognition of the cumulative effect of applying the amendments as an adjustment to the opening balance of retained earnings of the later or the earliest annual period presented and the annual period inclusive of the initial application of Topic 606. We adopted the standard in the first quarter of 2020. The adoption will adjust certain annual disclosures but had no impact on our unaudited condensed consolidated financial statements and related disclosures.
Recently issued accounting pronouncements not yet adopted
From time to time, new accounting pronouncements are issued by the FASB or other standards setting bodies that are adopted by us as of the specified effective date. Unless otherwise discussed, we believe that the impact of recently issued standards that are not yet effective will not have a material impact on our unaudited condensed consolidated financial statements upon adoption.
In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes which is intended to simplify various aspects related to accounting for income taxes. The standard is effective for fiscal years, and interim periods within those years, beginning after December 15, 2020, with early adoption permitted. The standard will be adopted upon the effective date for us beginning January 1, 2021. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
In March 2020, the FASB issued ASU 2020-04, Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting. The standard provides optional expedients and exceptions for applying GAAP to contracts, hedging relationships, and other transactions in which the reference LIBOR or another reference rate are expected to be discontinued as a result of the Reference Rate Reform. The standard is effective for all entities. The standard may be adopted as of any date from the beginning of an interim period that includes or is subsequent to March 12, 2020 through December 31, 2022. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
In May 2020, the Securities and Exchange Commission formally adopted amendments to financial disclosure regulations regarding the acquisition and disposition of certain business and among other things, amends the definition of a “significant subsidiary” by altering prescribed significance tests under Rule 1-02(w) of Regulation S-X, as well as under Rule 405 of the Securities Act of 1933 and Rule 12b-2 under the Securities Exchange Act of 1934. The amendments apply to reports and information filings as of January 1, 2021, with early adoption permitted. The effect of adoption will adjust certain annual disclosures but we expect no impact on our consolidated financial statements.
XML 33 R23.htm IDEA: XBRL DOCUMENT v3.20.2
Revenue Recognition (Tables)
6 Months Ended
Jun. 30, 2020
Revenue from Contract with Customer [Abstract]  
Disaggregation of revenue The following table provides information about disaggregated revenue from contracts with customers into the nature of the products and services and geographic regions, and includes a reconciliation of the disaggregated revenue with reportable segments. The geographic regions that are tracked are the Americas (United States, Canada and Latin America), EMEA (Europe, Middle East and Africa), and APAC (Australia, New Zealand, Southeast Asia and China).
Segment information is as follows (in thousands):
Three months ended June 30, 2020Three months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Major products and service:
       Product Revenue$4,504  $—  $4,504  $6,249  $—  $6,249  
Research and development revenue3,002  7,461  10,463  4,340  1,730  6,070  
Total revenues$7,506  $7,461  $14,967  $10,589  $1,730  $12,319  
Primary geographical markets:
Americas
$1,173  $5,733  $6,906  $4,076  $—  $4,076  
EMEA
1,586  1,728  3,314  3,011  1,730  4,741  
APAC
4,747  —  4,747  3,502  —  3,502  
Total revenues$7,506  $7,461  $14,967  $10,589  $1,730  $12,319  

Six months ended June 30, 2020Six months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Major products and service:
Product revenue$9,604  $—  $9,604  $14,236  $—  $14,236  
Research and development revenue8,775  11,258  20,033  6,440  7,225  13,665  
Total revenues$18,379  $11,258  $29,637  $20,676  $7,225  $27,901  
Primary geographical markets:
Americas$4,171  $7,960  $12,131  $6,913  $—  $6,913  
EMEA5,987  3,298  9,285  5,241  7,225  12,466  
APAC8,221  —  8,221  8,522  —  8,522  
Total revenues$18,379  $11,258  $29,637  $20,676  $7,225  $27,901  
Contract with customer
The following table presents balances of contract assets, unbilled receivables, contract costs, and contract liabilities (in thousands):
June 30, 2020December 31, 2019
Contract Assets$—  $1,027  
Unbilled receivables$12,412  $10,099  
Contract Costs$172  $—  
Contract Liabilities: Deferred Revenue$5,045  $2,044  
During the three and six months ended June 30, 2020 and 2019, we recognized the following revenues (in thousands):
Three months ended June 30,Six months ended June 30,
2020201920202019
Amounts included in contract liabilities at the beginning of the period:
     Performance obligations satisfied$4,272  $1,367  $57  $3,752  
Changes in the period:
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods1,357  (92) 637  43  
Performance obligations satisfied from new activities in the period - contract revenue9,338  11,044  28,943  24,106  
Total revenues$14,967  $12,319  $29,637  $27,901  
Performance obligation, expected timing of satisfaction
The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting periods. The estimated revenue does not include contracts with original durations of one year or less, amounts of variable consideration attributable to royalties, or contract renewals that are unexercised as of June 30, 2020.
The balances in the table below are partially based on judgments involved in estimating future orders from customers subject to the exercise of material rights pursuant to respective contracts (in thousands):
Remainder of 202020212022 and ThereafterTotal
Product Revenue$567  $385  $1,883  $2,835  
Research and development revenue1,107  624  479  2,210  
Total revenues$1,674  $1,009  $2,362  $5,045  
XML 34 R24.htm IDEA: XBRL DOCUMENT v3.20.2
Net loss per Share (Tables)
6 Months Ended
Jun. 30, 2020
Earnings Per Share [Abstract]  
Securities not included in the net loss per common share calculations The following shares were not included in the computation of diluted net loss per share (in thousands):
 Three months ended June 30,Six months ended June 30,
 2020201920202019
Shares issuable under the Equity Incentive Plan5,2896,2545,2896,254
XML 35 R25.htm IDEA: XBRL DOCUMENT v3.20.2
Cash Equivalents and Equity Securities (Tables)
6 Months Ended
Jun. 30, 2020
Cash Equivalents and Marketable Securities [Abstract]  
Schedule of cash equivalents
Cash equivalents at June 30, 2020 and December 31, 2019 consisted of the following (in thousands):
 June 30, 2020December 31, 2019
 Adjusted CostEstimated
Fair Value
Adjusted CostEstimated Fair Value
Money market funds (1)
$58,482  $58,482  $71,248  $71,248  
(1) Money market funds are classified in cash and cash equivalents on our unaudited condensed consolidated balance sheets.
XML 36 R26.htm IDEA: XBRL DOCUMENT v3.20.2
Fair Value Measurements (Tables)
6 Months Ended
Jun. 30, 2020
Fair Value Disclosures [Abstract]  
Summary of financial instruments measured at fair value on a recurring basis
The following tables present the financial instruments that were measured at fair value on a recurring basis at June 30, 2020 and December 31, 2019 by level within the fair value hierarchy (in thousands):
 June 30, 2020
 Level 1Level 2Level 3Total
Money market funds $58,482  $—  $—  $58,482  

 December 31, 2019
 Level 1Level 2Level 3Total
Money market funds$71,248  $—  $—  $71,248  
XML 37 R27.htm IDEA: XBRL DOCUMENT v3.20.2
Balance Sheets Details (Tables)
6 Months Ended
Jun. 30, 2020
Balance Sheets Details [Abstract]  
Schedule of inventory components
Inventories consisted of the following (in thousands):
June 30, 2020December 31, 2019
Raw materials$77  $ 
Work-in-process28  26  
Finished goods581  338  
    Inventories$686  $371  
Schedule of property and equipment, net
Property and equipment, net consisted of the following (in thousands):
June 30, 2020December 31, 2019
Laboratory equipment$24,717  $23,561  
Leasehold improvements10,774  10,804  
Computer equipment and software3,135  3,016  
Office equipment and furniture1,115  1,461  
Construction in progress648  691  
Property and equipment40,389  39,533  
       Less: accumulated depreciation and amortization(33,567) (33,251) 
     Property and equipment, net$6,822  $6,282  
Schedule of other accrued liabilities
Other accrued liabilities consisted of the following (in thousands):
June 30, 2020December 31, 2019
Accrued purchases $3,669  $4,386  
Accrued professional and outside service fees2,949  1,802  
Other325  352  
     Total$6,943  $6,540  
XML 38 R28.htm IDEA: XBRL DOCUMENT v3.20.2
Stock-based Compensation (Tables)
6 Months Ended
Jun. 30, 2020
Share-based Payment Arrangement [Abstract]  
Schedule of stock-based compensation expense
Stock-based compensation expense is included in the unaudited condensed consolidated statements of operations as follows (in thousands):
 Three Months Ended June 30,Six months ended June 30,
 2020201920202019
Research and development $471  $403  $894  $791  
Selling, general and administrative1,468  1,585  3,214  3,260  
   Total$1,939  $1,988  $4,108  $4,051  
Schedule of stock-based compensation expense by security types
The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations for the three and six months ended June 30, 2020 and 2019 (in thousands):
 Three Months Ended June 30,Six months ended June 30,
 2020201920202019
Stock options$575  $581  $1,116  $1,135  
RSUs and RSAs610  386  1,210  847  
PSUs296  316  627  707  
PBOs458  705  1,155  1,362  
   Total$1,939  $1,988  $4,108  $4,051  
XML 39 R29.htm IDEA: XBRL DOCUMENT v3.20.2
Commitments and Contingencies (Tables)
6 Months Ended
Jun. 30, 2020
Commitments and Contingencies Disclosure [Abstract]  
Lease cost
Lease related costs were as follows (in thousands):
Three months ended June 30,Six months ended June 30,
 2020201920202019
Finance lease costs:
Amortization of right-of-use assets$45  $54  $99  $109  
Interest on lease obligations    
Finance lease costs46  57  100  115  
Operating lease cost1,032  1,100  2,100  2,278  
Short-term lease cost (1)
16  —  47  —  
Sublease income—  (254) (55) (465) 
Total lease cost$1,094  $903  $2,192  $1,928  
(1) Short-term lease costs on leases with terms of over one month and less than one year.
Other information related to non-cancellable finance leases and operating leases under non-cancellable subleases as of June 30, 2020 was as follows:
Operating Leases
Weighted-average remaining lease term (in years)7.2 years
Weighted-average discount rate6.6 %

Cash paid for amounts included in the measurement of lease obligations was as follows (in thousands):
Six months ended June 30,
20202019
Operating cash flows from operating leases$774  $1,633  
Operating cash flows from finance leases$—  $ 
Financing cash flows from finance leases$60  $119  
Operating lease maturity
As of June 30, 2020, our maturity analysis of annual undiscounted cash flows of the non-cancellable finance and operating leases are as follows (in thousands):
Years ending December 31,Operating Leases
2020 (remaining 6 months)$2,042  
20214,197  
20224,285  
20234,589  
20244,726  
2025 and thereafter13,494  
Total minimum lease payments33,333  
Less: imputed interest(7,186) 
Lease Obligations$26,147  
Finance lease liability
As of June 30, 2020, our maturity analysis of annual undiscounted cash flows of the non-cancellable finance and operating leases are as follows (in thousands):
Years ending December 31,Operating Leases
2020 (remaining 6 months)$2,042  
20214,197  
20224,285  
20234,589  
20244,726  
2025 and thereafter13,494  
Total minimum lease payments33,333  
Less: imputed interest(7,186) 
Lease Obligations$26,147  
Schedule of supply and service commitments
The following table provides quantitative data regarding our other commitments. Future minimum payments reflect amounts that we expect to pay including potential obligations under services agreements subject to risk of cancellation by us (in thousands):
Other Commitment Agreement TypeAgreement DateFuture Minimum Payment
Manufacture and supply agreement with expected future payment date of December 2022April 2016$704  
Development and manufacturing services agreementsSeptember 20193,785  
Strategic Collaboration and License AgreementMarch 2020364  
Total other commitments$4,853  
XML 40 R30.htm IDEA: XBRL DOCUMENT v3.20.2
Segment, Geographical and Other Revenue Information (Tables)
6 Months Ended
Jun. 30, 2020
Segment Reporting [Abstract]  
Schedule of segment reporting
The following tables provide financial information by our reportable business segments along with a reconciliation to consolidated loss before income taxes (in thousands):
Three months ended June 30, 2020Three months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Revenues:
  Product revenue$4,504  $—  $4,504  $6,249  $—  $6,249  
  Research and development revenue3,002  7,461  10,463  4,340  1,730  6,070  
Total revenues7,506  7,461  14,967  10,589  1,730  12,319  
Costs and operating expenses:
  Cost of product revenue1,699  —  1,699  2,772  —  2,772  
  Research and development(1)
4,997  5,490  10,487  5,134  2,856  7,990  
  Selling, general and administrative(1)
2,375  621  2,996  2,362  561  2,923  
Total segment costs and operating expenses9,071  6,111  15,182  10,268  3,417  13,685  
Income (loss) from operations$(1,565) $1,350  $(215) $321  $(1,687) $(1,366) 
Corporate costs (2)
(5,316) (4,698) 
Depreciation and amortization(506) (427) 
Loss before income taxes$(6,037) $(6,491) 
(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.
(2) Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses.

Six months ended June 30, 2020Six months ended June 30, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Revenues:
Product revenue$9,604  $—  $9,604  $14,236  $—  $14,236  
Research and development revenue8,775  11,258  20,033  6,440  7,225  13,665  
Total revenues18,379  11,258  29,637  20,676  7,225  27,901  
Costs and operating expenses:
Cost of product revenue4,240  —  4,240  7,163  —  7,163  
Research and development(1)
10,693  10,415  21,108  9,576  6,172  15,748  
Selling, general and administrative(1)
4,720  1,213  5,933  4,463  1,078  5,541  
Total segment costs and operating expenses19,653  11,628  31,281  21,202  7,250  28,452  
Loss from operations(1,274) (370) (1,644) (526) (25) (551) 
Corporate costs (2)
(11,042) (10,271) 
Depreciation and amortization(998) (802) 
Loss before income taxes$(13,684) $(11,624) 
(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.
(2) Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses.
The following tables provides stock-based compensation expense included in loss from operations (in thousands):
Three months ended June 30,
20202019
Performance EnzymesNovel BiotherapeuticsCorporate costTotalPerformance EnzymesNovel BiotherapeuticsCorporate costTotal
Stock-based compensation$741  $252  $946  $1,939  $601  $197  $1,190  $1,988  
Six months ended June 30,
20202019
Performance EnzymesNovel BiotherapeuticsCorporate costTotalPerformance EnzymesNovel BiotherapeuticsCorporate costTotal
Stock-based compensation$1,496  $494  $2,118  $4,108  $1,237  $338  $2,476  $4,051  
Schedule of customers that contributed 10% or more of total accounts receivable
Significant Customers
Customers that each accounted for 10% or more of our total revenues were as follows:
Percentage of Total Revenues for the
Three Months Ended June 30,Six Months Ended June 30,
2020201920202019
Customer A16%35%20%38%
Customer B12%14%11%26%
Customer C*11%**
Customer D**13%*
Customer E38%*27%*

Customers that each accounted for 10% or more of accounts receivable had balances as of the periods presented as follows:

Percentage of Accounts Receivables as of
June 30, 2020December 31, 2019
Customer A26 %38 %
Customer B11 %10 %
Customer D30 %*
Customer F10 %*
* Percentage was less than 10%
Schedule of revenues by geographical area
Geographic revenues are identified by the location of the customer and consist of the following (in thousands):
 Three Months Ended June 30,Six months ended June 30,
2020201920202019
Revenues
Americas$6,906  $4,076  $12,131  $6,913  
EMEA3,314  4,741  9,285  12,466  
APAC4,747  3,502  8,221  8,522  
Total revenues$14,967  $12,319  $29,637  $27,901  
Schedule of long-lived assets by geographical area
Identifiable long-lived assets by location was as follows (in thousands):
Long-lived assetsJune 30, 2020December 31, 2019
United States$6,822  $6,282  
Schedule of intangible assets and goodwill
Identifiable goodwill was as follows (in thousands):
As of June 30, 2020 and December 31, 2019
Performance EnzymesNovel BiotherapeuticsTotal
Goodwill$2,463  $778  $3,241  
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.20.2
Allowance for Credit Losses (Tables)
6 Months Ended
Jun. 30, 2020
Receivables [Abstract]  
Analysis of allowance for credit losses
An analysis of the allowance for credit losses is as follows (in thousands):
Three and six months
ended
June 30, 2020
Beginning Balance January 1, 2020$34  
Write-offs charged against the allowance—  
Recoveries of amounts previously written off—  
Ending Balance June 30, 2020$34  
Summary of accounts receivable by aging
The following tables below summarizes accounts receivable by aging category (in thousands):

June 30, 2020
31-60 Days61-90 Days91 days and overTotal over 31 daysCurrentTotal balance
Accounts receivable$—  $1,000  $39  $1,039  $12,996  $14,035  

December 31, 2019
31-60 Days61-90 Days91 days and overTotal over 31 daysCurrentTotal balance
Accounts receivable$185  $ $65  $257  $8,806  $9,063  
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.20.2
Description of Business (Details)
$ in Thousands
1 Months Ended 6 Months Ended
Jun. 30, 2020
USD ($)
program
shares
Mar. 31, 2020
USD ($)
Dec. 31, 2018
USD ($)
Jun. 30, 2020
USD ($)
shares
Jun. 30, 2019
USD ($)
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]          
Payments to acquire other investments       $ 1,000 $ 0
Molecular Assemblies, Inc. [Member] | Series A Preferred Stock [Member]          
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]          
Number of shares acquired in an equity method investment | shares 1,587,050     1,587,050  
Payments to acquire other investments $ 1,000        
Nestec Ltd. (Nestle Health Sciences) [Member] | CDX-6114 [Member] | Collaborative Arrangement [Member]          
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]          
Milestone payment amount     $ 1,000    
Duration to pay after milestone achievement (in days)     60 days    
Takeda [Member]          
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]          
Number of initial programs | program 3        
Number of additional programs | program 4        
One-time, non-refundable cash payment   $ 8,500      
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.20.2
Basis of Presentation and Summary of Significant Accounting Policies (Details)
6 Months Ended
Jun. 30, 2020
USD ($)
Jun. 30, 2020
USD ($)
reportingUnit
Jun. 30, 2020
USD ($)
segment
Dec. 31, 2019
USD ($)
New Accounting Pronouncements or Change in Accounting Principle [Line Items]        
Number of reporting units | reportingUnit   2    
Goodwill $ 3,241,000 $ 3,241,000 $ 3,241,000 $ 3,241,000
Goodwill impairment $ 0      
Number of reportable segments   2 2  
Performance Enzymes [Member]        
New Accounting Pronouncements or Change in Accounting Principle [Line Items]        
Goodwill, allocated percent 76.00% 76.00% 76.00%  
Goodwill $ 2,400,000 $ 2,400,000 $ 2,400,000  
Novel Biotherapeutics [Member]        
New Accounting Pronouncements or Change in Accounting Principle [Line Items]        
Goodwill, allocated percent 24.00% 24.00% 24.00%  
Goodwill $ 800,000 $ 800,000 $ 800,000  
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.20.2
Revenue Recognition - Disaggregation of Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Disaggregation of Revenue [Line Items]        
Total revenues $ 14,967 $ 12,319 $ 29,637 $ 27,901
Americas [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 6,906 4,076 12,131 6,913
EMEA [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 3,314 4,741 9,285 12,466
APAC [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 4,747 3,502 8,221 8,522
Product Sales [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 4,504 6,249 9,604 14,236
Research and Development Revenue [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 10,463 6,070 20,033 13,665
Performance Enzymes [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 7,506 10,589 18,379 20,676
Performance Enzymes [Member] | Americas [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 1,173 4,076 4,171 6,913
Performance Enzymes [Member] | EMEA [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 1,586 3,011 5,987 5,241
Performance Enzymes [Member] | APAC [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 4,747 3,502 8,221 8,522
Performance Enzymes [Member] | Product Sales [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 4,504 6,249 9,604 14,236
Performance Enzymes [Member] | Research and Development Revenue [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 3,002 4,340 8,775 6,440
Novel Biotherapeutics [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 7,461 1,730 11,258 7,225
Novel Biotherapeutics [Member] | Americas [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 5,733 0 7,960 0
Novel Biotherapeutics [Member] | EMEA [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 1,728 1,730 3,298 7,225
Novel Biotherapeutics [Member] | APAC [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 0 0 0 0
Novel Biotherapeutics [Member] | Product Sales [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues 0 0 0 0
Novel Biotherapeutics [Member] | Research and Development Revenue [Member]        
Disaggregation of Revenue [Line Items]        
Total revenues $ 7,461 $ 1,730 $ 11,258 $ 7,225
XML 45 R35.htm IDEA: XBRL DOCUMENT v3.20.2
Revenue Recognition - Contracts with Customer (Details) - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Revenue from Contract with Customer [Abstract]    
Contract assets $ 0 $ 1,027
Unbilled receivables 12,412 10,099
Contract Costs 172 0
Contract Liabilities: Deferred Revenue $ 5,045 $ 2,044
XML 46 R36.htm IDEA: XBRL DOCUMENT v3.20.2
Revenue Recognition - Textual (Details) - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Revenue from Contract with Customer [Abstract]        
Impairment charges related to contract assets $ 0 $ 0 $ 0 $ 0
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.20.2
Revenue Recognition - Revenue Recognized During Period (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Revenue from Contract with Customer [Abstract]        
Performance obligations satisfied $ 4,272 $ 1,367 $ 57 $ 3,752
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods 1,357 (92) 637 43
Performance obligations satisfied from new activities in the period - contract revenue 9,338 11,044 28,943 24,106
Total revenues $ 14,967 $ 12,319 $ 29,637 $ 27,901
XML 48 R38.htm IDEA: XBRL DOCUMENT v3.20.2
Revenue Recognition - Performance Obligation (Details)
$ in Thousands
Jun. 30, 2020
USD ($)
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 5,045
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-07-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 1,674
Expected timing of satisfaction, period 6 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-01-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 1,009
Expected timing of satisfaction, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-01-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 2,362
Expected timing of satisfaction, period
Product Sales [Member]  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 2,835
Product Sales [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-07-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 567
Expected timing of satisfaction, period 6 months
Product Sales [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-01-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 385
Expected timing of satisfaction, period 1 year
Product Sales [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-01-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 1,883
Expected timing of satisfaction, period
Research and Development Revenue [Member]  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 2,210
Research and Development Revenue [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-07-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 1,107
Expected timing of satisfaction, period 6 months
Research and Development Revenue [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-01-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 624
Expected timing of satisfaction, period 1 year
Research and Development Revenue [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-01-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 479
Expected timing of satisfaction, period
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.20.2
Net loss per Share (Details) - shares
shares in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Shares Issuable Under the Equity Incentive Plan [Member]        
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]        
Total shares excluded as anti-dilutive (shares) 5,289 6,254 5,289 6,254
XML 50 R40.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements - GSK Platform Technology Transfer, Collaboration and License Agreement (Details) - USD ($)
3 Months Ended 6 Months Ended 12 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Dec. 31, 2019
Jul. 31, 2014
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Revenue recognized $ 14,967,000 $ 12,319,000 $ 29,637,000 $ 27,901,000    
GSK [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Revenue recognized $ 0 $ 0 $ 0 $ 0 $ 2,000,000.0  
GSK [Member] | Minimum [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Contingent receivable           $ 5,750,000
GSK [Member] | Maximum [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Contingent receivable           $ 38,500,000
XML 51 R41.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements - Merck Platform Technology Transfer and License Agreement (Details) - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Dec. 31, 2019
Aug. 31, 2015
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Revenue recognized $ 14,967,000 $ 12,319,000 $ 29,637,000 $ 27,901,000    
Contract with customer, liability 5,045,000   5,045,000   $ 2,044,000  
Merck [Member] | Technology Transfer, Collaboration and License Agreement [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Revenue recognized 200,000 1,000,000.0 1,000,000.0 2,000,000.0    
Contingent receivable           $ 15,000,000.0
Merck [Member] | Technology Transfer, Collaboration and License Agreement [Member] | License Fee [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Revenue recognized   $ 900,000   $ 900,000    
Merck [Member] | Technology Transfer, Collaboration and License Agreement [Member] | Maintenance [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Revenue recognized 25,000   50,000      
Contract with customer, liability $ 100,000   $ 100,000   $ 0  
XML 52 R42.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements - Merck Sitagliptin Catalyst Supply Agreement (Details) - USD ($)
1 Months Ended 3 Months Ended 6 Months Ended
Dec. 31, 2015
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Dec. 31, 2019
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Revenue recognized   $ 14,967,000 $ 12,319,000 $ 29,637,000 $ 27,901,000  
Contract with customer, liability   5,045,000   5,045,000   $ 2,044,000
Supply Agreement [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Contract with customer, liability   2,000,000.0   2,000,000.0   2,000,000.0
Merck [Member] | Supply Agreement [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Optional extension period 5 years          
Merck [Member] | Supply Agreement [Member] | Product Sales [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Revenue recognized   2,000,000.0 $ 2,500,000 3,800,000 $ 7,800,000  
Contract with customer, liability   $ 300,000   $ 300,000   $ 0
XML 53 R43.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements - Enzyme Supply Agreement (Details) - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]    
Contract with customer, liability $ 5,045 $ 2,044
Supply Agreement [Member]    
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]    
Contract with customer, liability $ 2,000 $ 2,000
XML 54 R44.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements - Global Development, Option and License Agreement, Strategic Collaboration Agreement, and Development Agreement (Details) - USD ($)
$ in Thousands
1 Months Ended 3 Months Ended 6 Months Ended 12 Months Ended
Oct. 31, 2017
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Dec. 31, 2019
Sep. 30, 2018
Dec. 31, 2017
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Contract with customer, liability   $ 5,045   $ 5,045   $ 2,044    
Revenue recognized   14,967 $ 12,319 29,637 $ 27,901      
Nestec Ltd. (Nestle Health Sciences) [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Revenue recognized   1,700 1,200 3,300 2,500      
Nestec Ltd. (Nestle Health Sciences) [Member] | Strategic Collaboration Agreement [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Contract with customer, liability             $ 600 $ 1,200
Nestec Ltd. (Nestle Health Sciences) [Member] | Global Development, Option and License Agreement [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Contract with customer, liability $ 14,000              
Revenue recognized   $ 0 $ 500 $ 0 $ 1,700      
Nestec Ltd. (Nestle Health Sciences) [Member] | Global Development, Option and License Agreement [Member] | Sales-Based Milestone [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Target sales for milestone 1,000,000              
Nestec Ltd. (Nestle Health Sciences) [Member] | Global Development, Option and License Agreement [Member] | Maximum [Member] | Research and Development Agreement [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Contingent receivable 85,000              
Nestec Ltd. (Nestle Health Sciences) [Member] | Global Development, Option and License Agreement [Member] | Maximum [Member] | Sales-Based Milestone [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Contingent receivable 250,000              
Nestec Ltd. (Nestle Health Sciences) [Member] | Global Development, Option and License Agreement [Member] | Milestone One [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Contract with customer, liability 4,000              
Nestec Ltd. (Nestle Health Sciences) [Member] | Global Development, Option and License Agreement [Member] | Milestone Two [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Contract with customer, liability $ 1,000              
Nestec Ltd. (Nestle Health Sciences) [Member] | CDX-6114 [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Cumulative catch-up adjustment to revenue, change in measure of progress           $ 3,000    
XML 55 R45.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements - Strategic Collaboration Agreement (Details) - USD ($)
1 Months Ended 3 Months Ended 6 Months Ended
Apr. 30, 2020
Apr. 30, 2018
Jun. 30, 2020
Jun. 30, 2019
Dec. 31, 2018
Jun. 30, 2020
Jun. 30, 2019
Dec. 31, 2019
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Contract with customer, liability     $ 5,045,000     $ 5,045,000   $ 2,044,000
Revenue recognized     14,967,000 $ 12,319,000   29,637,000 $ 27,901,000  
Porton [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Revenue recognized $ 1,000,000.0   $ 1,000,000.0 $ 0 $ 2,800,000 $ 1,100,000 $ 0  
Porton [Member] | Milestone One [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Contract with customer, liability   $ 500,000            
Number of days for payment   30 days            
Porton [Member] | Milestone Two [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Contingent receivable   $ 1,500,000            
Porton [Member] | Milestone Three [Member]                
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                
Contingent receivable   $ 1,000,000.0            
XML 56 R46.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements - Platform Technology Transfer and License Agreement (Details) - USD ($)
1 Months Ended 3 Months Ended 6 Months Ended
May 31, 2019
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Apr. 30, 2020
Dec. 31, 2019
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]              
Contract with customer, liability   $ 5,045,000   $ 5,045,000     $ 2,044,000
Revenue recognized   14,967,000 $ 12,319,000 29,637,000 $ 27,901,000    
Novartis [Member]              
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]              
Term of collaborative research and development agreement 23 months            
Contract with customer, liability $ 5,000,000.0            
Revenue recognized   $ 900,000 $ 0 $ 3,700,000 $ 0    
Novartis [Member] | Royalty [Member]              
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]              
Term of collaborative research and development agreement 23 months            
Novartis [Member] | Computer Equipment and Software [Member]              
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]              
Contingent annual receivable increase $ 8,000,000.0            
Novartis [Member] | Milestone One [Member]              
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]              
Contingent receivable           $ 4,000,000.0  
Novartis [Member] | Milestone Two [Member]              
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]              
Contingent receivable $ 5,000,000.0            
XML 57 R47.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements - License Agreement (Details) - USD ($)
$ in Thousands
1 Months Ended 3 Months Ended 6 Months Ended
Dec. 31, 2019
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]          
Revenue recognized   $ 14,967 $ 12,319 $ 29,637 $ 27,901
Roche [Member]          
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]          
Revenue recognized   $ 200   $ 800  
Roche [Member] | Milestone One [Member]          
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]          
Number of days for payment 45 days        
Roche [Member] | Milestone Two [Member]          
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]          
Number of days for payment 60 days        
XML 58 R48.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements - Strategic Collaboration and License Agreement (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Mar. 31, 2020
Dec. 31, 2019
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Contract with customer, liability $ 5,045   $ 5,045     $ 2,044
Revenue recognized 14,967 $ 12,319 29,637 $ 27,901    
Takeda [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Contract with customer, liability 2,200   2,200      
Revenue recognized $ 5,700   $ 8,000      
Takeda [Member] | Up-front Payment [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Contract with customer, liability         $ 8,500  
Takeda [Member] | Research and Development Reimbursement [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Contingent receivable         22,300  
Takeda [Member] | Milestone Payment Per Target Gene [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Contingent receivable         $ 100,000  
XML 59 R49.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements - Master Collaboration and Research Agreement and Stock Purchase Agreement (Details) - USD ($)
1 Months Ended 3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Dec. 31, 2019
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Payments to acquire other investments       $ 1,000,000 $ 0  
Contract with customer, liability $ 5,045,000 $ 5,045,000   5,045,000   $ 2,044,000
Revenues   14,967,000 $ 12,319,000 29,637,000 27,901,000  
Research and Development Revenue [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Revenues   10,463,000 $ 6,070,000 20,033,000 $ 13,665,000  
MCRA [Member] | Molecular Assemblies, Inc. [Member] | Research and Development Revenue [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Revenues   0   0    
MCRA [Member] | Molecular Assemblies, Inc. [Member] | Fixed Consideration [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Number of days for payment 30 days          
MCRA [Member] | Molecular Assemblies, Inc. [Member] | Bonus Goal Met [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Number of days for payment 30 days          
CESA [Member] | Molecular Assemblies, Inc. [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Aggregate commercial sales, milestone $ 5,000,000.0          
CESA [Member] | Molecular Assemblies, Inc. [Member] | Royalty [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Contract with customer, liability $ 500,000 $ 500,000   $ 500,000    
Molecular Assemblies, Inc. [Member] | Series A Preferred Stock [Member]            
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]            
Number of shares acquired in an equity method investment 1,587,050 1,587,050   1,587,050    
Payments to acquire other investments $ 1,000,000.0          
XML 60 R50.htm IDEA: XBRL DOCUMENT v3.20.2
Collaborative Arrangements - Performance Period (Details)
Jun. 30, 2020
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-07-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period 6 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period
Molecular Assemblies, Inc. [Member] | CESA [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-07-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period 6 months
Molecular Assemblies, Inc. [Member] | Minimum [Member] | MCRA [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-07-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period 10 months
Molecular Assemblies, Inc. [Member] | Maximum [Member] | MCRA [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-05-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period 13 months
XML 61 R51.htm IDEA: XBRL DOCUMENT v3.20.2
Cash Equivalents and Equity Securities - Components of Cash Equivalents (Details) - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Jun. 30, 2019
Cash Equivalents and Marketable Securities [Line Items]      
Cash and cash equivalents $ 75,649 $ 90,498 $ 93,421
Money Market Funds [Member]      
Cash Equivalents and Marketable Securities [Line Items]      
Cash and cash equivalents 58,482 71,248  
Cash and cash equivalents, fair value $ 58,482 $ 71,248  
XML 62 R52.htm IDEA: XBRL DOCUMENT v3.20.2
Cash Equivalents and Equity Securities - Textual (Details) - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Jun. 30, 2019
Cash and Cash Equivalents [Line Items]      
Cash and cash equivalents $ 75,649 $ 90,498 $ 93,421
Investment at cost basis $ 1,000 0  
Molecular Assemblies, Inc. [Member]      
Cash and Cash Equivalents [Line Items]      
Ownership percentage 4.00%    
Money Market Funds [Member]      
Cash and Cash Equivalents [Line Items]      
Cash and cash equivalents $ 58,482 71,248  
Cash [Member]      
Cash and Cash Equivalents [Line Items]      
Cash and cash equivalents $ 17,100 $ 19,300  
XML 63 R53.htm IDEA: XBRL DOCUMENT v3.20.2
Fair Value Measurements (Details) - Money Market Funds [Member] - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Summary of financial instruments measured at fair value on a recurring basis    
Money market funds $ 58,482 $ 71,248
Level 1 [Member]    
Summary of financial instruments measured at fair value on a recurring basis    
Money market funds $ 58,482 $ 71,248
XML 64 R54.htm IDEA: XBRL DOCUMENT v3.20.2
Balance Sheets Details - Inventories (Details) - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Schedule of Inventory Components    
Raw materials $ 77 $ 7
Work-in-process 28 26
Finished goods 581 338
Inventories $ 686 $ 371
XML 65 R55.htm IDEA: XBRL DOCUMENT v3.20.2
Balance Sheets Details - Property and Equipment, net (Details) - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Property, Plant and Equipment [Line Items]    
Property and equipment $ 40,389 $ 39,533
Less: accumulated depreciation and amortization (33,567) (33,251)
Property and equipment, net 6,822 6,282
Laboratory equipment [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment 24,717 23,561
Leasehold improvements [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment 10,774 10,804
Computer equipment and software [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment 3,135 3,016
Office equipment and furniture [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment 1,115 1,461
Construction in progress [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment $ 648 $ 691
XML 66 R56.htm IDEA: XBRL DOCUMENT v3.20.2
Balance Sheets Details - Goodwill (Details) - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Balance Sheet Details [Abstract]    
Goodwill $ 3,241 $ 3,241
XML 67 R57.htm IDEA: XBRL DOCUMENT v3.20.2
Balance Sheets Details - Other Accrued Liabilities (Details) - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Balance Sheets Details [Abstract]    
Accrued purchases $ 3,669 $ 4,386
Accrued professional and outside service fees 2,949 1,802
Other 325 352
Total $ 6,943 $ 6,540
XML 68 R58.htm IDEA: XBRL DOCUMENT v3.20.2
Stock-based Compensation - Equity Incentive Plans (Details) - 2019 Plan [Member]
Jun. 30, 2019
shares
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Number of shares available for grant 7,897,144
Maximum number of shares to be issued upon exercise of stock options 14,000,000
Number of shares authorized 8,100,000
XML 69 R59.htm IDEA: XBRL DOCUMENT v3.20.2
Stock-based Compensation - Stock Options (Details)
6 Months Ended
Jun. 30, 2020
Incentive Stock Options [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Purchase price of common stock 100.00%
Non-Statutory Stock Options [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Purchase price of common stock 85.00%
Stock Options [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Percent of voting interests 10.00%
Purchase price of common stock above minimum threshold 110.00%
Expiration period 10 years
Award vesting period 4 years
Stock Options [Member] | Tranche One [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Award vesting rights (percent) 25.00%
Stock Options [Member] | Tranche Two [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Award vesting rights (percent) 75.00%
XML 70 R60.htm IDEA: XBRL DOCUMENT v3.20.2
Stock-based Compensation - Restricted Stock Units (Details) - RSUs [Member]
6 Months Ended
Jun. 30, 2020
Tranche One [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Award vesting period 3 years
Award vesting rights (percent) 33.00%
Tranche Two [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Award vesting period 4 years
Award vesting rights (percent) 25.00%
XML 71 R61.htm IDEA: XBRL DOCUMENT v3.20.2
Stock-based Compensation - PSUs and PBOs (Details) - Performance Shares [Member] - installment
3 Months Ended 6 Months Ended
Mar. 31, 2021
Mar. 31, 2020
Mar. 31, 2019
Jun. 30, 2020
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Performance awards, threshold level, number of shares, multiplier       0
2019 Plan [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Number of installments       2
2019 Plan [Member] | Tranche One [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting rights (percent)       50.00%
2019 Plan [Member] | Tranche Two [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting rights (percent)       50.00%
2020 PSU and PBO Plan [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Estimated performance goal achievement rate       100.00%
2019 PSU and PBO Plan [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Estimated performance goal achievement rate   106.00%    
2019 PSU and PBO Plan [Member] | Tranche One [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting rights (percent)   50.00%    
2019 PSU and PBO Plan [Member] | Tranche Two [Member] | Forecast [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting rights (percent) 50.00%      
2018 PSU and PBO Plan [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Estimated performance goal achievement rate     118.00%  
2018 PSU and PBO Plan [Member] | Tranche One [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting rights (percent)     50.00%  
2018 PSU and PBO Plan [Member] | Tranche Two [Member]        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Award vesting rights (percent)   50.00%    
XML 72 R62.htm IDEA: XBRL DOCUMENT v3.20.2
Stock-based Compensation - Stock-based Compensation Expense (Details) - USD ($)
$ in Thousands
1 Months Ended 3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Schedule of stock-based compensation expense          
Stock-based compensation   $ 1,939 $ 1,988 $ 4,108 $ 4,051
Nonemployee [Member]          
Schedule of stock-based compensation expense          
Number of options granted (in shares) 60,000        
Fair value of options granted $ 300        
Stock Options [Member]          
Schedule of stock-based compensation expense          
Stock-based compensation   575 581 $ 1,116 1,135
Award vesting period       4 years  
Compensation not yet recognized, stock options 4,800 4,800   $ 4,800  
Stock Options [Member] | Tranche One [Member]          
Schedule of stock-based compensation expense          
Award vesting rights (percent)       25.00%  
Stock Options [Member] | Tranche Two [Member]          
Schedule of stock-based compensation expense          
Award vesting rights (percent)       75.00%  
RSUs and RSAs [Member]          
Schedule of stock-based compensation expense          
Stock-based compensation   610 386 $ 1,210 847
Compensation not yet recognized, share-based awards other than options 2,700 2,700   2,700  
PSUs [Member]          
Schedule of stock-based compensation expense          
Stock-based compensation   296 316 627 707
Compensation not yet recognized, share-based awards other than options 1,100 1,100   1,100  
PBOs [Member]          
Schedule of stock-based compensation expense          
Stock-based compensation   458 705 1,155 1,362
Compensation not yet recognized, share-based awards other than options 1,700 1,700   1,700  
Non-Employee Stock Options [Member]          
Schedule of stock-based compensation expense          
Compensation not yet recognized, stock options $ 200 200   200  
Non-Employee Stock Options [Member] | Nonemployee [Member]          
Schedule of stock-based compensation expense          
Expected volatility rate 51.90%        
Risk free interest rate 0.40%        
Expected dividend yield 0.00%        
Award vesting period 2 years        
Stock-based compensation expense   4   4  
Non-Employee Stock Options [Member] | Nonemployee [Member] | Tranche One [Member]          
Schedule of stock-based compensation expense          
Award vesting rights (percent) 50.00%        
Non-Employee Stock Options [Member] | Nonemployee [Member] | Tranche Two [Member]          
Schedule of stock-based compensation expense          
Award vesting rights (percent) 50.00%        
Research and Development [Member]          
Schedule of stock-based compensation expense          
Stock-based compensation   471 403 894 791
Selling, General and Administrative Expenses [Member]          
Schedule of stock-based compensation expense          
Stock-based compensation   $ 1,468 $ 1,585 $ 3,214 $ 3,260
XML 73 R63.htm IDEA: XBRL DOCUMENT v3.20.2
Capital Stock - Exercise of Options (Details) - USD ($)
$ / shares in Units, $ in Thousands
6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Equity [Abstract]    
Stock options exercised (shares) 32,749 529,187
Weighted average exercise price of stock options exercised (usd per share) $ 6.03 $ 5.37
Proceeds from exercises of stock options $ 197 $ 2,843
XML 74 R64.htm IDEA: XBRL DOCUMENT v3.20.2
Capital Stock - Private Offering (Details) - USD ($)
$ / shares in Units, $ in Thousands
1 Months Ended 3 Months Ended 6 Months Ended
Jun. 30, 2019
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Subsidiary, Sale of Stock [Line Items]        
Issuance costs   $ 74 $ 0 $ 74
Private Offering [Member]        
Subsidiary, Sale of Stock [Line Items]        
Number of shares issued and sold 3,048,780      
Purchase price (usd per share) $ 16.40 $ 16.40   $ 16.40
Issuance costs $ 74      
Net proceeds received $ 49,900      
XML 75 R65.htm IDEA: XBRL DOCUMENT v3.20.2
Commitments and Contingencies - Textual (Details)
1 Months Ended 6 Months Ended 12 Months Ended
Jun. 30, 2017
USD ($)
Apr. 30, 2017
USD ($)
Feb. 28, 2017
USD ($)
Jun. 30, 2020
USD ($)
ft²
security
Dec. 31, 2019
USD ($)
Apr. 30, 2020
ft²
Jan. 31, 2020
ft²
Commitments and Contingencies [Line Items]              
Area of real estate property (square feet) | ft²       77,300      
Number of buildings leased | security       4      
Renewal term       5 years      
Asset retirement obligations       $ 200,000 $ 200,000    
Accretion expense related to asset retirement obligation       0 0    
Capital lease obligations incurred   $ 300,000 $ 400,000        
Term of contract   3 years 3 years        
Indemnification Agreement [Member]              
Commitments and Contingencies [Line Items]              
Loss contingency accrual       0      
Term Loan [Member]              
Commitments and Contingencies [Line Items]              
Borrowing capacity $ 10,000,000.0            
Term Loan [Member] | LIBOR [Member]              
Commitments and Contingencies [Line Items]              
Basis spread on variable rate (percent) 3.60%            
Revolving Credit Facility [Member]              
Commitments and Contingencies [Line Items]              
Borrowing capacity $ 5,000,000.0            
Accounts receivable borrowing base percentage 80.00%            
Stated interest rate 5.00%            
Revolving Credit Facility [Member] | Prime Rate [Member]              
Commitments and Contingencies [Line Items]              
Basis spread on variable rate (percent) 1.00%            
Demand Deposits [Member]              
Commitments and Contingencies [Line Items]              
Non-current restricted cash       $ 1,100,000 $ 1,100,000    
200-220 Penobscot [Member]              
Commitments and Contingencies [Line Items]              
Area of real estate property (square feet) | ft²       28,200      
400 Penoscot [Member]              
Commitments and Contingencies [Line Items]              
Area of real estate property (square feet) | ft²       37,900      
501 Chesapeake [Member]              
Commitments and Contingencies [Line Items]              
Area of real estate property (square feet) | ft²       11,200      
101 Saginaw [Member]              
Commitments and Contingencies [Line Items]              
Area of real estate property (square feet) | ft²             29,900
Sublease [Member]              
Commitments and Contingencies [Line Items]              
Area of real estate property (square feet) | ft²           3,400 26,500
XML 76 R66.htm IDEA: XBRL DOCUMENT v3.20.2
Commitments and Contingencies - Lease Cost (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Finance lease costs:        
Amortization of right-of-use assets $ 45 $ 54 $ 99 $ 109
Interest on lease obligations 1 3 1 6
Finance lease costs 46 57 100 115
Operating lease cost 1,032 1,100 2,100 2,278
Short-term lease cost 16 0 47 0
Sublease income 0 (254) (55) (465)
Total lease cost $ 1,094 $ 903 $ 2,192 $ 1,928
XML 77 R67.htm IDEA: XBRL DOCUMENT v3.20.2
Commitments and Contingencies - Other Lease Information (Details)
Jun. 30, 2020
Commitments and Contingencies Disclosure [Abstract]  
Weighted-average remaining lease term (in years) 7 years 2 months 12 days
Weighted-average discount rate 6.60%
XML 78 R68.htm IDEA: XBRL DOCUMENT v3.20.2
Commitments and Contingencies - Cash Paid for Lease Obligations (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Commitments and Contingencies Disclosure [Abstract]    
Operating cash flows from operating leases $ 774 $ 1,633
Operating cash flows from finance leases 0 6
Finance Lease, Principal Payments $ 60 $ 119
XML 79 R69.htm IDEA: XBRL DOCUMENT v3.20.2
Commitments and Contingencies - Future Minimum Lease Payments (Details)
$ in Thousands
Jun. 30, 2020
USD ($)
Operating Leases  
2020 (remaining 6 months) $ 2,042
2021 4,197
2022 4,285
2023 4,589
2024 4,726
2025 and thereafter 13,494
Total minimum lease payments 33,333
Less: imputed interest (7,186)
Lease Obligations $ 26,147
XML 80 R70.htm IDEA: XBRL DOCUMENT v3.20.2
Commitments and Contingencies - Other Commitments (Details) - Supply Commitment [Member]
$ in Thousands
Jun. 30, 2020
USD ($)
Other Commitments [Line Items]  
Future Minimum Payment $ 4,853
April 2016 [Member]  
Other Commitments [Line Items]  
Future Minimum Payment 704
September 2019 [Member]  
Other Commitments [Line Items]  
Future Minimum Payment 3,785
March 2020 [Member]  
Other Commitments [Line Items]  
Future Minimum Payment $ 364
XML 81 R71.htm IDEA: XBRL DOCUMENT v3.20.2
Related Party - AstraZeneca PLC (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Dec. 31, 2019
Management [Member] | Transactions With AstraZeneca PLC [Member]          
Related Party Transaction [Line Items]          
Revenue from related parties $ 20 $ 400 $ 100 $ 400  
Accounts receivable from related parties $ 0   $ 0   $ 300
Director [Member]          
Related Party Transaction [Line Items]          
Contract term as BOD member     3 years    
XML 82 R72.htm IDEA: XBRL DOCUMENT v3.20.2
Related Party - Molecular Assemblies, Inc. (Details) - USD ($)
1 Months Ended 3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Dec. 31, 2019
Related Party Transaction [Line Items]            
Payments to acquire other investments       $ 1,000,000 $ 0  
Contract with customer, liability $ 5,045,000 $ 5,045,000   5,045,000   $ 2,044,000
Revenues   14,967,000 $ 12,319,000 29,637,000 27,901,000  
Research and Development Revenue [Member]            
Related Party Transaction [Line Items]            
Revenues   10,463,000 $ 6,070,000 20,033,000 $ 13,665,000  
Molecular Assemblies, Inc. [Member] | MCRA [Member] | Research and Development Revenue [Member]            
Related Party Transaction [Line Items]            
Revenues   0   0    
Molecular Assemblies, Inc. [Member] | MCRA [Member] | Fixed Consideration [Member]            
Related Party Transaction [Line Items]            
Number of days for payment 30 days          
Molecular Assemblies, Inc. [Member] | MCRA [Member] | Bonus Goal Met [Member]            
Related Party Transaction [Line Items]            
Number of days for payment 30 days          
Molecular Assemblies, Inc. [Member] | CESA [Member]            
Related Party Transaction [Line Items]            
Aggregate commercial sales, milestone $ 5,000,000.0          
Molecular Assemblies, Inc. [Member] | CESA [Member] | Royalty [Member]            
Related Party Transaction [Line Items]            
Contract with customer, liability $ 500,000 $ 500,000   $ 500,000    
Molecular Assemblies, Inc. [Member] | Series A Preferred Stock [Member]            
Related Party Transaction [Line Items]            
Number of shares acquired in an equity method investment 1,587,050 1,587,050   1,587,050    
Payments to acquire other investments $ 1,000,000.0          
XML 83 R73.htm IDEA: XBRL DOCUMENT v3.20.2
Related Party - Performance Period (Details)
Jun. 30, 2020
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-07-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period 6 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period
Molecular Assemblies, Inc. [Member] | CESA [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-07-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period 6 months
Molecular Assemblies, Inc. [Member] | Minimum [Member] | MCRA [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-07-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period 10 months
Molecular Assemblies, Inc. [Member] | Maximum [Member] | MCRA [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2021-05-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction, period 13 months
XML 84 R74.htm IDEA: XBRL DOCUMENT v3.20.2
Segment, Geographical and Other Revenue Information - Textual (Details) - 6 months ended Jun. 30, 2020
reportingUnit
segment
Segment Reporting [Abstract]    
Number of operating segments   2
Number of reportable segments 2 2
XML 85 R75.htm IDEA: XBRL DOCUMENT v3.20.2
Segment, Geographical and Other Revenue Information - Segment Reporting (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Segment Reporting Information [Line Items]        
Total revenues $ 14,967 $ 12,319 $ 29,637 $ 27,901
Cost of product revenue 1,699 2,772 4,240 7,163
Research and development 10,853 8,274 21,820 16,290
Selling, general and administrative 8,522 7,896 17,512 16,311
Total costs and operating expenses 21,074 18,942 43,572 39,764
Income (loss) from operations (6,107) (6,623) (13,935) (11,863)
Depreciation and amortization     (900) (693)
Income (loss) before income taxes (6,037) (6,491) (13,684) (11,624)
Stock-based compensation 1,939 1,988 4,108 4,051
Performance Enzymes [Member]        
Segment Reporting Information [Line Items]        
Total revenues 7,506 10,589 18,379 20,676
Novel Biotherapeutics [Member]        
Segment Reporting Information [Line Items]        
Total revenues 7,461 1,730 11,258 7,225
Operating Segments [Member]        
Segment Reporting Information [Line Items]        
Total revenues 14,967 12,319 29,637 27,901
Cost of product revenue 1,699 2,772 4,240 7,163
Research and development 10,487 7,990 21,108 15,748
Selling, general and administrative 2,996 2,923 5,933 5,541
Total costs and operating expenses 15,182 13,685 31,281 28,452
Income (loss) from operations (215) (1,366) (1,644) (551)
Stock-based compensation 1,939 1,988 4,108 4,051
Operating Segments [Member] | Performance Enzymes [Member]        
Segment Reporting Information [Line Items]        
Total revenues 7,506 10,589 18,379 20,676
Cost of product revenue 1,699 2,772 4,240 7,163
Research and development 4,997 5,134 10,693 9,576
Selling, general and administrative 2,375 2,362 4,720 4,463
Total costs and operating expenses 9,071 10,268 19,653 21,202
Income (loss) from operations (1,565) 321 (1,274) (526)
Stock-based compensation 741 601 1,496 1,237
Operating Segments [Member] | Novel Biotherapeutics [Member]        
Segment Reporting Information [Line Items]        
Total revenues 7,461 1,730 11,258 7,225
Research and development 5,490 2,856 10,415 6,172
Selling, general and administrative 621 561 1,213 1,078
Total costs and operating expenses 6,111 3,417 11,628 7,250
Income (loss) from operations 1,350 (1,687) (370) (25)
Stock-based compensation 252 197 494 338
Corporate [Member]        
Segment Reporting Information [Line Items]        
Total costs and operating expenses (5,316) (4,698) (11,042) (10,271)
Depreciation and amortization (506) (427) (998) (802)
Income (loss) before income taxes (6,037) (6,491) (13,684) (11,624)
Stock-based compensation 946 1,190 2,118 2,476
Product Sales [Member]        
Segment Reporting Information [Line Items]        
Total revenues 4,504 6,249 9,604 14,236
Product Sales [Member] | Performance Enzymes [Member]        
Segment Reporting Information [Line Items]        
Total revenues 4,504 6,249 9,604 14,236
Product Sales [Member] | Novel Biotherapeutics [Member]        
Segment Reporting Information [Line Items]        
Total revenues 0 0 0 0
Product Sales [Member] | Operating Segments [Member]        
Segment Reporting Information [Line Items]        
Total revenues 4,504 6,249 9,604 14,236
Product Sales [Member] | Operating Segments [Member] | Performance Enzymes [Member]        
Segment Reporting Information [Line Items]        
Total revenues 4,504 6,249 9,604 14,236
Research and Development Revenue [Member]        
Segment Reporting Information [Line Items]        
Total revenues 10,463 6,070 20,033 13,665
Research and Development Revenue [Member] | Performance Enzymes [Member]        
Segment Reporting Information [Line Items]        
Total revenues 3,002 4,340 8,775 6,440
Research and Development Revenue [Member] | Novel Biotherapeutics [Member]        
Segment Reporting Information [Line Items]        
Total revenues 7,461 1,730 11,258 7,225
Research and Development Revenue [Member] | Operating Segments [Member]        
Segment Reporting Information [Line Items]        
Total revenues 10,463 6,070 20,033 13,665
Research and Development Revenue [Member] | Operating Segments [Member] | Performance Enzymes [Member]        
Segment Reporting Information [Line Items]        
Total revenues 3,002 4,340 8,775 6,440
Research and Development Revenue [Member] | Operating Segments [Member] | Novel Biotherapeutics [Member]        
Segment Reporting Information [Line Items]        
Total revenues $ 7,461 $ 1,730 $ 11,258 $ 7,225
XML 86 R76.htm IDEA: XBRL DOCUMENT v3.20.2
Segment, Geographical and Other Revenue Information - Concentration Risk (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended 12 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Dec. 31, 2019
Concentration Risk [Line Items]          
Revenue recognized $ 14,967 $ 12,319 $ 29,637 $ 27,901  
Nestec Ltd. (Nestle Health Sciences) [Member]          
Concentration Risk [Line Items]          
Revenue recognized 1,700 1,200 3,300 2,500  
Nestec Ltd. (Nestle Health Sciences) [Member] | Global Development, Option and License Agreement [Member]          
Concentration Risk [Line Items]          
Revenue recognized $ 0 $ 500 $ 0 $ 1,700  
Revenue, Product and Service Benchmark [Member] | Customer Concentration Risk [Member] | Customer A [Member]          
Concentration Risk [Line Items]          
Concentration risk, percentage 16.00% 35.00% 20.00% 38.00%  
Revenue, Product and Service Benchmark [Member] | Customer Concentration Risk [Member] | Customer B [Member]          
Concentration Risk [Line Items]          
Concentration risk, percentage 12.00% 14.00% 11.00% 26.00%  
Revenue, Product and Service Benchmark [Member] | Customer Concentration Risk [Member] | Customer C [Member]          
Concentration Risk [Line Items]          
Concentration risk, percentage   11.00%      
Revenue, Product and Service Benchmark [Member] | Customer Concentration Risk [Member] | Customer D [Member]          
Concentration Risk [Line Items]          
Concentration risk, percentage     13.00%    
Revenue, Product and Service Benchmark [Member] | Customer Concentration Risk [Member] | Customer E [Member]          
Concentration Risk [Line Items]          
Concentration risk, percentage 38.00%   27.00%    
Accounts Receivable [Member] | Customer Concentration Risk [Member] | Customer A [Member]          
Concentration Risk [Line Items]          
Concentration risk, percentage     26.00%   38.00%
Accounts Receivable [Member] | Customer Concentration Risk [Member] | Customer B [Member]          
Concentration Risk [Line Items]          
Concentration risk, percentage     11.00%   10.00%
Accounts Receivable [Member] | Customer Concentration Risk [Member] | Customer D [Member]          
Concentration Risk [Line Items]          
Concentration risk, percentage     30.00%    
Accounts Receivable [Member] | Customer Concentration Risk [Member] | Customer F [Member]          
Concentration Risk [Line Items]          
Concentration risk, percentage     10.00%    
XML 87 R77.htm IDEA: XBRL DOCUMENT v3.20.2
Segment, Geographical and Other Revenue Information - Revenues by Geographic Area (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2020
Jun. 30, 2019
Jun. 30, 2020
Jun. 30, 2019
Segment Reporting Information [Line Items]        
Total revenues $ 14,967 $ 12,319 $ 29,637 $ 27,901
Americas [Member]        
Segment Reporting Information [Line Items]        
Total revenues 6,906 4,076 12,131 6,913
EMEA [Member]        
Segment Reporting Information [Line Items]        
Total revenues 3,314 4,741 9,285 12,466
APAC [Member]        
Segment Reporting Information [Line Items]        
Total revenues $ 4,747 $ 3,502 $ 8,221 $ 8,522
XML 88 R78.htm IDEA: XBRL DOCUMENT v3.20.2
Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details) - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Schedule of long-lived assets by geographical area    
Long-lived assets $ 6,822 $ 6,282
United States [Member]    
Schedule of long-lived assets by geographical area    
Long-lived assets $ 6,822 $ 6,282
XML 89 R79.htm IDEA: XBRL DOCUMENT v3.20.2
Segment, Geographical and Other Revenue Information - Goodwill (Details) - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Segment Reporting Information [Line Items]    
Goodwill $ 3,241 $ 3,241
Performance Enzymes [Member]    
Segment Reporting Information [Line Items]    
Goodwill 2,400  
Novel Biotherapeutics [Member]    
Segment Reporting Information [Line Items]    
Goodwill 800  
Operating Segments [Member]    
Segment Reporting Information [Line Items]    
Goodwill 3,241  
Operating Segments [Member] | Performance Enzymes [Member]    
Segment Reporting Information [Line Items]    
Goodwill 2,463  
Operating Segments [Member] | Novel Biotherapeutics [Member]    
Segment Reporting Information [Line Items]    
Goodwill $ 778  
XML 90 R80.htm IDEA: XBRL DOCUMENT v3.20.2
Allowance for Credit Losses - Analysis of Allowance for Credit Losses (Details)
$ in Thousands
6 Months Ended
Jun. 30, 2020
USD ($)
Financing Receivable, Allowance for Credit Loss [Roll Forward]  
Beginning Balance January 1, 2020 $ 34
Write-offs charged against the allowance 0
Recoveries of amounts previously written off 0
Ending Balance June 30, 2020 $ 34
XML 91 R81.htm IDEA: XBRL DOCUMENT v3.20.2
Allowance for Credit Losses - Summary of Finance Receivables by Aging Category (Details) - USD ($)
$ in Thousands
Jun. 30, 2020
Dec. 31, 2019
Financing Receivable, Allowance for Credit Loss [Line Items]    
Past due $ 1,039 $ 257
Current 12,996 8,806
Total balance 14,035 9,063
31-60 Days [Member]    
Financing Receivable, Allowance for Credit Loss [Line Items]    
Past due 0 185
61-90 Days [Member]    
Financing Receivable, Allowance for Credit Loss [Line Items]    
Past due 1,000 7
91 Days and Over [Member]    
Financing Receivable, Allowance for Credit Loss [Line Items]    
Past due $ 39 $ 65
XML 92 R9999.htm IDEA: XBRL DOCUMENT v3.20.2
Label Element Value
Restricted Cash and Cash Equivalents us-gaap_RestrictedCashAndCashEquivalents $ 1,749,000
Restricted Cash and Cash Equivalents us-gaap_RestrictedCashAndCashEquivalents $ 1,681,000
EXCEL 93 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( /:I!U$'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 " #VJ0=1R=7,6^\ K @ $0 &1O8U!R;W!S+V-O&ULS9+; M2L0P$(9?17+?3MKU1.CF1O%*07!!\2XDL[O!YD RTN[;V\;=+J(/X&5F_GSS M#4RGH] AX7,*$1-9S!>CZWT6.J[9GB@*@*SWZ%2NIX2?FMN0G*+IF780E?Y0 M.X26\VMP2,HH4C #J[@0F>R,%CJAHI".>*,7?/Q,?8$9#=BC0T\9FKH!)N>) M\3#V'9P!,XPPN?Q=0+,02_5/;.D .R;';)?4, SUL"JY:8<&WIX>7\JZE?69 ME-&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" #VJ0=1U9JO63T% !A%0 & 'AL+W=O5\"AMC(;YO9D:#65FXB@5,T5TEB1< MO5Z*6&XO&K1QN/$0K=;&WFB-AAN^$G-A?MO,%(Q:!4H8)2+5D4R)$LN+QIA^ MG/C,&N1O_!Z)K3ZZ)G8J"RF?[. FO&AXEI&(16 L!(>_9S$1<6R1@,>_>]!& M\4UK>'Q]0+_.)P^367 M)C+^(PK-^J+1;Y!0+'D6FP>Y_5GL)]2Q>(&,=?Y+ MMKMWV^T&"3)M9+(W!@9)E.[^^$<<&[(0!VQNP=P;TU!?\O8&?3W3'+)_6 ME!L^&BJY)AR PB1II$K[D2>M@R M &P?MX(]R.4.A)T Z9+/,C5K3:[24(1O[5M J&#%#JPN&0KX2Y:>$]\[(\QC MGH//I,H\!G/J,G]#QR^*@8[D,G787CK7DL<;\U2\X M]5&UZ/]VDP3E"CGJEVGEUZ &>5! X;F-X1N8&5AB1BDQD MEAKU2NS7G3*(HT^O,))'DDSKD'SD+^0FA/46+:,@9XI$N *R1YM>O\<&@P'& MD)4,61V&XS"$?*'/#A?D%MXC7U*W[W!(J#M@SZ=RH0-IR%1!#V)HXY&6/4 MRO1 <5%_3VTFM>$Q^2O:G-XB..*@[75]C%N9*"BN[WD,M)"T>:R"0!W9D;&3R=D0U7Y)G'F2#?>><>I VR@;HHKQHQWF7NH+CH0UX- MHW1%YJ_)0L9.NA598_KG'"L_RSS!<"4_N(Q?3,5:J ML3(ML%II89(I98N07>61NPL$(W.6[16(7]\7^V^9E>F U4H'-RF4D+N^S-9L M_$#5R0Q'K&!6BC^K)?ZV/(+L#KJZDLJY#RIP;KF"-3 . N@_H6H0X0X2XUCJ M/ZNE__.$QS&YS#0\UNYHXCA5)24K99_5DOVK1*B576"? ,&LG91PH$I*I=HS M7*P/3EI#PP^"GVQXZHXC#E-)J%1]A@OV83>^$1YT!9=V^[5*>7:Q*Y6>UVH$)[#H%2>D&^O$7\JMPNZJJ*_ H%&5^ M#VL+6*GM#)?F,71.8=X]7X9QJJ4=A\7XD.V.785UI-7P#6;E#5] MZJ+6.CK$LL*3G^UI$MB6;'>>5=PMS@_'^:E9JWQ]=_CXF5O=TB062S#USGNP MU=3N/&\W,'*3'XDMI#$RR2_7@H="V1?@^5)*T2W!LVZO69D.A8JB2Y))3 M-^3\FE/7H+7XLY!/9N\:.5?NE?KD;GY97DZP4R1+F5O7A8!_C_):EJ7K"71\ M[CJ=[-[I&NY?O_3^8^L\.',OC+Q6Y5_%TJXO)XL)6LJ5:$K[03W]+#N'$M=? MKDK3_D5/G2V>H+PQ5E5=8U!0%?7VO_C2#<1> \)'&M"N 3VU >L:L-;1K;+6 MK1MAQ=6%5D](.VOHS5VT8].V!F^*VDWCG=7PM(!V]NI:U4N8%+E$<&5462R% MA9NWHA1U+M&=Z]B@,_3Q[@9]^^H[] H5-?ICK1HCZJ6YF%G0X'J:Y=W[WF[? M1T?>]VM3OT8,3Q'%% >:7\>;W\@ M$(Y9,O#9M\IPRL).SW<"Y_'X4;75D-PZGT/BYMYK\4"8;T$PG8>%+7;"%E%A M'^O[HBPA7/J1"ZI;^.^FG-"!PH 5QED6EICM)&91B7\H"\$R#)N0R,Q[/4TY MGP]$!JPP68R()+A/N3@J\YTTYAR)$A#JDFPXBV+OW6>,#_0=,3J4MT<$\A]& M<8IJ&4P.76^#L21LJ#5@ADF2C*CM$SBA4;6_U(^0M90N1L:1^GEID0ZU^49L M/I*\2 \"$B?!K98;42R1_+)QA#4M%91=2_V2:R,!VO5]((DP,A3N6]&$XA'E M/1I(G W;"#A!I)_T"4[WT=3)#-@13O'8Y/> (,F_@5A08Q+2.$Q'QZP.]?6P M(7':N. TMG*C"&73#U ,V&=T)V%D"SL6L 'T8#Q,\ &KL5GOP4/BY&E+^#.U M.FN,["8="K_W&ZF%+>H'5$HHER-YP(<.I4DVK!-"9FS!1N!$>CJ1.)["ZK=9 M3![5'L#1W!MSWXBF(U48Z9%%XLRZU; DTQ 6+CNX7#0.KI^46CY!$1 21GT6,>#^0-@QJT-A/;)H'%GOVZQ:J_KL>-*B M/HA8YNGTC*#1.E%W9O1'/8S4W]2E!4S:LR8)6="R">I+0.$E H&X<1E3E M:"W<'D-0I \*GLV'22Y@E6 \-CT]3F@<)]LP%YW4O4D**O41D6;<"Z6 5<)' M6$)[EM CJY@ND#9*M[LU:K5-P4C=E\5#.[HAN 3]" "#+X89+V!%"!ZA"NVI M0N-4.=&/0\P$O?#A,>1+P"0=FX@>+S2.EQNYDN""6[5!G=R$/SR?%B3#7J3X M5LG(^+*>*"Q.E,-*\TA$,Q\>L!KCPU51R"QABY'LS7K(L#ADAD/9,MI%1'X8 M)$'I >A !3Q4'J!.MA@;Y!X[+(Z==ZI^.+-25__Y&V0^<"A+T^%^2,B,9\E( MM" M9BQ)TA&-/>Q8'';7JJJ*=EFR792Z/2<( GK?5BF?ON[LA(1\EU0>;1G=^AP M;C8BEY>3C99&ZDBU,/5OQ=BC#N'5/T"K^&M1N!JD>C1U$V$L''ALQ::/D]2J;P;'L#T]#8 MM=+%WW(Y=76L1(4Q#O+MGD%CC84+F*+@E!S?#XR:'#K;HY$=02,$$1#Q%$]A M 1OV%08AFQ*:[)Z M\EBNIC/7WX)#P,2%OW:U/+KKTB*OW\Y3FBM;F0NJWNI MNT?=4<$4DK;9R/;,J'P.CF* OL-1C)D(DX8,?GV=C.$.]YS>.\AC*YJ9JR/2-:RE61%^$#@]#& M9))R/!0:-.24XY%-5M[3FI^RBVD"WWI0L$_>C,^]C<* &<%)0D80S7M$\U-6 MAGO4:&/Y9/74.R$*KAN#=H%UXVSO/-$=YOXF]$,!Q4(I5] 0OY[# .CM^>CV MQJI->\1XKZQ557NYE@)D.P-XOE* E.[&G5KN3JFO_@%02P,$% @ ]JD' M45_Z?8K8 @ J@D !@ !X;"]W;W)KU%*W7$"0^!"B*U5-4V:1(JVO9BV@N3&&+5L3/;@6Z??FI99Y0:]))SH2=>9DQQZ_LZR6A.=$<65,"3I50Y,3!5 M*U\7BI+4B7+NAQ@/_)PPX<5CMS93\5B6AC-!9PKI,L^)^G-/N=Q,O,![77AB MJ\S8!3\>%V1%Y]1\*V8*9G[C)64Y%9I)@11=3KR[X'8:8"MP%M\9W>BM,;*I M+*1\MI//Z<3#EHARFACK@L#/FDXIY]832AI-1&YK48"'(FJE_R M4A=B2Q#T#@C"6A">*^C6@JY+M")S:3T00^*QDANDK#5XLP-7&Z>&;)BPVS@W M"IXRT)EX*D4*FT)3!",M.4N)@L="#:#+J5*08EA:Y/G&U00A=:$EQ1=E3I%!5557:_WU;7R'3G?]@5=Q[B# M,0[&_GJ[?B?-6NB]!KUW&7JU_XB4)I.*_84'5]727O;*>7\+JH_=YPW\:;L6 M?;^A[[^+GFE=GB#O[Q"]93YFT:(=-+2#=]'"'[$V1*1,K(XB#TXB'[-H(4<- M2KS'-Z6][1U=%Y;GS1K<0\;[N$%W)?U]'"GB '&>[OZ',L6_JC!'UV, M?W-.5X]VW[-1$/9WT?<8#H=1=) \P/_/'GQYZ<]M\=KW&0GLL]R?@;]UD-I; MS%>B5DQHQ.D2I+@3@0]570RJB9&%.UL7TL!)[8897*:HL@;P?"FE>9W8X[JY MGL7_ %!+ P04 " #VJ0=1S.K:O'8% :%@ & 'AL+W=ORAZ M4"S:%E8279%RTG_?H21+#C76<ED>0W0[['&7*&TQ=1_I!;SA5YS;-"WDZV M2NUN+$NNMCR/Y;78\0)^68LRCQ6\EAM+[DH>)[51GEG,MGTKC]-B,IO6WQ[* MV514*DL+_E 26>5Y7/Y[QS/QWD$[U9,D<;U(@_4_XBCYZ)IO(LQ _]\CFYG=AZ1CSC*Z5= MQ/!OS^<\R[0GF,<_K=-)-Z8V/'X^>/^E)@]DGF/)YR+[GB9J>SL))R3AZ[C* MU*-X^96WA#SM;R4R6?\E+RW6GI!5)97(6V.809X6S?_XM17BR #\X :L-6"F M@7O"P&D-G'-'<%L#]]P1O-:@IFXUW&OA%K&*9]-2O)!2H\&;?JC5KZU!K[30 M@?*D2O@U!3LUFXLB@67G"8$G*;(TB16\/"GX!_&@)!%K\F7'RUBOJR17Y-O3 M@GS\<$'D-BZY)&E!OFY%)>,BD9?DPYOWJ:5@BGH@:]5.YZZ9#CLQ'8?5%S>C/AR.U]N[NK4'$&6TWC$8N4QMZO M[?5^MY]1-_*#J;4_UA]!,4>S/48MAB@6^8[A:XF@@LBF'>H-4:\CZHV*-A<2 ML@C2@8@FC8H-X:\[G72C0OJ=?W]42.U?)^FN%$FU4@=),44;1]ZQ5GYD2#4? M@E@0,$//(K;2UH E0SL=/[%$8W&-*U M0\\Q^ Y1(0M<@^\0Q&C(3,+(@#Z+;)QQV#$.1QD_P2$*,7-)-KR ^,EJYG$" M9T$JE8ZG/;K6X9"6QXQEG ]!01CY!O-5PM$93OT!.Y$W7UY67+D7P\ M!/3%)2DXNIVU[MY$K+F9(9BK,#0Y(Z!!2&,@=BJ?:5]!4.?G(?W,HHS WHB9K!$8=/W1-XA@.]O%3V=P7/'2\XGDHQ3ZM&RQ@ M_W/R[C PAQD]!%%S^\8<#79OS%%T@G!?^%!OE/ ?T.=FL-XH/6]0:UWYCFMN MTBC,,W588##8LLRC;(GBJ.^>VK+Z&HR.%V$'J@3VZ:8SNM3]:[IJZI0TJW17 M];&228^X0'5IQ@F/9VA?4VKJ@L/,TPN'L4'(X[!3R=[7:G2\6/M>M^E /-[# M\;7A<)+G.<0_=+6K'X<&LM+-)W2-\-NNJL_VXCPQ&WM #VUA_Q1G(-=?]SQ_YN7?(YT#[] #==?#L/U!+ P04 " #VJ0=1"F=2J* ' 6+ & M 'AL+W=O*Y^5(E MD0IAM5FI592TNQ^J_>#8DV#5]E![".F_W[$A#)Z;$TK:+P&3,\,[Q\?SO#[X M9,WJ;\V"4NX]E$75G(X6G"_?3R9-NJ!ETKQC2UJ)_]RRNDRX.*SO)LVRIDG6 M#2J+"?3]8%(F>34Z.^D^NZS/3MB*%WE%+VNO695E4O^8TH*M3T=@]/C!57ZW MX.T'D[.397)'KRG_LKRLQ=%D-TN6E[1JT4B7BYIS-:%.U,0L?W[:2CW7>V _??/\[^ M9[=XL9B;I*$S5OR;9WQQ.HI&7D9ODU7!K]CZ+[I=$&GG2UG1='^]]3;6'WGI MJN&LW X6"LJ\VKPF#]M$[ T R#( ;@= 90"$E@%H.P I U!@&8"W [#Z#;%E M -D.Z)8^V:R]2]QYPI.SDYJMO;J-%K.U;[KL=Z-%OO*J+91K7HO_YF(>->P(L\2+@ZNN7@1]< ;C]V*(Y9^6[ BHW7SAS?_OLKY#V_L?;D^ M]UZ_>N.]\O+*^[Q@JR:ILN9DPH6N=O9)NM4PW6B %@V?&4\*P["9>]B,E:4H MM4Z<]_4C+6]H_9]AFG/W-!^R+&]K-BF\RR3/QF(MLV29"TFN2><#DZ;IJEP5 M72[/Z6V>YMPRVT2B9LIZ@9KJ9 M,]A7$R _V$G9:#9$]2/.]0@4!6&HA,WUL#%"/@ZQ>>UXMW;<#426M5]4J=BH M&W$FQ(*[=V_:R\)XZ7R]8D7AB8UNG=29JQ[([LN),_'S!UJGN?AR<;$VW?7 MEFU--[NZ,"6>Z&4 8Q"%2N:-8=9:"7:2@\,DFY0&VCF#$4;*^0\TG;V@GLIP MIS)TJKP21$OV12;M*7.F=19J.C &UGQ%.R61.U_ELF _*-WH&+=PS+R4E<(Q M-$F;.%/>(EV*3X"2MX&@GMIXIS9VJOV!J%)^\:G=J0[IUJ.$XABI&MF'[6XEZ/5AF(I:U2C@"-QT_B145K#$7"S)4 M-0C4/6X^'-<7)^D%L'M[J3*;G?A[50F ^QW 8V-Y8)T08=Q>DK;ZD%P# V#K MRWJ"FBG0>15'08350B!:(01J(>@SB8TFC%5'88@;(PP!""W+EXP$P:\W%4#" M#[CI-^NNN;Q*5W4M=D/QS2FKJNTMWCKG"V]9Y_=BI_2619)V6Z/QC.A$M+DM M('$(W#QT6^"/2;TSG>::U:E','%P&DCT 3?[C"YX2- 4Z%PC )?+=MXT <; M9A)&. ):V1I(BA )@"4#4)(4^K^^;*%$'W2C[R W/(,&R '['@;W[M7P-1 M?<625=#-JF,Z+J@CQ>FXH$0*=-]W'<]Q0?V&R^2XH'[SICHNRTP6QP4EOZ"; M7R['!74HC0/B*U?:?#"L+TWB"P["WH(X1D]^" M.KA4OV68R>BW#'%.OX4DN-!O !>2X$)N M8Q2%H;WGN-=T_,FNH[%LD=X'!#XA0.U^&>+4ND4&!.(PAHIWFQOBVKK%ON5F M'TE8HM_0?$22?.@EVH_(P#@8XE@] :8P>]E($*(C-B"1 6*QZLJ0CK']H+Y. M"3%T_!8DTJF%?#L?D,06>H$N)#)T&(&/U>P-1/452Z(A-]$^L6I,#U)MH)$J MV172_Q5!(@B_6!=RJ'.*#:W&R-XYQ9);V,VM(W=.LM9 M[<,GJ)EB_2XLQF&DWCYLPUS\-0VG:5D=9"1V =VVX@ERO!S&XA/$#3%.J7BV ^T MJHV&J]; .RPN1Z!6K1XGJM;W \M/=%BB$<>_X2=K23KB)MUA;3JB0PS:RX%( MAI$#FX;&7\YU] "BMID&@OHZ)9V(FTZ'V$&BTRBR=[J)A!$9@-$AOHKH% (Q M4IO80U%]Q9)3Q,VI@]T@,3!&E>P*Z>O=>Z[#?6?U@FZ0Z/=5MH*0(")N$!W9 M"!(=2&.D/O8Q$-1?B>06.;QU2$P]0825>I@/AO6E27"18[0.S3PEAM:ATP(2 M21/R$ZU#,TR)WA,T64!#F I30XC1 AKBS!9PLO=(9?O$K# &PBXT7D%OQ4C_ M72A26&\>0MT<<+;LGK*\89RSLGN[H(E@:!L@_G_+&'\\:!_$7DP7@( L& 8 >&PO=V]R:W-H965T&ULG51M3]LP$/XK5H0TD+8F)!EL*(U46J8Q":FB8_LP[8.;7!L+QR[V MA<*_W]E)L\+:"NU+[#O?\]Q;[K*U-O>V D#V5$MEAT&%N+H(0UM44',[T"M0 M]++0IN9(HEF&=F6 EQY4RS".HK.PYD(%>>9U4Y-GND$I%$P-LTU=<_-\"5*O MA\%IL%'I10U*"NT8@86PV!T>C%)G;TW^"%@ M;;?NS&4RU_K>"=?E,(A<0""A0,? Z7B$,4CIB"B,AXXSZ%TZX/9]P_[%YTZY MS+F%L98_18G5,/@4L!(6O)%XJ]=?HW8"X \1O!20=('D-2/< T@[@2QVVJ?@Z3#CR/#-ZS8RS)C9W M\<7T:$I?*-?V&1IZ%83#?*Q524V$DM'-:BE*CB3,D [J+EJF%R3IXK[2L@1C MW[&KAT;@,SN>F\A447 MTV4;4[PGIH3=:"*V[(IB*W?@QX?Q9P?P(=6G+U*\*=)E?)#P6Z,&+(G>LS@Z M_;PKGC?#XV@'?/+?WE]DD_0M3SQ?LH>O[^W>UOX:S2T:&LG?!]REO;O4NTOW MN+NVMN&J %9HBSO_AA9_YO%N33WFYVD6/FX7^%^3Z*7%Y"!)&WBX-28UF*5? M-Y;B:A2V/T.O[3?:R _R*_V8-EV[F/[2M&ORAINE4)9)6!!E-#BGL3?MZFD% MU"L_C'.---K^6M&V!N,,Z'VA-6X$YZ#?__D?4$L#!!0 ( /:I!U%/[0KM M>0< (H? 8 >&PO=V]R:W-H965T&ULG5E;;]LX%OXK MA#$/+5#7$BG+5I$$:-WM;A:8F6#2[CXS$AUS*Y,>DLYE?OT>4H[DB!<[\V+K M/4OW4&\8,>MJV0E].-L;L/LUFNMZP+=4?Y8X)>+.6:DL-W*K[ MF=XI1ALW:-O.<):5LRWE8G)UX9[=J*L+N3]1'U\BJ7[_, M_LTI#\K<4$ 1&4 . YSE9ATRI]97:NC5A9*/ M2%EIF,U>.-NXT: -%]:-MT;!6P[CS-5*B@:3+ M)?I5"K/1Z!^ H'D]?@9:]*K@%U6^X.2$_]Z+CXAD'Q#.%XEX)#> MLL3-1R+S_;YCBAHN[KM0Y88S_2DQ;]'/6[AYB\B\OT%NMU('+=Z-+-U(F\ / M5].<5%5Y,7LX-D1(+"\+THN] C;O@U2,+ZO)7*\+\<+,2>=C;W(*F4K393N9Z"61#5FAF;:D>V$0U:J]Q'55$M\-@R 3%!'D- MF2",5+&HG_O82#X?0PM(Y226N /[Y&GZN5%L1WGS4N*[<)=FPQ1T=4K9[$TX MWB>>:9GG8^0!J>4R%I@#0>5IAOK=@1123,\ ZI/)%/O>]Z7F503FP#AYFG+Z M3-_19QN>07@AWJC&Z$)")8Y%YT P>9IA *#:G\$NN<\<4UR,00:$%C@2I7B@ M%YRFE\[7](#TJ!J'@.( 12S+L;,#4D46"4H\$ G.SP#:2G$_-4QM3T+- S[% MBS'IA<06><3S>" AG":AKVS-('-L\80"M0^&)O99A639.,4#4LL\9LR!>G": M>GX[IP6 D7R7;BVK4^YZ\5\$ E.$TE-WM5 M;Z 9?%OCBD/<451>F(7$\#S27>&!8_ ICI$U8XU&:R6W?[/WQCZ)>/!]D5CA M&4@&ITGF^NU-+ YP39YY:[: 6!9!.W -3G.-ES \$(A!S %NP8$ "5$0GB\B MN <*PE4R7[ZY%>/Y^4(&XB!IXG@=>NR)J9K;+@=B3]N5%904RW=!HY CU3C MKC8@A)>Q'0HR\ A)\\AKW%SKO5M2 VR@Z2VLKCKTX.):"G'8:GSD9@,I!6VP M86C7TIK%LHGXA#+V=4!DGAV'\6O-!M(A:=)926WL0LLU;^TR=F6U%N2;]U6ZB'S2Z]H8I!:3.F=4:W^AWJ'7VD*KQS2@++JCPK/&5" MJZ]%%=-F8$.29L.^W@&/// &E+E[1N\.Q>_]82/J=/4C =ZKLG'#&)""CB*V M=4(&=B1I=K1*0#HH%TOO&M9=O7>9 ;I]Z#2TKGB@K8L\2Y8*ZKKBM76@?1]4 M*[#NRHME-6[> G)%5BXC[249N).DN7-U-GI$#8+&&=VQ>RZ$=1@$GWT S0&7 M35 YGSXKC+&G6V!)5Q11W0:F)6FF?;MNS*ZK3VKE$^QB08B73[Y8-<\7L=H\ M\#!)\_#M?K?KLA_:,^C3ZE;JO>IHQZJR;F%&+KI#.6^9^/J48*#H(DW1UP)6 M2F S5Y6"AP6!E=KXH, 7B1278J#@(DW!UP*HEB'35\P@M@!+CK&EN/8UMH%$ MBS2)GEX&N&,-U70,2T=[$$[T937]LO,35,^G4*\I#,A S$8T'&BV2-/L=VEC M\/P"^*8T.WR[/)%F ;%0FLV.3C6W3-V[PUZ-G,F[4\'^:7^@_-D=HXZ>?\D_ MK;ICX6&:[I3Z5ZJ@,FIH*M8P9?9Q =96W<%O=V/DSIV=WDECY-9=;AAMF+(" M\'XMI7FYL1_HC]^O_@]02P,$% @ ]JD'41 1U,/@%@ M4, !@ !X M;"]W;W)KQ#$P M'N?AW-B>]=B;!2[N![;$[F8LB8HH3;OSZ^^I*I*2^C$V[%U@%PB<;K5$5A6K M3ITJ4O-XX]IW?FU,I]Y79>V_GZV[KOGV]-3G:U-I?^(:4^.7I6LKW>%KNSKU M36MTP0]5Y>G%V=DWIY6V]>S)8[YVW3YY[/JNM+6Y;I7OJTJWVZ>F=)OO9^>S M>.&U7:T[NG#ZY'&C5^;&=&^;ZQ;?3M,HA:U,[:VK56N6W\\NS[]]^H#NYQO^ M8N @/7+#<,A%+^4QW^LGCUFU42W=C-/K JO+3 M$,[6M"@W78M?+9[KGCPS/F]MPQ9R2_6T][C!^\>G'0:G6T[S,-!3&>CBR$#? MJ!>N[M9>_5 7II@^?PJADF074;*G%W<.^$M?GZC[9YFZ.+LXNV.\^TG3^SS> M_2/CO6I7NK9_:E(U4U>N]JZTA1;?J MUW1IOZDY'4_QH:UWG5I?J!A<-'+'S MZG\O%[YKX4K_=X=$#Y)$#UBB!Y]O^T\:2#VO5;>&5JIVG?&J<_15];7N"]N9 M0N4.:U5[^13,@2_+I+E/FF?\Z)=?/+JX./ONRE6-KK<9?SW_+E[>F-TKO4]7 MR,3AJNO;>!4A:%J6[,H5YKW%/,_K_(3OMK"W[Q?>%E:W%O+30DTE13Q:?Z)^ M,ZJP/G>WILT0DK> FH:'0/27JFFAO:TQRUIW^+D$#+3J5I>]H8DACZ):0)@VI\1^&\AVLVNFF@4P> ^:&GN0IYCFP MLJ/Q "&FA56A(\FV,4JW6 U/OY$0&/368,5,OJY=Z5:8,5.;MM]N56VHL=87%O3M!B(/H@S0!^@\T5&>N:NJDQ+RVK_Q-3T(XG& MT]=]M8!-(',-&0:396KANC5IB2L-;- !N.-2T;6BSV$V7JU:-;KM:BSGVC9 M,3S'IF4,PU6V'FFL50/9C"%!V:O6NB5W93LL2*AYZH&[: *!PM5NG"L!=U&E;#@+:^-;ZKXG+3_,%CZ!H)0%*3BC_< MNI(\Y.U&O\-.!D129V&U,2XZ^':\ '*CM[-+FHE '+[&NERY M%NM1A1!H=6,+^ [2B3A,J=N5X56<^%8,A-(N6E(&6D0CW"(B(;ZG.#Y_"..8 ME@D"+8#N$"V+OJ. >83 E1= #M) DQ("#75#6)MX,K99SH1+^H*JL+IXX08O4*\8:V"'V'! M&2)@P!* CI%:AW"UN5J#BLR[=>OZU1K"*60' ?=06L,*[H*=WGS1T]CU"N( MR\DQ5\3Y+-!NRW="VISRR#A !) XCH&MN7,MIF8P)HPAK!.?F@ )9,1W-I(7 M?P=6MDYC)(II&9[D&T *SG KKH!@ST%MRBVIAI7HE\B_/9LN" @K+YK!]K3"ZG1\XB2,<0AH'J ME&0<<+8"GA9)4Q'5BT<&%^>H&XQ)(F4CX/](/TG.,3C,"=A6=/@]"?"A+CA1 M>C4GPVTA""(;5T5!0_8_.%/K?H=Y\!2M,RL<,4-<";.1W9#@0B+& .1TZJ#3 M]6 9+86V("('LLA$:4MO:.8R^G695\J4RT<5T?_@I0E MBL; .QIB+6F,I4!N+ZO=0%$[IB<"U M<#EB-#4K(8Q" O/S R4CVS&1J1P*0D;10"(H4?RYK<)G "-0-/Z20U.^=S0\ M[D$27H"#YM/+>,K64B;;W//W*9SN1HBN!=1@GW1C-O&),?"&H R.%JRDCBW# M'J!G\G$,E9.CB;;M^9+K+XUE"7A.2/]' 1*[6E T\6>R7"'!^3_&X$P86JK4JWH(6< M3,>T (M.G*#WDH7'$3"AZ]ZTMQ:F"Y+;/>!)87]D(=BV3+'9'Q$-4DD&]YT4 M"Y]H87C$!Q0%OPZ(OC;@LWK+ZO1MS0;H")9' W-"EBDEYDU":NCO-G5:#T*I M%T06@$G0M=P2RU(O,/[%V?G?N+K 9JA=**N"W!$ M%O$]N&^QX]]@@%M'KCIUE8E7#V4A^VQ/_DJB3'TD_G0S^TI@QY48HM540JX!G0A' M+[/KJ]>G?^ ?W$HS4"EHN]:-\GMA]:I&$",+CLL>:O/IELA @QR4QZ($ M*CY#L#-U.1;D >3(3"%:<)G[+X#GUY3MUQX\]+1B=/*-TU@F*RYM MRPR6K!9@B<)/_"0FDE%R^ZM7", W#S#2@T<7WZEG+R\AX K&8F5^Z6O#K=-# MBN1N+B/&FC!,ZWO8A!)E68+AA,49M&59+TN$&-_]ZZ]7*>.&Y!*;J9,)X-%C M9RCM$C,1+:9FP6@1!K_.AJR=236[M%3%=UM6<_"+3+UYJ%Y/+O'\+440A1E! M,/=&Z9<@Q4[J0NG8U\$QQ;Z?D[&2^^N6"@KJ\&2A& :]P?BHI!B*5?@?H$KWVXO]BDT>RE\5WYY1<7]^_OIY.0349W_,Q0 MK&["$I''2)]-73W[Y_R;\_,'PE*#TWQ(K<%'8$1IPG74)XC%2X/ZV\X]FT?:4^P0>[K"8>4\TD[(+ M=8A<$RL=M^BTU+#F/3S=4_\A8LK(=22 QMW::'>6XP6CU['0OI%$"0-=3:/X M, <)F/1&OS.%/D8U;M8HSM3/G*=_ FK3,K_A)6>R2>B64>I;8\;M' Y*;?#8 MN>>V6QC_>IJ< Y)!KHH7=RI-E"%+#C1 -Y39Z=I*B%%.45T437(/7("L#G\Q MFK-T$0%GG$F9!XS=$BG?>5?Q+@B,N#+)XR0>%R6EW%!X1$_)>9N ]SHY22Z0 MVI?4\HG[,SX2FD3]O5EQX_%;=3UJ2?X0 /,_I("A>\E#*9PY+X5&L8F-U]1& M]C%9<8EABO_FHN8#!%&4XJ4X0 49%.]@@.'K<=XW>O3?S/VR.\G?;X,U/I'N M@=')%FO@;!_)V/9:-<>XVTN._:>3/.33=A/)+C1*J.<&B-RXMNLIKLP1UX_6 M%QW3YJ)LMQDVV"G'O6B_DP.+ME^-\CK;< '^@KLE-7U>-XN&IJ 3_QSD.\PS M=H01 3:V+".YE (LX&/XG2P'02 $UVA![T*-!Z;.3AO:H[S]5MF26 ^GI8FZ M^$XB%Z8IW59JR0-:T8Z*S*-\8W+:X"+>3SU F,+SHD(6G?PK[#[13J29TY8D MK_"=Z@^-0$K-?"8$K#(CHK:P3##)-:NJKQUR"3"]VPJ""3TOC6;@0.!4:J/] MA[C->MN8=L(R*F(X(<_]?'V9$NT]]E/>#V]E53$Z&-!7W%NG%?+_<8QHCWGJ MNG8]$*6@;72!\TF3,5 A"N[]6NJ3>2@Q8O%\Y&GNZA=0B+J>O/N2###XQ$=S M4Q@\5%,E\[Y'.VI&[U[#+0H7TX7X"AB0-&RY+\#7YK:>2[2!"4'Y<\U/S<$/ M="D\30"?;3%H&4X!:,X6E.^D/7Y)" 4RH%E&0L%8ON[)Z9HY==_35LJR=17+ MF@3Q75]PY,>C MW,4L:M>*9(@Y-1?Y-)"Z[Q MBH3"NV''"PNYD"8[;6-ICQ!CJD!.=N<"AQSXMF9(X0-/_M]7]&1T5*\LJ%66 MJ=9M,RT]HG2*YP,#4]8=-5_$E2/H:FQC:&L9!"DTGZW80IXY,.N'DX^L!; MDR;98%)!$%FHAKV#"6#9^B!% ZP31-J=VI[VW7>2JD\&SO>J^R,9-93>B1-@ M1"9_PP!FC0,S;C#M"U=X%7AM(]LSNM\*X?X)#%*TYX/))&]]^FA ME$II7[AO.LCZZ6@M>KK&I%PK+FR%92);2-+2=8W5#]3HHBSRH%+20!B@-C=GGCN MZ.P@>XLGN M'L$P1]8RBZK*YBK]"+_J&^%8=)!K('"3]?>FT>V0I:9QO]_%7)B5KH\W^$(D MTLKT2;E8AR&8:A_:_H'(:?671R=?)S8)=CBG(WW4B:_G*+(P").+7/LUL='4 M_*%#%'DGYV6EPT6?*PKRD:8[ATBYH(U9)3$S;2MFJ.QGG*4GIMKI_8^RN22E M<4;2!$C$1"?VIL3>>Q^\YF!3$J9\,V:Y9)Q=]Q9.^ MALU)Y^?Q((NK3V;#@?*W#1./UUBLEH'VZM4_GC^;G_\M8D6H>3B)6/].5H62 M%RQF)G6M^JE\E+8X.^#;]@HIA(;G"6+"4 MO/67KY') <,D*U*J%&M,165KE^H,/A<8P-Q4U*\P1 $H4&/#B+N_T23A_!IW MD[69'(U(8W?0 )PNTI$I[J8-!ZB MCGDW\8M0EHNTYS)H667"- M2$M'/2J=8W7A-.4VGNFEGN2T[U[T(QK#35!NQ(AS))UU6+!@H4/W1M7KZ?Y9 MQET_._BT2$^0!CRD7BL?&FWKL4MGH=P42U&:KR,LD):H^0CM*==P0@Y3)R&C MSPTBE0ZQ1BNQXO"%4.F -I\K %:G*T.O6)KNJ2J18^03V ]'!$=O",BATRF$ MA:W=8=\NG3@MEXGS[#M;7T8!.B!%JVKPGG$)*8.C_O2]6X962YW5"\FR" M,,L13@P&.;3*]V:O^ ,\1WZ.J)=L2J,-)\\(#>,M41'D'SW:C*H:QR]DY*7S MY+;!35Z;8D.T^8KKE"MP2@!>;37QZ%@=\#E4^&;PN6":XQNK:=U/,/P';Q)B M3=4R9[IT9)5>8DER6SH7T?M&>@!,9BM;S ="F/H"TK[F#8C+!L\Q;<4ZM047 M<)%IH59Z%4J6Y_&47J"5D;%2=2Q[S#O9#R2HD%<%P"2I/P!JR[8,?CRZ/9XU MW.R61:!HH._I)0/]NXLY25Z$:&DO+@Y(M9KL*EPF)E>.VA4$&50!^8KL2'UA MLXNUW=YJ@WV62+=$A+OAI.+%6=BZ2.!VA *4]H_>%C0.8@!D:,&O)]$!FD0G MY!VDPI34C>5WO;;" UC+CMB7O(+"#)S#5U<44#X>S MV" ]*99*E$T?KT"-( M0#@ACI@8-BBRE%Z',.1"4%89S-]34DYUR+AQRF4#%^O<4BM:/G:;N,\4Y :F MR$>+1?F=M'*9ZBKFQ-0X\-3PDS.+G_FBY<>Q0-(KOE4X)7X'2%TV+#.][W/$ M':P?63V>U&3_(0#@AM9S:65CL2^'JNQ#)\Y>:$\=_/TS*0E5+J=MJQ=I\_<2 MJ%B!TYO=@W0O+I\/9T3X4/6M$,TUG2S-PTNJ!X_]\L:UO A:6"2)EG-C%]YK MV7E%R,>#?,-['30,'?-7?EL3 EFV(YU-&PFW?YPFEN:T\>&]RV5*N%3^COK% M.;?P]:3M%2\7ZCS[^M'#[.SK,^77FM[#P(R8Y:]>W1@^07I)##OL'\J8).]X M6R6+KVK"*^KP7GPZ@#@4M9GZQ:UK]=+2V^7"F:B)N:0>?]ZS31PUSZ#)[\[2 M:9^P%+P9NW H#DDXJ4A<.^E(3.R2A1>MEO8][632"^18OJ6AS+<-;P>.M#VF MY] ?U(GD?L;N^F@?FB2>GC@<7"@60.EE!'ZG*GD&/9:\@PJ\(:-!5YOUMZ7D5Z+<3&GN).72"OV099X^M) M>\VJO8[$J,0:=QXN,C5#H)?L[=<@^.%L?"BNLEE$FI?Q/?6W"3JO$G1>C:'S MX-OY-NZ8\7"(R;_WF,S0?L5K0T<^B-O2'W-0YV?SOY\<>H7_=/2G%+@TI#\8 M0=NN2&7R5Q72U?0W*2[E3S$,M\L?M "AX7<22[/$HVJ5;^2(1\Z5S# M?YAAX3HD%?ZX-AJ!0C?@]Z6#.<(7FB#]I8XG_P]02P,$% @ ]JD'41JM MP5#5'P _&@ !@ !X;"]W;W)K[%KJ)H27Z)$R>IDA4[ZST[]EGV^JJN[L,0&)*(08 9 **87W_]=/>\ M@ 0M6\GF;K_8$CFO/=U/O\[HNTWC/K9+:[OL>E75[?='RZY;?WOO7ILO[A7M[C7KITU!7=:5??.3DX>W5N9LC[ZX3O^[(W[X;NF[ZJR MMF]%-\?G6!!MK)YAQ$, M_7=E+VQ582!:QJ\ZYE&8$AW3G_WHSWGOM)>9:>U%4WTHBV[Y_='CHZRP<]-7 MW=MF\S>K^WF(\?*F:OG?;"-M'WUSE.5]VS4K[4PK6)6U_&^NE0Y)A\F+=NL MF6=OG&UMW1FA55UDEW),^.ZR7-3EO,Q-W67G>=[T=5?6B^Q-4Y5Y:=OO[G6T M$HQW+]=9G\JL9P=F?92]:NINV6;/ZL(6P_[W: =A&V=^&T_//CG@W_MZFMT_ MF61G)VCA;VO>2&7F(?7?KZRCBB0W3GZZ?S\S=%=WAY: MFO6:R&!FETN[1Y[\JNU!;/KO.EJ1>6B+):E2U#VIVC MRV<7-#0A*ZVCHPE7R9[+6A"76D[Y&%Q!:Z^V$PR_S8HFJYN.6N557]"RJHJG M37KQO-2&5N#LKWT)4LVV&?;#4^(H*MO943I/<5ZM#>NZW6&URZ:O:%:B%>D+ M$)OZ_-+7 LA\4DS3./0- \8M43]GNP9].E(]P@9-[[+SNNZITUN[;ER7T30 M[^STY/@_>->8;VN-RRR0)_O1YG8ULRZ[?PKL./V&-WYHDS-3,8^)NC3=?G?B MSU;8LR"Z76$?KEE]Z2X[ZD#_H,DDF_7T4T-;WCWOHFSSJFE[DL*)?@'N9OI, M;GOF69M(?RHS7OK[5F@MXB>#9J"%N!47Z5A?X,]$A.\N(1[Z,^@H)%X)4__YOC\].OW[2RNE^ M@KFP<*RL7RNOP-[)B!MJXI&V)6R=9A?6@5D!0+1I9D.S H537',VKPPAQ+RD M483#(=/XD;>_3E!WFKVHA3JTO$<,#=GSL*D$O G9ZL*X@M"[H?^R.]C7V73_G'TR=W,\*EGN9<]*5 J; 0NI=@FU7 >CIO0_O:X'-3.GQ!!U;8*H5' M6F^D+VW(TBY7UH!?"[ X[=QUY6]\)BT=X[+,EQ-\2O,U$&_:#86I)HP"T,PZSX18<596E2V25AZJ*SX>$J!F@UVV D\)S>G,=A<^!8"3 M'N'S;+C_K+FRD]_!]B.*K!'.:\W*PM(D)6O:+P?(B>?@9EW6>EHK4Y.%C28 MACE,8H804_Q")J9TE4.%]JA C][QR=>FZ[V\$:31O(&?<<+*C-F*C;_IZA\5-NVF4V)\Z)B_S,_@*N7IWZO0,P .N>IB71L*P+DB#X*AY7 M?6M,29"4S7L^$S\8$:YLB'M<6!.=" D, XS,F]#Z,];L.819KVC6*<8G*J$- MF!*4S[=CF).]9T@D>^?\\CW9.X"JX]/[DP2I7M1D6??"A\?9!;%9V64O&Y*] M-KOSCA@YS^Z?/;K[;?9* (01!R;FH"7P>'1(QA;:"K;Z6< UY.,;P4N8XTY9 MWLUHBZ1YIMCDU\DNL5G>PC'&R MNX9Q4]//N8#)$8]46%)9%>!V8=@$'6,+TKV!&X3C(BAZ-OT2AJH+ :.F7LMAH)5J)J' # MXG5RQ,+&=:FLY.3L ICR3$R8E)/VX.$.V,KQD*#A9YDI(,68J7(72IQVUC6. MB1_$F3;?0@:;GE<\Z^DWD,OD=#RB;3%LGCM8HN M1HN(EM?0UG"8S':%G5O'%IBY#A;1>=[U;"J(:LG9U2M*HI;S3D\S.$+6MCV= MHC2R/!78D0PPM' @IIKKMY(809YY3W2RU^P;T&C".&S1O_['BQ^/R8HGX2_L MBC"725J0+.4 1';#PV\ 3CHIB*^G\M!FB?8*-A;7@P4K(T:GK#45"Y'*"X]D MW952)9)^ E.MG]/,/H56?1@0?U.V=I(-]E@FDW%DPO5C")>-W@V/S1U%G5Y*8" MD18T*'ZJ>45&]"MC0/A$@JED#(+&[J-'(AT5./1\5Z3Q_7D4"\(IF,6B/ENL MS-:_;5?T3<0EV,1+0Y3);=\14E2>.ZCO$DQGJC83!51R&,,U_6()<<86-XVK MV&/G_8*'6Z]DG2%]F(N]0]M:M1R,YG,UM:*F-XNL(8;Q^_VJ'6-.DI7]$<$' M,736L)0*!&"!.6E9B*GN"0<>PA$U_9BB(W0 PRI0%%!+OM/:;'F!^*A=VQQM MXZG0@AKU4UCH=&$D,:Q*B)DM+%UVA%^-[;IEAYD,0170 M$92.>_(*<2.Z@[1M3[CA9!K08M8XL=,/"JE9D)NAV/0A:*G?[.C$!N;)55/F MB3;&@!O 8RE28L8 FSW6!K^UWT9^E8"/4+$2 YEA^>\$,/#>3M7:?UTK,L]: MTO&*FCN-)CL6L>#7>H/+#0)@SO,<%2C^-1@ /M,_% MLXN7(481F'ZH5VBOEIPS@6;%N7CJ220C,13$XR5KV])(;*N,K@3=>2A'\/\A$8(9B.Y4L=))>CH$R$H\NKUU"N%LR9LG,RF@-'^$K8R;2 MNT3*?.#%W2%/QDL2G42Y* 5&?6CA9H@C34K]'1F,[!;YB9UQ!.6A E$]$DJ:9J\1'+]X22,3G!=-U2RVP>*EA30; M&M%[=]A<#&6O2;"RHM=PUPBL^N! HF*5Y05+VX#8OQ*JT!F1=DFQ6QT5U6 L MPTD@)S"B;AR@6R]4-"12* H= 7,C)[>Q$LK^X6.3)9,ZH#8S:>$6':-$%W9 M@(VK)CU@EG)))4AV@PZ01B7P(WXKVR6/.@!?]G=(G%PYZSO/E+IXA)JV1"4-45QY'^3W<2/8?.8CQ]IKL8H35Y17D0B$8A A ML&N"59Q,FFI$#EPDJ<0/DL,4$Q-'#(M5!7R$W=FO1_*1*8\%J BA*_L%9-U= ME6RF=LT>P-:<0Y2,J/?3<,RO@_,[S><"1PSN =Z7V+_1=//.EA!B>7(QP=[DDT7(FVTBVD[1($9 MZP!=15DC;ILK0PH!V[)7 (K<3K/W0Y 8<:\VM/-LXTJR-&&PS ? ,;2P]@F]65IV MN! -)(NNE&-=(T>TNL=(6MM#)[\/\*&9 K.?PW%N4"(:SF M=\-!#CX[R':*.SB_H1.4^VJ+-)HFWNIHY,S;M0?B6KLI+V# E17)! ,]DY1: M4NE"R,LN7^W3;>6@PZN&MH0P+UF[K5V1 6-]*-_;L:_.7P0[-GA-T#%TB!V9 M']G25H7&3Y!0;^K(%@P0V*Y:+/N+F&1_;Y9U]G.)JCGQ:?,EK'U[30O3E-N< M'' WR7YI&/QU05P",./4.=%(@H2-4Q)M..-FI19)<87Z9>?>^\_6O6M[LZ-G M.#K'VA.9#ILO:^9^Q 7+/ FPDRLI6M3Z(B)?RD'J=>"627!D'@(<& U^'Q_L M5:,Y'A_,Y8"PJ,N:-TJ[4$W.VPG&".)+SF'FE>I*FIS,7C 1@AFTAZ)'B%Q= M&UMHI&2/$!SD,;2N[6^2W$'>F$,:P>/Q%@*S]R@7G;\8!(/,0-WQX$B=]ZW8 MCC$FU=?-#,35* ^TTW10[.:58% ->^U9"#40RM&89'PP)QG_[#"3S&X@IW%W M7E*9WAA%/A[?94#+=/F.$W=T$JOVN++U@IA=>PY25RP%;;->LH',$E\W]3$J M%SN[(*W6UU[)2QP7LS(K"ROZ#)]$!$-Z;VPJCBCT,V3^U$/PIKI2<*R3QBYM MM[&V#AXVTG&L9E27>-4K&CDZ^?1FTDC%GF'-%V MF(Y ME1O2>RE^9;/RAMBBBSAC.;2S=N6C.=YZ?)^!7I(.((3^39XI)@9+AC- M[ATS)QI"Z$!"QOX5;X GEPEVI^:Y-HF-&J(5<$"]UTY2JZ#*^O.8VM3'\,+( M!G);'V8K;(XB48\@2J2OVL"P1_0D.]=PO [ MR([XN(:L8:SS3@C!,QG11W&2:9^,%[W0 M@:D,S>&:6MG3'Y2&.((Y$@UJJ4^R&A?9*4_9(_=_I@ _R'1\M-NDN"E99Q): M<"C,A[J/](?,(SM,]J9"V8B?$?GS"7.6'UO*-I"C(]CT9Q>\I9E40<5%^?@+ MN6HAY#4-@[T;Y& 5FTC">F0!ROF.4*X;>*L@)<2D)'>VD0PJ)Z'(@2R1&*')J_*CY; - 3NT2(A0#REG=LB _I54 M5"!0F(*V))DF8D'%"$$R'E./!E!;2V.$298N%B#0!)N](_#F\2=/P:25*&'9 M%7!8K-,*:5[P>!A![8NQ&465&(ED[&Q'1V)^3J+@3,F8PG4((A0^RCGPIWVY M"0?8),MD#6>ZQ4/GQ.MP1:@2\C;5YZ]I,A:(DB SPAK7O"1:Z]>/_HIU!<+ MUR;BS%*J*;'>R!FRD_M,\]:M7<@1H$KQP5_W._U,\EEE3TN6"K/FA$_H-LA: M!/!6_<]^Y5_.I@\R,@FK)$D02].&TOLY:_S+R?1Q&&^D_PW+O0D/-)NK93?:$)DRH*IH)YDYA^'J'^!*289C]R5_/% #I0LRA''W/9/(TU"U>/M<]N;&U8QVZKAZ^5X2,<1H??V,8G&6K-P MNZ;R;5!!*H!'J^C"O8Q9@RB(J)T=;)R(:F$3/D2]1-QW3OK MD(D)%'/H;#' MBV(*TJ!!W%5BE>SZ COD@^5@45@\IJ["!.-].J]5Q:28DN,[)YHU6R7[G ML,$1>L1IKUCTD<0V_1$#^GTE%\:\@%K:XE5S -#@@ M&+$,$?HO_=H(>Y(QZ!51NB)K7X2 MBUYH0?[(E0*^;X"Y53&G?+MC*ZF[XTV?D10@YPPY$B1F0LC;R0JU[AP93=BY M;>_(OE''#MYM6_)52WYJ0 HC-T3SW?!@&!1=54PQ[;)#D5JDCC2B?,)M0MQD-JNV!,&Y87XUR' MM2;K: 9/LL*55]ZE2=QV3EXDN9D/,?L9[+UA%'4D;\H)_,Z5BX4XP1)U$G'" MH:!6S=O6" 5QL4"(NQ_2&=.$??Y4F^J#K_3_,_6'1#T_2W^T7Z) NI&;9)^I M4?8ZZQHEJ%"DX6)!\]$CVA_D4EVQMV'U'SR,L2\>H@'J<9% C7ETV,FHIQ9N M-#D;24)F'J)TR%?B?2,)W!:3(/?$6$^"0@C],A>5R"0:O MZUE(=;Z65*5[CIJ+*DX5%9UX&E MASL1>1A#=ASJ:2Y\ A@5:_(20J /PC ^9Z.R--O&&,"[F\($-$G>ZW5"9,B: M-?@;8EK&*-]. :RO=F77G!V0*\D#DC@Y^IE6B!EG@QD)V?L%001IGT(+XY G M8HF&S]QERY[H@0&M:6U29(@:'BL6OD[ T! &YHL/@'(IL'IW0V1%709?,=)9 MU)B9#HG4+B9WV9'VN6FVQIA0(-.0&A/ZHB'#;Q72_45I%G7C"_:"TE2J0=[T M1@9,!D2?LW?FFF:YB E9^B![:3;PZ%]QJ?W9UZD[=-$X8L6KTM&"SDN:_"V7 M\$&A-7TZS4[ZE^F@"A%P;?56 5E*9 M#:ZID\$C[R*X14";(_KB6)&2=7V&F&ACL4&RB0*(M>*L3Z:F?RCU&7-YRC6/#TY MX2 B3>)D59'LI=8 M%3K8E+^H>W4WR7:;I/@B;YS3LANY_$KF)_)"\@15B&!Q5(YM?Y4_J?)P('>W MU;/6'!O@(-2H^*IGR:Z5*NYY94K)=C[3NUS$OYW(K[_CS)C(A9M\I<9L7<- M<:VW\U!T'ZLN J--!T_X#.[W9I]_%7CLF8GSRZ?^Q0A<>O[3;W4'8P&BV(8U M?=7&!RPT>)M&>.<#)1\&4R?6WU@W1=$>N"D^R<*]%M0T^E60%5297*N;!V5W MTDUY E60>S=ERO:6UUK\U'H?^(^XV_(E]UK$ZO)]*<[(U[=-$= (BR,YVK@F>!6=93""NM,W[52].Q;%<"DY*5;V7 MA-?RN'6NK3E%2(96V>DS&%S0PH;*/%RC%^Z &(7*?NL9,,G/"K%\634?[[=4Z^KZA(N30 TB36*$W+#.#3^2>]!*&$ AX*YX>V"[!+QO+-85'/8<^*[9)/#\>8T.WR3 M5[^7<=J- OL\TWF]GT(:O"86PEO>(U"FH07$"]^[D32?5?A$\"VN]PD<+WN% M4E!. /*-ECBO+@8FF PK">FF P[NYPQV$JNFV\L2#^ZE)@:@?WZ SXYK=LSU ML=H^4#$Q/%@?#H_N!38C+9.0,&_L91*!^'2T,4L>8[:LY/U["%$\;2VHC&4LEY(9L M"',F[#+R(4A15U*'([C?Z148/Z)&1\<*EY@$([(0L[I:^3.\N;$O>GVFJ+\"4_):F^L?SG0/A\7U@@),2+.)$ M^SK)#B2OJ.R)SWC5M!JQOHI97T@Q?-$NOC>@(83XJ%H3;KP?*,9.3G?'3 Z6 M)Q;O9![@*H(A=A%X^3:1HG*L.PENF3W1_)(RY+F M=_ER*R!4HW">Z4"^?N[*\&A22N#D#I*\6"0&2@*G*L31/]DYP5D4_H$=6]T6 M&$*PV8O_'R?2!]X*$E%'9(ZC(3<).WUY,7B#X3S>4 C>Y>.3QR3P%Q79(]&$ MXO27EH\_U3*Z\?A?/=]6AQ93+L@,N$_+UUJ0SV@KM'K0^_T'!H/BR #1]RC=E0 M"MZ< C!;J(BPA.A3%$#)HAYV][QCQ!33RM!0&:@3\N,IF7]5RCA M$%7R:QJT"\:X_YZANDW>!KR)&K>3_QW=+R:L^'9!_0J/)Y@4Z;/VD[2.ZXC65ZW0YBXNK <3Y$X M*1\N/CYG9Y-A,D Q_>L'8WYQ$N0$ M4@TZAB@%G%DN4\#M#!V U#8)%I_,FOVLQ!0QPT&C4T:#[@-9I"B;:%(9RH%S MGZA+G^ML(X[CE31M%R/L9@YQ#,0Z?1B*%>$GZ0,57CXUZ&]W09^/-K$-^#0& M%J<@*Q; !CX+G)2W')HB9X%A<_/L(@!!V2WSO$#LI5#D7O,1,8^.W9 M:XVSJ@_L50T_ZJ@OH<$PP65H6RPD\ZG/RB_+]2!U-E#!Q$4QZ.'"#EZ^>/KZ M+1[P/&]5@[M%'>/DN!KTW!CRST'0F^5A/R# M)NJWRI8^7!494_+X.R_?2DX^/#7CL(1AR:]P$""%K5M]=6WW^?:SL_]S1M\F M;/X9?T* 4[I5FL&))LO@_>V!-QG_6,'.HZ[Q$4FIERK;L:>/XIV/NAAYKWN2 M9F2X&B/)2&@(.G7-PH.MX4[B;"L91+VN#+]I9M,;3KD$<'S"ZVU/3MWI\0OTO"CD/B[._Q(:-W)'Z<)GV;^3_N9-5W7K/C'I35T5FCP$*\8-YW_!1.$/WCTP_\"4$L# M!!0 ( /:I!U&?0@L8TP< ,04 9 >&PO=V]R:W-H965T MGH['-E_+C; G>BLKO%EJLQ$UEF8UMELC1>&(-N68A^%TO!&J&EVC:-1MW*G5NJ:-\<795JSDO:P_;6\-5N.>2Z$V MLK)*5\S(Y?EH'IU>)G3>'?A%R0<[^,_(DH767VCQ0W$^"DDA6:7+7U51K\]'V8@5&QQ&!!DX5<(>$O G=Y>D-/R MHZC%Q9G1#\S0:7"C/\Y41PWE5$5.N:\-WBK0U1=WK1K([F>M5I0BILW$- MQO1ZG+=,+CT3_A4F4W:CJWIMV755R.*0?@R%>JUXI]4E?Y7A/YKJA,5AP'C( MPU?XQ;V5L>,7OV'ETN@-NX*N!M$ I.LUNW(82\/^/5]8M_^?5P0FO<#$"4S^ M'*RO,J%\/+5;DJE:L M%HM2LJW1.U5(RU3ED]IEQP(9RXH](UD@YP:HY2UJUL.6M[ 1EUJS&G(J43=& MDG1:04K1T'%1%8QT5[GTBY74*R.V:P4,Y K";>#V5967#>DEL ]QN2I5;Q"Q M/*Z=4\?(K3;>/"M7*!JH5,[XE\+ 2M1,0%.RYPLXN?\X.X<]*A>6O?\$8/'B MOH8D:'KYLC[G% M[?R*O9\W%&6P+& _H6;]2XH2+P-V#_S7D@CG5GE95VM5B0\G[-Y;=. O!9AL MZUHH#)WJM6XLR.R'4UANI&0;GY22DI(AI62?4F\?_U+ MQB/^M\'.-.#)[."-W[E#O@B3KQWG HQ*O74@=F$3!V'(61HDTXA%(1XQ>,9) MR*(@C4-P"=.PU;4EL6">0NS4/8GN'8N28#9-Z4\83#)2Q)/CR8.8<#2*FMT@ M#L$0.U]D;4_W$4=T41KC.0%][,R8.4D)%)D^,YUV7.!%$#HED3R#07&4D%E1 MU"J1!&D2^;"COVG/PZ]BV,+[/;_Z\P;?J\?7 N^UU_\G86?ZL)L%TV=AU^T M!AX?NJ7=>C/PLB!-)RR* C[)8'00PMW3($'DI0'G>!,'T^GDI2>B+(A3![@G M?<#+T'P18Y^-FU]&<61C\(H?I9>M..B;Q+, M,@HC/LL #,\FV.&(N-8.CI"9^O#+L!/U3/PJ"R:<#_9H];\PNF_OEU19J>D< M;X+P$[H$1KKV%)I,U^-06BT@"EA3+519NF:32[4C2NSVQW)MZ[9Y]7NH[*!! M7Y8OR_)A*GP$S\T"DT<._K[B0($PEWBO5PHZ0JBLT 1(NQ]7$NN'F MA08/TI#C*2=4^<0*F'A$3S<>N*.V65CY6P/[<%I5.XTR45#;U8UAAL;]EMYB MG#*^+Z,:L976Q;.Y9R%SL9&()YPNW- FRA/V0S70]EBL?45EAZ/:$"B(6B+# MWW;@42U/8EET'NUGI>,("(MR5>Q\'GCQDN8Q)A^QXU*CXV#\V/F[+ [\\LU> M#:#+@)ECLL_1O@)\RV#S1N=Q&;;_-]_HIG)AZ:;.XB!@ADF,:"#E%I@>JZJ% MW VXJ)ZZ.#UH07I1*C^$6V;QM$L%SE1?N4O *(A=\YS03QRD$XXA3U0KV:=' MQ_79MK3PM\\L(RHK_)46GH10 =3R+NNV;VJC'!UU02?*DE+0Y_V,?V!469/X M#YCDK@05YE=WJ_9 '5C OMNCV<7.+(CCC"HY%1.>!3.(XF@]&#!>%OY^SO!C MQ;#PM\UMH.0_!TH>J_;]U6*/8Z>4?-S*O 5O<1"2K3W+QEUK!I7M:QCW%XNF MVB-%0 M3*WCIZ>!%&U<(U2ZB_"6&M&Y=XS/ZI#HC+ MP,.(!5$>0" ?I./KP IPJ]KDI_/7. M%>2RJU,>(H*N=9[OKCF3%S$Q]G$ ME8HLBUWKS>+)VU,EK@]ARJ8\80GF)1[PZ,CM)<+$E/A9(G0IA7+$^S9_[+/' M>/!E"0BNW/:R[ M1:VW[CO50M=PE_N+"S$ I0-XO]2Z[A8DH/]P>?%?4$L#!!0 ( /:I!U%( MPEDGM0, %$) 9 >&PO=V]R:W-H965T=@&OY=A)F@UL _8F1;? +HRXEX>B#[0XLMA0I):DXOCO.T-=H@!V MVD71%YN7F<-SAL,9S0_6/?H",%LE%TBT\ MJ'T1>"%=SBNQQRV&7ZN-HUG:HTA5HO'*&G"8+Y+5Q>WZDNVCP6\*#WXP!E:R ML_:1)Y_E(IDP(=28!480]/>$GU!K!B(:WUK,I#^2'8?C#OW'J)VT[(3'3U;_ MKF0H%LE- A)S4>OP8 \_8:OGBO$RJWW\A4-C.YLDD-4^V+)U)@:E,LV_>&[C M,'"X.>]AT(N&/UB*4;=DCT-/U01A&'(%&@B*KX%3&QS4FXB"< M]/ N>=BN?/*>GO3N+WIF$"Q0G$?@W7GA(*$:C U%I"051@AVA>'R4\%3:6(%DUE1JH;$ 3U!G$0L@& M19$C18%8@27)[@7 8U8[8H5^#%2#.'S*RBBYB].HL29_XL'UZ73&Q)!+9I,1 M':],]D_TV .?,UU+YN9L&:^#O+-:"PX4*^8UY0#SG$-[H 5!B!\Z 6-8\?2N MT[/M]<-'<6[X.BLZ$8-L$N9UX-J( MCN$7.C:WFEIG]&X=D;"-#2TN45#F7Q-LF+V+'K;V%$3__I;.<8A0-F4CZ=7E<'RJ*J>#-E>BV\=FSG6D-J'I>/UJ_[VP:MKDBWGSL?%%N+TR MGNI#3JZ3\0]7";BF@3>38*O8-'="Q >WGEK*FG? !_5?4\F]0 M2P,$% @ ]JD'48DR1H, &P OV( !D !X;"]W;W)K&ULS5UK3@S<521L]FJK?T M=H,DQOU@&MV2F5^_YUX\N]FD*,O9W2^V1**!BXO[./>!UI=W=?/>K)5JQ8>R MJ,Q7)^NVW?SCV3.3K54IS:S>J K?+.NFE"U^;5;/S*91,N>'RN+9_/3TQ;-2 MZNKDZR_YL^OFZR_KKBUTI:X;8;JRE,WV&U74=U^=G)WX#W[5JW5+'SS[^LN- M7*D;U?ZVN6[PV[,P2ZY+51E=5Z)1RZ].KL[^\Y%^=G!)!JE!92S-(_'>KOE5%01.!C#_[GE@[AZ8,]UV(:;RM6SEUU\V]9UH:#1FHQ]XJ_PTB-,5 M'?:K[&;0B[J1A)SQ%73R&JEP/36?/FLQ?PTZEGFYOK&SC7?,]<+ M\7-=M6LCOJMRE?>??P:Z G%S3]PW\X,3_M15,W%^.A'ST_GI@?G.PV;/>;[S M/?/]JHR23;86LLK%:W4+D=S07L5_72U,VT!"_OO *A=AE0M>Y>*3L/1CYQ(_ MW/Q37!>R)<44[U2VKNJB7FW%.XPQ2]5,1/(PR3_V_"^=09\PT:I1/(UX4XF? MNF(+#I]=3,2=$OA0-2H7NFIK(3%'KKZ[K8M;U8C//SM[>?%*;)JZ5;K"R!6H M58VN5F+C"6DC(:TC1&0[=!2.#AGH>-JNE3BA/8VL&,@]^0+JT:[%#X7\4-^4 M^/&?Q#'QE)X\^6(FKKO&=!+S@7B:$7LIC:B7_$M8C3>Z GDM-DIK2E'5U51] MR(K.$*,]?9BEH__P\&,84<-.L+!A&?R/!_[6F4,1J/A$O%6Z2Q_&5#@\CXXI,NBP*\.)6 M51V8W"@\2E,$D=B5T+7$H2^4(C^3U:M*_TE,9,$9;(9'TC0;T%BU&D>">1WC MAS%IUE7=H55VPSG *(RX&5[5JV@K79,O#)\]G+Y\3S@DX'4SXYOYS% M#S8@$FSY-WP9.Z%DQ.WG.D\WS M;DB"9&%JH0J]THM"I9MIZBWD3(.%8<4**,%(R$64S_!K6,-*=Y!,NU5:*>N: M!IN'D%4UMJ'H4"*_9V2+P.>_LW9&419/YK/3P(@=J11.M&5^*ZO,RC*HD96G MPZD>IEIL65Z@XEBX[II'R)Y7-R\K%;$M<2YYXER<)+*VLP"NH7,\RN@/HK0N M4Y'+A 9B8][A\1!BR$S\K)KL_4%KO]^\7W4KP B:Z/FQ!O[3&'-+]#'FG$=. MQ U,W49\+LO-*_&Z7I=DU_DK&K?6Q-H"(-(X=CS<."?["7MTMG>I59&3X*P[ MF&%K12I=0I&MM25C.V)CI];(>A8$8[MC:.]GQN2 U;U1FU:5"SQ%Q\@#AY^^ MP.&N8<#N[C.X#Y3L^\3:B">GLWG03QKUY"Q1V(=*_816W"@&Z\5VPIN1)*]D M$].)>:7Y1Z]$=J:_$CU_*QM==R;NVAE=(SI,T+#5R'J83$9,=H2#"(>*P^@V M@C40:%Z774D?/3E[/M@0^UOPH(3\T%PVBAFB IPE6*19]TZNKM] 8=CJ:I." M"K: 5A"=#00WL$99PSCWD4G/:*://$[;9N(=G@>!@1$3K]D[_B&105UY:9OP MP."/B)H_"._I=LO.&C-'TEF?1K=/W]R!RW!" X_?&82B4[M <(#LFG["3 A; MHXOJ&U(()#:4LVHXI'&_SM-(79F6 $NFFA9!]$=PM]L R^;*6$IXU8 +@H9[ M$^66B^:;(G=>N%W71L7)2/H@G(AN]920'F-I>X"C<]V!>]'R:.O++:=[3(:Y M^'L0<6=]CU59.B'9L[;>NTYKPGL;VHJA M,$Z4^>QW9TX^.@O@^Z%"&%GN4"R[@SJRW.C^; M1"U:2R(3_JEA9V-/ZY MZ0"'MWU(]+U:-%Z7YV.@:(EYK= ?-^=3TK?YZ:NC1O/8LUU>.#:+("V% MHV*\1[#,42P$W]4'>,Q\$)>RHE5I9$6'XV)/'W$F!SJ?S\1WRZ65#1?#):;[ M!1\WB9'S!*65:%KTN+,&H>!DE#[Z[5;G*N '27$4HL:,S'2/V4E," /?E7Q6 M*7LRO^JF@PKSHSV?1<))$#@B8#\00HL8$781D_&T="Z-^J/336*Q1M?B^#.U M9>U:-_D4J M.U=#VM6J\CB5Q6:X-YLE@0)==E;G#23(GJ4R"NKKQ>)A(RU5) M&UHH>+2*&.7/R-J&2X\+[H8.^C[[%D%8KD@,X3!S"X;H!(;GXY=Q9VCLMK*Z MJ]I/=W23.+W7;U!&*MU0SMAX)TG0QF^6T;E3V&BY P0#+E%-9>DI%>P_PN?? MHMM+OI4;3 ,0:4X$6'QPG"(YZ4S".8!"UO4*HE"P>_>8WC'*^>Z4[ZG?)*S,5CN$ M A ;X:.(@K>JZ3#-S:'P'0D<,/TX2+UK=HET,]V3Q;SJ'U,$D\23(2Q@UC?.P]AB,M[-@1PUX8-S> (^E[: M0*+8W2R-:K%[27 P3 %=QK9XAK0+]X3Z -B6)*<%XL<&,:@%A80&I@/ M0\#SV>5?$VS.D_P;K_0R6>F!P'6X$!X?:'?PGHC99"*.GQ!,<2;4;NYX=V<1 MV/E]".P["TO&T-9;2'N:I=A!6TXNH\_W:(BC;:Z!X>F>*+N@3UN(R''LDH>3 MG6JT:LF5C*39R?4DD&H FZ0_E%T5'-(X2%+&?+M/2^H^"GU!8VDZ,[&9BAF?BAJ/%86E&4-["23_VKU8)AJ'/()Z;KB6!PK,V*YL5 MLC,J^-31'4_$?I+$S>QJ-F$\;NL.XMO7_SE]<49%5-(J%Z4M=(WI&[GA1%TP M^1DHTSDAJ["+F"QLE&R]F%W_\[>]A;U,FG4L@E#N\")QC3;_\O) Z6_/GJ5X MF)X,0!H(Q6[99\-#"-W')LNE7==:9A'33Z\ M-7@]MBPP^[\ZV^V=JYO'^@K@"TH+DI.0QCGZ0#CS.U<;S2$,^T,[+>LT@3Q7 M/>&<*^/3N@B>5C6W!(TGB6_O!8W,-JZ-T@;H![7$Y 0..-?-4(SM0 H\D]C, MA6OYS@0N=N+Q/NG*9>^4_'I1Z)6T&].GOA3%S(/HNS3(=W6BV#X?GM,Q-2T"*_@]&8N +*=KJ /'&R!4YB:L-IMBXALG;' MO+*H)94YRRX/V/6?.T8\/ R9ERN5>$Y^=B,U&0(*$Q.#\W&I)5_4F(G?7(V7 MN$*'$-ERD(\(B0&7?7^*V9!Q7>C"QC&T#U=TX&1!]E!.3-*D3*8VJ6=RLNP^ MX0-K764/<[K M#A1-[8<3VFBOL2<$P6.!AFT7ZD<;]T8SO?#BWM']4.. K&R2(#WH-#'MD Z2 M?L5U+9@A]]I0XOR1S20'._T.!SA)TGZ.LSZRN!>#UKW9'TJ@ MB_KVG6&/FMKKD&X^>J%!*R)),NR+*&)7XB$<>>E$)^E^Z9=@CBH&CQ22!I60 MD?JURU;S$"28)^08O @$,))/P[=/G#.BZZBG#N!FE INF%,%$)<:W.26)YC8R"JQ-0, M6M?3PQ\3F6NNH\4#O*)V$&J#L:I-A[8[Z\3%#$ FU;9G-N+6QNN2D]Z'HSS# M9S7=\+/^FHM46;E4@;HG=;IUVQD-C@QH%*;E<5OZK\KJX1 M[.B654Q+(#;,PD+_#0+W8B)N(!I_JJ; DRY!TT]Z MC)Y=F)+KJZ%W^U%:R#VQBLFWG4YA Y'N@_VH1P1F:9NX6<,54(&2"S/[/?,Q M.B^.PB]]K^X&)CR(*?^@>R/Y9V$;P#)9[@&4>TH'%VD")Z@_Y:G4'YWM'T_+ M'NY6V_ST(/+IMQCV^,N8T$"X#:%E$KJ!8 60-&9TPAZ8L?UZBH^'[ 6Q#O12 M5%?47*9(K]90TUQ)ML5%"91[[7H]PQ;0VUHZ9,YB^E[[MNL2X(PSM]V9T-O& MZ6B3;&>_=1RJ#+5L=<:#_Y#ER_3ZOF[U"91=FGMRCZC-RA\ MN_\T5QO"&:0PW+2?I!C]O0F*>O;=@PC;V+T*X9,V_&B\&A@O%E 2HV$(E *U M!U^0&#,?[N22MHY''IB-[JL\/*P^;+23O]0Z%-*X)EQ\G=P8)#= 8!ZG9,*E MOJD'HWW.3RC)B6.O M<&6S+Q*>GEYYSA;98CLGWTOA#8;BX9[3'%_4["R;0>[YZ#PX2Q(L-##<0PFM MSYS)J;O69^U]IQ(<(]/HY3H6/:,1*1?,#YW OKQJW3..E0F]2M8FMG61N ML@P&QU9F[["W[=0B?P_0M-FYT/G ^JMY;/E5_]]67YW*CK!TIV[^T*.*A^U; MK:>IE)5UH;*ND)00EJNJ-M1GE!I" M5X,5K@8;=L"O/S!^75^S31JM?8F-V+F/'-=16759H;"NS&#M3>1"N +.=JYN MWB\I!D[CT!U^[J#?_6G V!K)Z;^+YT>D__K@\V V,P4L$8BZQ5ZX7&/$W/<& M&_8X$@((ZI!)4R4! 7BZD;N_SF!X>!32DX-N(']M]?YZ,2F6.Q O&?W2;'KA MR!<$F9^Q-_1!!8&=R\&GGZQ?>W^>_D ZB8C=5Q)ZV'2]=()\KW*YMUMR39#J M1\['_* J13KZCOL"N91+%H(:[^[66'4[K>_(-5 \HZ'3-M_JYK_N7_O]MIYQ M$V4P+W986-P&72%$8M\P=F(!G3K=[?=,KU3%5@#D;J-*TP!_9151B^*&XJ>* M;YI(SY;O*1<5R*$"-U_39,O%G&$XXWIF[+4< -9$C2N=F:[=E]>X\N8I=D] MU=$K^E5=-6H)CMB^MF'SY.6@#>DN]/?1/"1PMDO#Q[$DKRD]EB'?RP7.Z[5E MQT1<0VU5_-553KNJDM0%LB@H\V%C2NI#UEPNW/8=8BID;YPI=.LFJ487V&X: M )9&%]O875(D=VCVZ:H%9 ,!B %[?YLI0=?NJ1O_5-JI>\BZ^KZ*>5(R5URQ%[Z?G$@P<"_F3_CVV@5%5>[3# M1IW.@XZY1Q]>XL?:.=D=;@:UOG;31O8RQ;IAB ZK-+X]^WH!KZ15QZ"&VG^B M8W.:"U)SU[465Z6W936D1N^X(@V>AC&!$'N'J- E-Y>YB%7[K*PCBIK;O#)1 MVCZ1)YX@C;T/+!H(NPKT/W,][6[*B:/+VI:A#-A,;=^6A)V$.WKY1#R57U @ MZZCG%\@Y1.3W4(F]--#6"Q<-$ 1U=\;Z]7_VXF1"N#T\4.@SI5Q;HON%=!/$ MO\!N0CQZNG@,:3&FY6B_4:5+Y^[G.C.M"B=);Y()*1_?">C; QF5I<0P_7O) M8;/%/HFO!13%X);?KCY8[6NL<>/NQSVJ9PQ<_*V_,O%,(&;_D%-DB,]DLG;;L898PW"4>PYWKHQUHSN.3## M]\#%K]C56T]$P':$ <%,]-ZUUN/%^-9)']OD!4OC/'#(G.Q)UU*2=91"RRM2 MHY$9[=[\XSYD&,[@\PTLW4Y0>#MXQN[U;R8:8!>L45H,:M7O&GZK[L3KIEM- M545M7Y0L"4BC]Z8-<\3^7>+.1B22/65R92NY(Z9]:)A>/AT"V$'&,=ZH?^U; M2GS2VM@KKHY]T\5VZGYTH[JJ;;;TL?N1DC0:3,0ONAAF) /4#8TM21K%W1". M[R4;1$=L]1UZLM_!GGIB6&)EZPFR'-C9M66B\8$MI9\;U6[3:S1_%:U][>(W MPC"I]'!0$;H=R/=L1J\&#[?C(&>(4?< "<#.KO&MVV\&WN'D#_@![* MZ%$"]IR)OY .OL-&UN/]=D\/^]CVOG(Q@[*CN]^EH][O]T'6_/[8- M:U>68BF-.6>)GXF=$ ]1HOI/T"B], MONKE36_:FEY'Z2_C#]XF#,KV)]CV/&A?A11RV5?&J!+.5(7\^-U#A*RK\NLHTI?G%IBY@ M21HZI% -IZ"A(/\.FH$7&J[-,7DG@MXXN@X<5;O_P>(WF?ZI1\;_]Q+WKE>-96S9C M?.6)5^G-&DE,_7F5(%-3"5.MU>3.%;"9\Q4 M9HBK.S)/W?T#G-Q:E=HXG.GK3^FA-]J_T9(N*!KCJIY])W3_(4ICZLP*#$XK MGA(.@$KAAXJ+2?[U"$&]7^+X1=8?8#/X]L( >JF 4B&V94&@)$S@\UX; M@B>PYU%OSJ?&D2)%O5C'=?N%]X!R11W Y>'O$WZ@(W'.,9HQ$]1_-O;6^V?) M'Q4 AU?\IQ.,#4KLWQ<(GPK_UQFN[!\EB,/MGW;X&:"#@LE"+?'HZ>SE\Q,; M(/M?VGK#?Z)@4;=M7?*/:Z /U= ?+^LH:SN%UH@_,V*K_\'4$L#!!0 ( M /:I!U%QA''.4@0 $<* 9 >&PO=V]R:W-H965T"D*98"Z8)DZSX,^T!+)XL)1;HD93O_ M?G>4K3BO6+%^L4GJ[KE[[HVM773=TJ+(@U*ENFFO=]BMA-31=!+.KNQT8FJOI,8K"ZZN*F'O3U&9 M]4F41+N#:[DH/1]TIY.E6. -^C^75Y9VW18EEQ5J)XT&B\5)-$N.3PY<'AFU%\R]^5)-(X@QT+4RE^;]6^XY3-DO,PH%WYAW<@.!Q%DM?.FVBJ3 M!Y74S;_8;..PIS#NO:*0;A72X'=C*'CY47@QG5BS!LO2A,:+0#5HDW-2_WN( M7PI[AU[,%>Z1A[]G<^[@AP?\1^!"$,-],0\46FQ#&_0^ M8H;5'"WT$SY-CB SU(?.8PZF %\B%$910TN]@/=2TXFI'6FZ#\=/X)Y#S?+; M.B"=&>?AW'E)S47;U\X_"6GAJU U4!<6(5/".5E(LD54,HX0!R%[&BH:(J:V4&M1YY(]HZ#D-)^: ME3-*YL'AN5!"9PBA*UT,,\=!>Q263HBA-UZH-PSN@$C[8#2,#VD *,6S;"T< MF:R65KHF(]5S9JPT',?#5JDUP5^249RT7TI4.FX1DL[L8?J_M5C48 ML4@WJ:,5T17+I36;4//J'@;O&("0?W&/(+A?0XSI9MR9H-FDG0BW7$S-H\E= M2YB$$LB;8),($'%L*#VXT('/IM3P1?)%T@FR62FQ -P0;;XQR4HA,[0=N#4T M?QFDR^I52:80-F5-<)/#-%M8Q$!]65M7 M"UK0UW4ILY)UUI0YH#"L*!O@,2NUS,AKAW9%+C0S#3=+M)XJA$./FZP4>L'C MR(;2H784X;H/0RF<5^R?R*EEZ9S12FKZ4$C;P%(."K3LZ\M9XK(\2.+>0\D] MF9DQT MAWX34S7.)=AWR'JEP/$*2=B"":U1A2EP)2YGXXR%W+HY>NE^Z>Y=[ MA781GC#<)[7VS3W?GK:OI%GS.'@0;YY8=+TMJ/1!84&JO7@TC, VSY9FX\TR M/!7FQM/#(RQ+>NFA90'Z7ACBL=VP@?;M./T74$L#!!0 ( /:I!U'W$-:* MI0( !@& 9 >&PO=V]R:W-H965T $$C3DJ;=5DI;:=V8 #%IVL9X0#RXR:6QYMC%OK3KO^?L9%D'M$CP$I_O M[OONSO9=QFMC[UV)2/!0*>TF44FT',6QRTJLA#LT2]1L*8RM!/'6+F*WM"CR M *I4G";)<5P)J:/I..BN['1L:E)2XY4%5U>5L)L9*K.>1+WH47$M%R5Y13P= M+\4";Y"^+*\L[^*.)9<5:B>-!HO%)#KMC68#[Q\<[B2NW98,OI*Y,?=^\S&? M1(E/"!5FY!D$+RL\0Z4\$:?QH^6,NI >N"T_LE^$VKF6N7!X9M17F5,YB881 MY%B(6M&U67_ MIXCSY<9Y<(7UHUO?Q!!5CLR50OF#"JIFU4\M.>P!1@F.P!I M"TA#WDV@D.6Y(#$=6[,&Z[V9S0NAU(#FY*3VEW)#EJV2<32]$-+"G5 UPB4* M5UOD$R"]SC%_CH\YJ2ZS]#&S6;J7\%.M M#Z&?'$":I,D>OGY7:3_P]?]>Z;ETF3*^6 ??3N>.+#^.[WMB#+H8@Q!C\/^G MN9?(M^+(+46&DXA[S:%=8;2+'6Y+A,(H[B^I%T!BKKBN -,$Y(U2"YU)H4!J M+K9N8%0*@C5:A*IARX$5A0^R"D%\TW#C9;6UGI@?OW3>A6\&NYL!H7,XQPRK M.5KH][RV]Q;F&U"X0O^.)NI1HA E' T/!L.4A5C]N2&>)$$L>72C]0YL+XRAQXT/T/T,IC\!4$L#!!0 M ( /:I!U&"7\GCPP, ((( 9 >&PO=V]R:W-H965T05X-2*R,6QWG4Z=% IO#=B^;;EY M6J'4VT60!,\;=V+3.+\1+><=W^ ]NC^Z6T.K:(]2B1:5%5J!P7H17"67J\S+ M#P)_"MS:@SEX)FNMO_K%QVH1Q-XAE%@ZC\!I>,!KE-(#D1O?=IC!WJ17/)P_ MHW\8N!.7-;=XK>474;EF$10!5%CS7KH[O?T5=WPF'J_4T@Y?V(ZR:19 V5NG MVYTR>= *-8[\<1>' X4B?D6![138X/=H:/#R'7=\.3=Z"\9+$YJ?#%0';7). M*)^4>V?H5)">6ZZXY*I$N/<(%MZAXT+:>>0(VTM$Y0YG->*P5W!R^*25:RR\ M5Q56Q_H1^;1WC#T[MF(G 7_KU06D<0@L9O$)O'1/-!WPTO]$%/ZZ6EMGJ#;^ M/F$CV]O(!AO9_P[F21Q_$2]MQTMEYHNCG58 M@:[!-0BUEG0#A=K &Z%H1_>6J\J>7P*%&O>A)N 2VS4:2!._D\S@CF^IY!P: MPIM9W2)U@(K@.7P02A!Y5C!1NO*PJ1(($V+(]?.("]R M^J;3!&X-O2_&/0'Y N^_]:*C&^]"4/0>'9WA\=E/I'?#U]IP\NWIQ0AYQ[)P MFGBF+ TG>0(W2)>_T;("T1+E!_1R%I(XG$XS/Q1Q!M>Z[7J*U &2=][JVFVY M(3?"))W0-TYR^%S7@O)Y+%GW1@G7DV@2)LF$OAG9OB:VSO3C0T;TR/[&^)CG M60'Y+'DE5)#%85K,()V%DS0E!M9>TCM8]FTON8]=A51?I>#C TFJO-7&B7_& MC3>I9SX]'R9LDIR?S AE-2P8&T96,/B%\K\54KY,&DX&H.3&//D\/7#9HT\? M[XC/H_ E)I_@++U@]-)).?ADO^7&%K'?W3?8J[&OO(B/W?D3-QNA+$BL236^F$X",&/'&Q=.=T.766M' M/6N8-O23@,8+T'FMM7M>> /[WX[EOU!+ P04 " #VJ0=1)PG+6 MKLY=895,>%*6GD]&H\OS3.I\\.X-/[NS[]Z8JDQUKNZL<%662;N]5:G9O!V, M!_6#3WJU+NG!^;LWA5RI>U5^+NXL[LX;*HG.5.ZTR855R[>#F_&KVQF-YP%_ MUVKC.M>")%D8\X5NWB=O!R-B2*4J+HF"Q+\']8-*4R($-GX)- ?-DC2Q>UU3 M_PO+#ED6TJD?3/JS3LKUV\%\(!*UE%5:?C*;OZH@SP71BTWJ^%=L_-C9="#B MRI4F"Y/!0:9S_U]^#7KH3)B/#DR8A D3YMLOQ%S^69;RW1MK-L+2:%"C"Q:5 M9X,YG9-1[DN+MQKSRG?WI8F_G)%B>W0%8I;JR5^4KQ]3]N%JZT@,D_CRPV:Q:;\6*S;Z#7WT=)_/A+ MI)_'X![0%G>IS!WN!32GH+7Q=21,!=0::1-AEB+1%LY@K!,GY5J)P2V] M&)P*F2?"T3)KDR8*KV516/. !6D8$>JLBXT$O>52L9?3 A^DQ6,:'O'BN1'+RH*2%9)$84Y1JR@2XL(E).D MI2M!0.>KF@UB2?':C?H"(3*")N4A^/(:S"DMJ!L%L=V$*9B7"%+F9UB@K&#F M[>Y+JP!P'9.L_DV5DQE.!I_N/[O!Z9X!@44:<<,C8$_.!%C_S(NX(M\Y2/DN M4.[,$Q[+@2L:<_N1QX0E@3T5:X]Q2T'512U"15'!K" 07I%Z"3TJ*U*S52JH MH+[M0#Y8S2%<0XG.ZSJOL@5L#HTZB@YL3"(7FRS#\H&C!ZE3N4@5VT$[5[$8 M/;@$P&N \)=*IL06O4&N(Y(G^E1<1?/KJV@\FX6EO% G6I\R,,+ZKEK\"PS3 M_*#[(^C$G2S%!O#IXXK%N"FL3L5D$GGV:#%&FER61 =(UKDL5234UP)*BD0J M"Z@5$H(1DG2I--9]W:*05X,;908#<).+\2P:C4;T5_.?R2VY%"F)>"Y,SBRK MK\K&FL@?Q*XX"1[^_OZCJYU[N!/.YL,QLF":$C;"BK(JU\;J7X.;'#4/J\JJ ME7:0OZ?3>Q57%@X-@CCJ-2)<2V8'$[T:A_O"6VW[X"YISC_UWQS&A MDK1BVQU2CH]@^1F!2R]UXV<-B2/.L^N:],EJPP0/BX+0'U)JAPB*\ MBIDK@>CT8O MZW664EL! 2NU-RP$:"=P(GKO;1O<[ @K1R(TA8_YQ7^R/JLM4=Z[8;;%MJNQ M]\N().5,ALJ:9LEZ7LMT$S53MA!(R!)H650LD=F SQ"*C7/*.8)M)R2T^BM- M*2D19@OFY<%0ML"LC8^X$L8--D=@J&1+. QQ- M4/8'TY#3OUA:D^TS':Y\+3,!!GAF,!8Y&VD*89 H^,QQ50_*J.PF6SV$6&85 M[<9(NG)ME9^#?/>SXN@<8E"0<:/+-P$-">^ $JTDPN=4FD'VR5*ENLH)(>]4R.."PC[ MP?!>D9VBH2[=FC2UHRHO>.8W)"'X!8@@'=M0<:1-XFT!(Y^5:VV3FLG' MA0$]I64::U&@D5B/B&$QF>>(=-8AC-9$ZI$$=X58R!L>#S_K^9(M0GO\3-IX M=)"3;\$()4$_.:;JKE-;,DYUEBG?CJ]>NZ;(3AK,U4/K=8CTT&N+RIK6 M(ATI H@JO-?+L CSU11)CB(/P<@$!Z,HPZY;KU-G5$+GCJOQXL_UL[O]=?8A M3-XQ)BDL=":*6T[==88\H3I[%[A<.W]%-4/)T<L0U=/VX@^X[1C>-VJC] M%&@17P?=L=*))3SR'N!K"3;H K5&*)'C&"%E62'5QVL--V3=0[>QLB4"&:QL M"V,9K$"F9,6A" 1!.(LCW+@"10]71:0]VD$WM4? 1]>J:VNJE5\<]5*J8Z[M M^XCY>:U\>NUN7%8&FF,<)0I<5!K]5FU3EY*06-;!KN\!&U.! M)/#2[!#7,EWN$.'!WHA\@/&V#,G]$1^=8H;7I*4"@>?*+>U*E=];Z"?D M99WT$\ZWDY#[413(OX6,>T3;^/#MGA+RD#)ZDNWM3_#VEIA[Y(_FH"*\["RR M [_E1H78U@*=G;EC_G;+VCZ!#I3?(^FI^ =*HW".AN4BK1.E.HF1XUC?K@\2.JUH/TP[ M>@Q\9.1N"\%A,R19N18TJ 5)3'6GJ/Q7I$(@S6RH$*>N=ZE6.A8R>9"A*.-T MM=#<$9"%0G:/407I@K,KYL@E-6X9-RI>YR8UJRT,"XN8@N;#?$R"FS=U%Y^U M1R)GLJP;2KY#$S3(!!O%[0%S@Z&N:WTQ+CX^:-OD_MNT>TT9ULR=E*K[?6D\MJ)G5L^V3+M)Q\8Z5 M@S*#E8,.]UAY+V2/]CF*IWJ#M5$?L /,##C#?[P#S_XD#Q-1H6E#6H#9$[00UVKL8 MCD2N-L@L,9T@\\PTE0OC.P#.OX5Q%!\3<5^S!7BCK\;+VG-"3.U$O*Y7^1XM MY:2.9P6'=-V1Q_PGQ*$#_C/O^<_\>?XSGO]7_6?^7/\)IQ3?A3:%I>_C//Y\ M]G;/^6S8N]T_M;G3+@"\E:#*)?!>*G_02*-\(]VD.I&^;8]_39X.^V(^**"B M*T6Q!#=E8O MJ,F=OD)!21VG[BE]FYWO]=>Z7:;Z;SBNL7':JT^'_.:%F%V- MZ7_\>H;?J^NQN%*), '#-:8:Z#.-H=CG'[\7\0DRCR7A& MOY ,$ZZ1"_)O?SK1=)2/&6*Q MA:WY8&?+6_9O:):Z$/9=/TZOQS7>I,CO9\5^M_N%N+BZH-_YF)4\'E_Z_].+ MT#\#1W0,+"['(S&=7^+=!%?SV95WQLGUI9ABTN7D2ER-KKQCSB[FN+D@.A?T M.[V<_$:#M@=_H:1H-U#UZ0I\MSD.ONP=0U+WJ'M60L>I_8-AZ?H8( ,%1P_] MJ[9.?7R"X%M?],T!/^;X^F(TG#:'DWY?PV(SZ ?>6W$?GOMIX/IB M/+Q^&?ES:*O=E[,EP8MW8E2.V'!$,1K.7M8'UAB)318Y#3T[D#$/EB-IPW..R(4^4A M2^Y'2$0 GAR=>!A>F#P97AV=W(LA&#_N'.7O&]^VFC'T.&F.-.&KDEP@@'./ MO?:3YMS8]POZ#/N?#?4,5NW"3'U#':<2&5"TQ=32\NACX8__ZIC0%?_RW M,&5I,KY<*XERB@;@_=*8LKZA!9JO0=_]&U!+ P04 " #VJ0=1PLE;CX8# M "LP@>T?[8[3:MX0BEX@])P)4%C>1UL9Q]N,F?O#;YR[,W9-[A,]DH]NL6G MXCI('"$4F%N'P.CO@++D2QO]"/]C.R#COC%7-Z$P,&BZ'?_8TZG#FL$Q> M<4A'A]3S'@)YEA^999NU5CUH9TUH[L.GZKV)')>N* ]6TRDG/[NY92VW3,"# M5?GC.K8$Z0[B?'2_&=S35]ROX+.2MC9P)PLL7OK'1&7BDY[XW*1O O[>R0CF M20AIDB9OX,VG_.8>;_X*WMVWCMLC_+W=&ZNI!?YY S.;,#./F?U?S?Z#.]P] MH< MS BE'8LN2".V B=,M,P26TG38=(R/"Z6N>UV?J.II& MB<*=C>;S,,F6X6*9C#H[)-5IR%5#-03CJ^UE;4\\GE6<7459\BQ>!-N2LJ#Q M4G24.J4IL**6*7' O5ADU""J,XY'J57CV^5[;4(?WVD^R=V3-'"1K:+52> ( M_OB)*_3,N&HWK1WP-5;=J)@W+AU;>'YV\7C6BHBR5 MY:#$P85@\DA(>\%S2FD,VU&;:U]]C+,Z;G,;^@K<8]6)@=+' MT?5'T^AG-SX^FY@-ZLJ_"X9JU4D[#,]I=WIZML/$?38?WJW/3%><,A58DFL2 M+2X#T,-;,"RL:OW\W2M+T]Q_UO1\HG8&=%XJ94\+%V!ZD#?_ E!+ P04 M" #VJ0=1-*.= CL3 +-@ &0 'AL+W=O(VO1L!7!LS5ULE<]Y4%F>SR>3BK)2Z.GGY@C_[9%^^,&U3 MZ$I]LL*U92GM[I4JS/:7D^E)_."S7F\:^N#LY8M:KM6M:GZM/UF\.TM43>8TQ49Y;:Q^%9C7_/RM2E+W4#+C1.RRL5K M4S6Z6JLJT\J].&MP!"T\RP*Y5Y[<[ %R%^(#"&R<^'N5JWRX_PRL)?YFD;]7 MLT<)_K.MQF(^&8G99#9YA-X\R3MG>O,_(Z]XHUU6&-=:)?[G9ND:"Z?YWT=. M7:13%WSJXJ_2\O^#G/A8*ROIO7BOX*_XH+5B@X#]UDK;*(L]D*\PF6Q4+G0E M/JM\:PS(Z&8W$J]EH1'LE98CL=TH+-TJ8;*LK7="UK4U]QK!H(J=N+PQJ-#N4S,L0%2<; M06M(3APB/JG*+%UF&O'& F=&#VI5G)*P@;5NURT1CTR.]OB97XZN?X"?Q>3/ M\O$J&$3,#AB!?$-FIM,?4L[Y9"I>;Y23M9)?U1_B9F_K@*.Q^!7.7HA_R@KG M0S53CPTC%N1B='PI#IPSX$(T1'Q!-]DZ*V]:N=2:+$<(G&XLO M6.N#A.P;ST%PVB-DE@81H^YK;;V2:(7"-IP9V2:6CXF[LJ84;]72'A7ZIK:P M9$3W1T6>CQ8_(C&?]XC,2=+CXGB&O#"_T:> 2\9(:)*6Z4HW6A9!=0,D(=5) M41O+Q08SIUT'>XB8!>NZ29K?2">62J$R 9(C6XH2E82N"]@-90_V:L(XK*_( MD#+_'=5 (,B$E"U=U$( O!.&.D+!=U6G]MED>LW*'<@#./T[E2PP YU/V40$ M,=][:J+GX/M+C\,IO['*U:BY(K$]B!OQA_MXDU1S+/2)DKIO5%A"@D>YWR>W ME7FN2?6PCO<]-Q:?6NM:V;9:'7 MTL?OG;))>XF5X-DD%VO2,66K[JC[8!AQ#0-6WJ>E9$9!P=" HX."2*TE*=(' MMB_F-,HGE"^1C!/91J*N"\=DQI(O/,(W<_ID,IZA52@*[GKX(U31*N$L'_U& M9:I<0DB?$ 4 # MVDT!$.J.-;YB*W/2H+7:YE3V0^&NK6O8P2:HJEN+4/#0W.LJ"$-JG[D8#23W M#92B43+X$WM@+.-''

A8T,TNY M_+SES+J4=DV@VZDXI)%A:932!]<6L5 BV?X"LS_[ ;/KRH^@*#H:E6TJ4YAU MWP58S'U[SH?V[$SX8];P2??0$/U"T=<@KXT+W;A'S#Z[?D5$NXQ7;JFSIF, M'6;KQ"GC@6D=2+BGS\$M>!*EGZ;X(B"AP:V^?^ ;Q@F"A=ZKMP.K\^G/40-1 M.OHN8[7*X/C,K)ZU+F1&)YZ(Q3G^G"_PY_H:?Z:3:QB?3(U*%/M"&/50>BKF M^/_BV)EB<2'.+T%C@@[RO#>EZ-:@09C,9_A+BV;A[^SR2MQNP.TS-EEO]>GT MJ9A><(4ZG?TL%I?IY6TL\Y')3*G2YZ>S\\53<7I^CC^+"_S]8II4SC/-)\3# M-4L\F>,ON+B>\:?7LRL^\2@O+JG#CS2ZC,25A*F"*?U8A.8; *R*/R>W&XN/ M!T[32XZ,YJ1/9!D(-HSCX'1#=3K >PZ"^SMC_^..)AB&C>22SP\G2;_QD%/E MSU!^6KDFGZ;!;V=%5@NY,M=]3\4E2A%? AYLS;5C@!(X0HF+\87X"=TU\E,M M=< L3HUN4(Y0N)8XJHTEPNJ(%P[E. BM'PF?3G3.F2LFQ)!PH.DGXO)RP2YR M,9\_LG'/:D^25SY) ?-#VRXF=!AXO#DTX8@K'7B0+UPDJJ6=T[Q.5FC5"_*+ MH/A8#_BS A0^Y&I'?4P^#F'_S8:'BFG+H' Y<"Q6_&GG31?!0$\Y!">+&:V8 MB@6B\9)>SO!R=G5.+^=X>7[%@+? R\O9!;T\CWT+6HD5U6O3^6B!N/8!CS)2 MEVT,X%KN?/D]GX_F,.%[Q.=SH_[VA"8R4^"/ MC^+^>#9.$7QJY 2W\S,79>]X3FHME?BA_J^"$0 "!8 %92[GOC@5'0/9/(7^ M+C(#\E$ID9-V'#DK?8](PVBQ1I"E\.F-IS $QR^FO(L^&#A'I0## J\TS2!_D8-C6XD5R>HP"6HK:7E MX"$5^+(BZQ2*BKQEJT9O3GYLU8INO1* QE:9^BXO#98&6&4CFH8::+A<'T4' M]G)]@_748K7C,?U X6ASVD,XV \.<9-JP2^[6O7>OJ&,$(3[$(3[%(S\X:@[ M[]>57E*J?3V5Z"+4V1"[O@2Z'3;4&Y;ZPQ2%Z%M8:<&R?>@0#UP)_4'B6+7(^'\(B+5@=6I*AM=G<_% M:]]]OO43D1U5Y;U4<+PP#QWK*N[IC[#WZ*4!'_6$VC4A;GS=8R3\(UZO?*&/ MWJAE-Q-L:W*-)]/)>!++[]"FYG>^&XY[;\('W59V.O+].U/<<:X!\O6Z[=.3 MS^FK]^$KS_I).OB\.S>T&55LAR@X,J7O./9@$.MC<1F:C*O)3_0/.KNUIA5' M=HW%3?.# Y4PIZL,',_*;>43.NE\3]D\X"%(HV6Q07](3L)$NO5BQ('G$DS[ M,4CGA(FU5 J0YZ/,K,3'K#&TQ _CYZ-@3<^@5S_12E;U)+HYX(-LD6N@6F@( M;-\SS5+FZBC))5<&*;/&!KVK6R!A0%P8@0O$)5\*!-6\?_?JXV=1%T"9^?AB M\A-L$CVK.^Y!1NGT[O#A6:%*XB,!YG@9=(LPE6'N$J; M@5-2U*G&FG-:XR\D#W'UB!?X1$A#)S]#DC2+HB:! -POY/*3P>)U,%D<=X%:,O'&R-R*9VL%%@\;I M2V09*LU&P-HU]37$L[)KNF>G'B9#1>!X Y90VLTUY7ND1/J:)\#>9"AQP-FR M#4OY&UW=J3 ;'A$ DGN13^"=@UE#HSXB2OP^#=!] \\S1\F3$71?WHUTKN'K M%*,WR .ZH-".U34_M_I[!3UBI$514\B$G@@&$5>L2 M8G0Z#"/5,(#?L]BHYS3$<7P2([JZ=UXZXQ$J.O;#V$$NG^5KF@:X_ /+)(>0@?F**BT2K?)V( M*@K.M7<*>/@CH-M+6C0R6T.,3]0[*/\<2+BAH509YM8$=&$5.TH/RFJ^ M8_(])=D[7MC$ CDM*OB,NCN#!I>Y*BN]@@H\%!^]B\K,NM+?%<-O1(CH"8@8 MBV11M'YZ#*8&G;5E&!#SC;&CBXK,+Q?K5@)8&J6Z2[P4LETMR9Y8<'UH M+*+;OU2QQTJE)+[TI3U*-*:AA_+YWH(>GV/9$?ZH+[O/.!":74U7Y+&")@U$ M*OZN(O+1L7' 18KY* N(QL:HF^EGA=1EZ,-*><^@WEU^^-OU/?-HQPY1H&L# MROIKO"RSK;]W_%J9[:',I' :PM&U.2QH').!U,N0WVGJ@1:%K"XI=RXA>[JW M8_9LP(?*^.-DX<,Z7%NY_FCN@>/]O>@N7D53*#FJQ7' .R29C&5^_?%?[]X\ M0[<0W'"OK?+F;JN@50]MCFMCUQ9):_&:)U%##@-/.CSQ=>7OR,*0@=VZ^KZCIW/" MG7524]\?_V&VI-M1?#S!.P./J*HPH.W/$_A.P*RIRR_U4G/0I17MQNTX%O5\P.5G@\)[(0G2:B(=AZ,N@&93NA]'%N"@1/"]>;F MC')=[(::EGLA)PO"R:"F-(X,+=*HRSP'PZA#9VNKZ,$$B?0D@F_,?0CX*6/( M[8=P2:DR009[3'AXHN%I5&#(Q;MC/^.\CV,2$NOW-E^'\>2[*B'Y:( PJQY. M= HY9N73DX_\ I[COXZHEW3:'X\S8]TCB$$0Y!_9.A6?ABIK&)WZV6%[\>!C MGJMA8T'9,_AH&@@WQ9%O&LR[UM7^XHKG M2:7.G_5FA[&I.'BL4?LAF,T'[0Y=9;"*V5[A(3/?)/FG'4G,4('M9[^UE7G+ MQ:.%X^+[MO:Z#'[<6^[,X(&MKL9'OUOH[]%FI?S=Q)Q$E,)-2"2823@0=V W MJ0LG8(R3-H(,]*'"E:1'AY2A]K&V.;"VJ'6!=%L7TC^Z$77@)S<=N#U0 A0: MS4-.='R?3&D[AZLZE"(!MX-9R^[2@)(']W>4 MQ?V3J+DE:.MJGR'(=96BH^#QPN^EE9MT;Q(G\OU&*0X@CCZ6U!T+O34J#$>. MP]DQA"9Y8I,X+/B.%'.CSKP\93GN!MIUVAX?^[G(6>\'.EPST<^0>+!2-?ZW M.NG3]$NG&_\#GVZY_YD4(GV-9@OM[0I;)^/+\Q/_\$9\TYB:?^ZS- VTS2_I MQQ_*T@)\OS)(9N$-'9!^__7R_P!02P,$% @ ]JD'40A=ORN&ULK5=I;QLW$/TKA!($*:#H MLAR[\0'(3HLZJ!/!R@&TZ =J=Z1EPR4W)%>R\NO[AERMY21*TB ?;.TQQYN9 M-S/!IOY3*=,Y/X[.I.S^U==#*T-0)7Y>E=)L+TG9]UAEVM@]NU+((_*!_ M?EK))62,<+0[:76>WC?[%.L@<0SFH?;-DH T&I3/J5MTT>=A2. M!WL41HW"*.).CB+*YS+(\U-GU\*Q-*SQ10PU:@.<,ER467!XJZ 7SF](RT"Y MF$H7-J?] )/\HI\UZA=)?;1'_:FXMB847OQF!GYX,7?D[D/#G?_?,7/N/4SCG[& M/YK'_Z$N)HSK+S*423']\Q)/2S'MB-SO.OS^QT-?_W4T<+94H1=SJ]5*'Y^&B?A?L!1^#EEB:8'PRVZ M-8E"YL)8##(0KPGW8!ONI_!!:52'U$K.-?D4S4_&?M]E#],,ZZ+6Z)B)]X"O M%4'FRF0]_-MM"80"T\155 9UE&(6;/9>3)-S$I,E:H;M%5+.]QH6CQ\].!Z- M!B?7DZMX-3SYA4/PM80N+*\+E17LKXD+'H?=P^.C[N!P(#SWKN=,SXPQ;TLP7.L M^R^E]EIZW ML7BWG-HV56-0;\IAN2,]=MA^SM;N4WKUIDYOJ@5>PC8$*E+#] M_"4R9_6FQ-3R#. C+N/0R4DC+@?,"^05AE2$41X+[D%%@DX)_('/B2@3 <]UW,K-;&W1,7D;LVCC3/D]ZMP!0?H;,5Y'FI MT.FQ+M*APGFN.)^\H_:Q&SE!^GHQAS%^#-E9N8%,I^L66/W9^$'-^R^3<> OW2XZ^\&UL[5I;;]M&%OXK M S4IXH*Q>9>4)@$<.VW3;9H@3KUR^?Z[8I527?U\*TZW56 MW[Z2I=Z]F 23;N"#6JX:&CA[^7R3+>65;'[;O*_Q=M93*=1:5D;I2M1R\6)R M'CQ[%=-Z7O!W)7=F]"Q(DFNM/]'+F^+%Q">&9"GSABAD^-C*"UF61 AL_.%H M3OHC:>/XN:/^ \L.6:XS(R]T^;LJFM6+R6PB"KG(VK+YH'<_22=/0O1R71K^ M*W9V;1).1-Z:1J_=9G"P5I7]S&Z<'D8;9OX#&T*W(62^[4',Y6769"^?UWHG M:EH-:O3 HO)N,*+&$S]*O:RSS4KE62FRJA#OFI6L MQ0>YE54KQ9O*.@ T^?RLP<&T_2QWA[RRAX0/')**M[IJ5D:\K@I9[.\_ \,] MUV'']:OP*,&?V^I41+XG0C_TC]"+>BU$3"\ZK@5(N]%UHZJE^,?YM6EJ^,P_ MCY"/>_(QDX__LTH^>@A%[S.SR7+Y8H+P-++>RLE?.5ETRAB/_2[A=!6B5.@6 M8= :'&Z,R(QH=GIX-W:K>2;>RYIW5[F$U?^\74O#Q_ZJM[(4KY2FX[.-;!N5 M&T_LP-A*9+7D$"L$CJ2#@#UUQO;H*)^*=_?&>!\B$3P4Q%*NUQM=\8Q>X%2! M1UEO:F6DR*Z!3.XX(S<92$F!G6!403-J)+,"X6VFRNRZE*)990V-R&U6MMA3 M )&6;9G5Y:VXOL6T%!?O+M]Z0M=@)5<,6NOL$_&YK'6[\4";9PH:6L&!&BVR MLM0Y<0"#0=Y<0A6D)2S-C(%&:>UF4"6DAU;H(.*%-'2Q4G(A7M_(O"5X$^\6 M"Y7+VBZ\9Q?6%!0!_%7$^)ZNZV56J3]9=F@"WM_F38OUQ-"^,< M0(_-WQ(% M*$#W?#W .I-Q\CH:5F*!%59_,%M6W9Z2L]4'ZN%5#:R76UV2A15\BKB D>X2\CB M5T3K7[I6S2W%R[ZI'6EBS*SPMR '!W6DHF4IBY%#%EI:<6NYI6S,._=L<8"# MA]T%QQSR%FM%LG9-@53"K#L$OW8GL]=\T( 61.[@]>)#?R6CF&^L;9 5!D2 MF_2^@4K7@&Q"P:PTL$/]23961L!#03[5K!1!&OEV"PXQ?&VM#O!92M.X38(1 MWQG$%@ZR[I'5N2 YS:W=*):EOH:G[+/@'$>1HA':?,XXA'H!B$,Z45$$6VE4 M3>3;14:PP>:L-6:-0W[W!@Q$!M ;:P/H>Y4!MB"\MEA":AFIC[1@-SBAV!32 MF8N@H^60=8&MJ@*K:H)RJQ;$RL<5LF'W2II$2#3DZ0:$:ZRT^AAMQ; UB.<4 M1](LM"Y8$'[ "()!4322N8"HI5A(67AB469;39I?U!E2;C4X[;)6.7"SI3.I MN.8C6 >=^'?T/99^+')O7M%RW/SZXQ6?\/[BP]D?^,.+H).M:FHMUAHE,*4J M4:AL60&B5,[+AXEK9<^CNB&K"5@WFU+E%I5.#R=MYKMVO#>D0H[4"J&O-Q2' M+062?,#7.W5;&97)<40-=:_A)EO)"COC5&JEO]X[6Q1UNQ0YUB@*$:O#:UDJ MK+:H_A6QV@?H2.\@35%F'7+@#R!#BCC.C&5@IY "K%;$JD5<$!&9&3E*.V $ M3!3DBDYN=O^>L**R!?69L\*56BLN.!CR]L3%.[%<(LT$E M@DH!?IA1E0M5J%4R]?WW[S2P,IM\;Z$T^E3>T! H[*K[7)V9%*$$]%_(* M1I% 557LI*Y1@Y17> @ 2 _<9U:-!4EB^97. M:L:S2V83FAL5B$/#9"M$&^=#)5W9Y(_44^L,!B6D4H5M+T:Z( ''A:+KR#K^ MNDJQKQYU->X9^_Z!([W7IFDY93$#76G:@9?+F@[J]<($)GAL&!NU[:C/O'4;]L)5UH3.R8" 5$S](#?NSZU>.- M7:E!C@7)L!(6S<&P:RH93 W22<$N0Y"B&YP',)W/OU( MQ%[BQ_CDLB#\?C22>F$\WYNQ(Q\.@#/[0$V)OGDYI:S*;NTU!Z$70U 7[,_?\]Z+_&<]2-&[N M2!EXZ7S>RV'?0F\Z#?LQ^_:@9$^"$X@PGT]%XL5SGZ6:T4L0Q=@[2XCU.2:N M9%GR=07EH]K=RMW!:B(&:::)2,, 3_-Y2N]I*)*4W\/(::<+KOR(U&(.=090 M:A! <^!H%A)[83J#'>( :HR\=)8@2Q^[HW@$KKPD34[P%'A1XM-(&/![!"YY M/IU-3^Q3E*8GXLX-"=:?B"<)S(2Y)S&4/#L1EY)J&C4@>;8F8+ 74ECM\]H0 M=']Y*-QP(#PFLD>G4#_41RI\T%B]9FCB2PS2;W! 2B7W$:[A8!:!)-6S7%&0 MZ'?5T14&;36D&?/EW'BV4Z"[ *N.\5674Q -=,Q3*W%S#(6.3?^7,6CNI7

#OXA$X!T,=,+8MZD7 "&[,?MV%(D0WND\8A *P$_@ M!?X,&DO (F . 88F,:S+P:CV)N&!,YA$ '2YA'!-8%V &29822)@Z\!I !* M2R)281H"A$!W%A"7(2>%$-@2SKPX"6W(WT4BH$LXC1'BT=0_8=2)Z2T)"2G" MA!Z3X 'PP9%^S \ P&GP6?B9$T0]F?GA= UOK;P^DI@VU?@5^/

U7#TG]2$QCRJLA M @%X%Z><>><155RI3S,!R@T:"^:^G9O-/H?Q_]L"!TC>)&8\)V@/4;',N-PD M^*+9,"*!HVC&L_&4UWI^$D#L944W6QFBZZ*_)QV>N,&1U%^Z#IH:&[1H@?^8 M.C5N6MRW(,T^WN\D]8'&^:W]CC-'$/.W,(L[N:N_LK*>-_[^>S $F>CPS&"B MX:F309R+('TLHN0QQO$Y>SQ,O4+U^QAY#_\#3*>CJ0OQ'0]^AW_]X"6_!M'C M\>!KIOD=TM=X^(M5YR8-=4U2;;F_6F74.)=\&TXZ='TP E;IPHPN$A[6[WE' M]D-/MB.UK[9+S*^O(0?RR3W-A:D@E8E]G05X#_SQX"7HB3VM_&!7D+Y&C.WH M*TBZ)"3M5*R*O:_:QU^B#Q.#4_%U7D$WC MEKSI(+WV_[O347<@RBHZ^P6CV M8/0PZ#WL>I]#A^&I]^IS, &Y#'=X<]^%'8JJK4== MB?7&J9"=C3KWIZ7:LCOQUY=0:Z]2LMC@9?>4]LN]S9_SKM\JOF&^:O@6E.2? MA:%M@=%@[7&VU+K@6\O/,'%^P*W)]/. \9-5&Y(+E-"T0@%9B . M_=CE;/3K(IA_R;^AHBM11*/]H5$_VO],Z]S^.FE8;G_C]3:KEZJB+^T7V.J? M3I.)J.WOINQ+HS?\6Z5KW<#A^9&NUV1-"S"_T+KI7NB _L=K+_\-4$L#!!0 M ( /:I!U%DR=.O%@, "D' 9 >&PO=V]R:W-H965T?S[.=TC]-C6CAIA'2S*/:VLU9')NBQH:94[5! M22N5T@VS--3KV&PTLM*#&A%G23*.&\9EM)CYN4N]F*G6"B[Q4H-IFX;I_0J% MVLVC-+J=N.+KVKJ)>#';L#5^1OME &0=(/.Z0R"O\H)9MIAIM0/MO(G-&3Y5CR9Q7+I#^6PU MK7+"V<52T+$P62#0 <.YQI);^*B,03.++05P;G'1D:T"6?8$V1@^*6EK V]D MB>5]?$S">G79K;I5=I#P0RM/89 <0Y9DR0&^09_MP/,-GN"[P@+YEN4"#7Q? MYL9JJHH?!XB'/?'0$P__S38>)'/W\,QL6('SB"Z:0;W%Z% $6%)U2R;VAAM0 M%=@:@=US+X*[".[DQ0S-.Q<#+[@DA&H-DZ5Y>0;7M4;"RQ(,OX$F'.@*UUQ* M+M>P8L+3?F"RI5L,:3@<.(+!$+YI;O%$596!HF9ZC26P-74&8Q^(>OYLDJ79 M:Z #45O4'+UPUJA66@.4]9:3(K&''3%:E+1:]2"JKGM*6HE]D00=US5V^3E' M&PX\=QVHZS[\-TVPH@CQ=%\6D.])L0,5S.):48(/]^=^N$%Z,D[@@NT-C-.3 M:6=.4RC=U^VBRP^NE64BF(-N[;S5&J7MEO(NF>4CFH[ZS(]HNY/$)SD-@_#- MCJ?3L3.&-#.""\(VN8_E9*;3_R0SG8SH_Q7]QL[(1LZ<'$\2IVUZG(P'\-A= MB^^TKP:I:ER3I@IR$4(GZV?[=V 9VM]?]_"(?**BHW(#@15!D]-7HPAT:,QA M8-7&-\-<66JMWJSI+4/M'&B]4LK>#ER _G5<_ %02P,$% @ ]JD'4;18 M6S6X( 6&\ !D !X;"]W;W)K&UL[5UKRI8C6=:I2^3#8'0!C+7;A?1"$?WWZ=/<\ M%EB0$NTXN95\D4A@GCW]./V8X5>;NOG8+JWMLNM56;5?'RV[;OW\P8,V7]J5 M::?UVE;TS;QN5J:C7YO%@W;=6%-PIU7YX.SDY,F#E7'5T3=?\6?OFF^^JONN M=)5]UV1MOUJ99OO2EO7FZZ/3(__!>[=8=OC@P3=?K5U\?72"%=G2YAV& M,/3?E;VP98F1:!V_ZJ!'84YT3'_VHW_'FZ?-S$QK+^KR9U=TRZ^/GAUEA9V; MONS>UYM_L;JAQQ@OK\N6_\TVVO;D*,O[MJM7VIE6L'*5_&^NE1"?TN%,.YSQ MNF4B7N6WIC/??-74FZQ!:QH-/_!6N3N^>6E:UV;U/'O7 MV-96G1%:545V*>>$[R[=HG)SEYNJR\[SO.ZKSE6+[%U=NMS9-KOG?[K_U8.. M%H6A'^2Z@)>R@+,#"WB2_5!7W;+-7E6%+8;]']!FPH[._(Y>GMTXX-_Z:IH] M/)ED9R=G)S>,]S!0Z"&/]_# >&,;_H_S6=LUQ%'_><,$C\($CWB"1Y]]!.\: M5^5N75K^^J*N6EI P=^/$?K&:2#>S]NUR>W71VM,U%S9H[O-G?VTM"1.>;U: MFVH+PO25Z0O7V2++:SK&JI6?M O],G>5H>%,F;4TAR6Q[MIL::YL-K.VRFA! M:]-0.U?QP$U!K2V)0K?,%K:RC2G++;ZQ:XQFXI&LXS*I;T<+^U#Q0BXQ#Z_] M?&4;XMWLWM'WY^?OCN[S]M#2K-=TGF96VJSI,0*^:.RB+WF;W!GM+FW>-ZYS MVN+5=;XTU<(2458KU[)^NG=T^>J"AB8U2>OH:,)5LF=7B?JDEE,6H*:@M9?; M"8;?9D6=575'K?*R+VA99WL*)VG M.*_6AG7=[;#:9=V7-"O1BI0_B$U]?NDK4:Y\4DS3./0M \8M4;_&=C7Z=&1' MA WJOLG.JZJG3N_MNFZZC*:!(LY.3X[_E7>-^;;6-)F%ZLB^M;E=S6R3/3R% M\)]^R1L_M,F9*9G'Q/:9;K\[\6?>XN.^I _Z#)))OU]%-- M6]X][\*U>5FW/4GA1+\ =S-])G<]\ZQ-]'8J,UZ-]:W06L1/.$UY_FY,XD^E M6S;6\@FW[CI;B8*74R+U;(-ZSDCH>5C7=C2 9Z.:N!44Z5M=X(]$A^PL(Q[Y M/.JK2K@03?7/__3L[/3IBU9.]P;FPL*QLGZMO +PDA$W5,0C;4M6<9I=V ;, M"@5$FV8V-"M0.-5KC$U8-V7=A M4XD5(LU6%:8IVNQE3?]E]["OLY,7WYU?ON0?3U_B2H6%T-V! M;59!U]-Y&]K7!I\;U^ +.K#"EJEZI/5&^M*&+.UR90WXM0"+T\Z;SOW&9]+2 M,2Y=OIS@4YJOAGC3;FCN1'NQ4"A/XN/N+&V1M/*J MNN3C(0&J-]AE*^HIH3F=V>["IU#@9$?X/&ON/ZNO[.1WL/V((:N%\UJSLD"- M9&1-^_D*UKELGEHA''T@QUM$2"N9OT(U\AD9- MZ.=K!&H"^21&8"O+0DPP./^XK$M:=?M%!A[JMK]G:/R4FW:9S8ESXB(_L;\H M5V]._=ZA,*#6/4T=T=!5!4D0_ ZO5WUK3$DJ*9OW?"9^,"*U.3[)&C\!,QC0[)NH:U@JY^DN(9\?*OR$N:XY]S]C+9(EF>*33X]/GDTH740&1:.%=!Q M]GU=%QL'R:,.;UG+^?T]/J']74+3NCD#9)#[)TNJ$<<:.KX.*Y^$?4&(25-0 M6_1#\X5O'CB3(YXI,*2R2JA;A>&(>@8 M6Y#M#=PPS6[P;QX'_^;QC?[-AY:Y_Q7M: 5,/N:Z?-X(+ <[H 7'?#?M+5 6 M=AE:A2$(@RRU58!)X*.5^4C2Z)F6K7BV=O5YC-T.S%S$C!H/9I!.%%"B/ MHVTR]#3[V:IW _6.1FVK!QZVI6Q(H&8E&DRWH*N!,:D)4V*?$W522'&!L1NH M!0:41"MA8VY ?$A.4MBX+I4-D)Q=4'0\$Q,FQ:U[HGL/P+?A(4'#3X(0(,48 MC+@/ TL[Z^J&B1]$C3;?0C[JGE<\Z^DWD,OD=#QB"3%LGC= 68,#9%N5F0WD M9Q)\S2M3]NK*1;1"RZMI:SA,9KO"SFW#Z,A M(:D'1\B6L*=3E$:6IP([$CA"BP;$5"A])XD1.S3OB4[VFG$[C2:,PVC[[=]? M?WM,")LP=V%7I ^9I 7)4@YEQ2YR^ U*C4X*XNNI/,03$4M@8W$]6+ R8G28 M6E.R$*F\\$B(=*B0!M)/ */Z.C**Z@1 A*5;+&G;T,SL0*2K)VQE=._8.ANW) @0 M] H=0[-@($>#5.@9:!YB&[GJ(M):51:=:U"_(P^^"UTFF'9CP?2"4$G$JQK' MYH^FRLHZ-R6(M*!!\5/%*S)B^U@'A$\D:$E #31N/GI-I*.2'KK!I#P))N7) MC09!H0&3+.BZ\W"Z8Q;FDP:,6F8X(&E.@&@QMBUH9:O?MBMBJZ@I@:"7ALXJ MMWU'NJOT_$I]EQ #4[:9Q,PP2JSHH=>A_,G36ILM+Q ?M6N;HVWD$UI0K5X-JP%=&,DP M&S<2+PM%V.[;MF])MBH*F/$;L0]>1.]$6M&]K\G M3=;(-*#%K&X$U1]4&V9!3HEJRY^#W?S-CDYL$ RZJEV>X ,,N('"=B*W9LR$ ML'];X[?V>617"0\)%4N!TVPH_D8J#[[>J?H&;RNU%;.64(?J\9U&DQW\[#5S M\#RK??Q][V-5;RJO3C0ZH?+#JCEG@Q,7*/TT=@$-I7TN7EV\"1&-P/1#2T=[ MM>3*B;%0S1M//8E[)-!%_&/"YI9&8O0TMBK;RL$@6,"=JL_U)3R<9)>CIBR;1A=7KN$<+=NY0CX9;2&C_"L,1,A 2)E/O#Y[I'?XR6) M3L(MG"AV'XBX7<61;:?^#4%8=J+\Q$N:JVZX4WKR:]/!># L] *,CM2SJD%: MF#>"&JH&$Z%)T0T6!SV&.:]NG1.'37B/Y0>^'O5@^&%+9^="R8X#QZL0]<#R M-.#G#40C+8B2B:.9S B\3[+IZH"*53_((J3EEO!=-/JLZ@([L1D_)-,AZG>> MB A4 RLHR[E."3Q-L[<(I5^\H9%)G1=U62^V 8/30LCTEK7W!;&Y&/A>DV!E M1:_!L1&UZD,)B=%7EA==V@:-_2MI%3HCLBZI[E;722T8RW 2]@F,J!N'TJT6 M*AH25Q2(@?"ZD9/;6#E(VCZ.B+ :S2>J30Z5J2-X?1LB(8JU?[3B&Y&!WY,C MC$:D$%4:>747V#42,=[2RGZA(Y,EDSD@=O,)))9=(T17-F"X5Z<'S%(NB0?) MA= !TJBD_(C?7+OD40?*ESTP$J?&S?K.,Z4N'H&I+=&)CIS<1!\:ELZ.#90P\-S8)7%:/X& MI351)U-$RYLCJ*^ H!*_9+.O,;U!2HS%T*L:V!$^9GOM>$+OLOIHW15UDGD2 MRC E4OB^(8HK[X/\/LH$S&<^.,>\BD0@5 >1!F[J@-.325.+R*F3 M)/'XLV0\!6+BB(%85 M=D4C89-_"!8ATY"$]&F=-_54_YZT+.DUC3@W^)6(J;_3:6@&0,Y62.&YRSNU M3"75F="JC)L_)\P.AW;=RXJA+ #B D_"+M3-NA8M29\B3')5,3VM)#3Z9D5@^A#Y6F: 9&/-\T2X S'X-8TQNA]\QB\WO@ M^QWG#<< ]\#N2Z:@J/M9!Q24($<^/N!)ABY$VHB+:3M$@1G; %V%JY!DKSJ? M6O]]$-1GSS44%%&*%Y[(S@&VBU/0D=<[*V.HFB9)V#HBL]3&1]?;7!DR"-B6 MO8*BR.TT^S!4$B/NU89VGFT:1T@3@&4^4!Q#A+5/Z,W2LL.%^"0ANE9B*:57 M(ZLD^6>OEX8MTC1[3ZQTA:VT,GOP_PH9D.L^_#<6Q04AT.=WPV$7/CO(=JIW M<'Y#)RCWM1EI?$^\U=%8GL>U!R)MNPFRFT(V3T/(YNF-$9;7U945V08+OI(4 M7JRL&0O9_*X!80S8"ZU\OM -.OQ0$Y41"R< WMH582I$!5]7^31 ZQ_.7P=H M'1PYF#WBJXX04;:T9:$A'50$U%7D5-99. $%4?N+F&1_JY=5]J-#"9^XV?D2 M#HB]IH5ISG#N2$E-LE]JMD>Z(*YAF''NGXY-(JEUHZ>VX92AE6(J5774+SOW M 8ELW3=M;W9,'XK1AVZZN@?"T*6?R!IRCQ MFGF(N6 TN*+,:U>U)JE\Q)NCYF+!*]XH[4+!!6\GX".$O)H&,Z_4?-/DA,3! MUXBOT!Z*'GD$];9LH<&;/4)PW,G0NK:_65DQP06.L@0GS(,6EKA1+CI_/8A/ MF8$%YL&1^^];@;,Q3-97]0S$U< 3#.9T4&?I[7*P5GOM62]HM)@#1,GX8$[R M1]B')S6R@>J(N_/*@^F-4>3C\5T&!9XNO^',(YW$JCTN;;4@9M>>9$"($33Z MS%+0UNLE8W960E5=':-VLK,+,K1]Y7&'!+LQ*[.RL*)/44J0,N0GQZ;B($<_ M0^I2G1;O/2@%QSII.-5V&VNKX/0C+\^63\V;1P,"$F+<@3D]#N=7*0.I8ZJ4 ME:XQ)."G4=B&,5W.8?\&TY'>=^K "82;;_FL/#94S1+.:"[=/-QE$Y.[)N]7 MH(=$2+@2P08G&3/#*Z39O:_8B-$2.I"0L6]QI$B?1%&QBV2+E8HB\"61TR8_M+ M)A4&'=^)?(^.HD>3[$B$-077"=KG%?D@1Q((?R[[>_(B.]>$FF GGUX;RZ.] M"'W>-?4O@N98]2)$P^IWD$+RH199PUCGG:B&9S*BC^IQIE-A9\1G9/ 68NWC M2*\1%BV@'9'3_+7W];Y(_G8"5X K(#>83F:NE+V] >E49> D"+&EP(KJZ&:G?J:/7+_ M6ZK@!\F7CW:;5&N1F'#S':%QJKQ72:4;U&2=A^Z0.+B0*@H'F'NJFRH9XCJ4.P M6HG0J)[A\D(0W3OPL#12F.\T X6*HEC?L&,P_++8"4?5)K5-ZS:A\*S^+GK= M^SPMT5]JME5Y!W%$P%XK]'/K09041ZC,_6C:POR:?5^2JUH2=&>?Z@>VF\PS M&TEQ7C(5QA! ML(J10^Z#L(+_AZ((XW2M+-&BY%D( % MYZ&'*R)/O?5X[M/7-!F+RTG,'5&>:UX2K?7ID[]B78$P"#T0<68IU918[^0, MV>=_I6G\UB[D"%#B^>BO^YU^)/DLLY>.I<*L.?\5N@V2.,%P*/9@-_LO9]-' M&<'1,LF9Q+J^H?1^RAK_:1TF9%A3/R(%Z3SGB MF.K_?J1)*!F]>ZI_<\LJ9EL%W5Z.AW0<$7J/S4DTUIJ4W(7I=]$*4CX]6N88 M+K7,:D1@Q.SLZ,:)F!9V'T(04,1]YZ0/;"M$81+S'"JOO"BF2AHTB+M*$-&N M'[)#/B 'BZKL,7,5)ACORU4'L=0?-XY"ON^<\'9$)?N=PP9'Z!&GO6)Q2W>& M29-8)])$U:!N^2;.O5.D?(Q/F8G]M2*IN(")/*;?UH@L8-]:Q,A:AC_?T\K# M\28AC1\R5!$ Q[:3Q"W]' 'Y7R85Q3^"6&!'=Y +0(,#@A'K=5MXD\6 ,W89 M;",7B,*=)KUS%SM.X#/Y;W<8@^\&C$8B#I T(AOO$HZ<"1NX:%5>[T^R,;LN MR2<1_(!W@KQ(4E( ]@LL)"1?*I$9#=J2.(N6Q5K5(0FKCV M"7K],+V<:LAEF^3J0IEO7.F$V82ZQ5A,91>LTX;UWSC78>G-.L+@258T[LJ[ M-$G(@!,G,56%$_/)X(#WAA'($PX%I7L>6R,,Q;43 M(>9_R&9,$_;Y4S'5S_XJQI]I/R3B^DGVH_T< ]*-7,/[1(NRUUG7*$&%(@U5 MBS8?/:*]06Z(-GT9HDU?WA@SNE1G[KW?_UC8Z<8AQA]TV!M7JH_YCC.B!"%. MH;X@B?J8KPD:C_J0X:):8V-F*+GSB327CCSUM3[)9U)%9^?LQALIBZVK<&=5 MDWU<*8MKN;T/X+9RURNM4TH#]'"/0FD 'ZI+:ZWBK2*2 M5Y/=.[IX^^T/1_#^9!YJ M?X;G%2ZPJI1KT%C6=6#IX3I-'L:0'8?"IPN?%D=IH3QP$>B# )'/9*F4S[8Q M.O'3;0$,FB3O]98H\H;U&OP-!>)B_'&G4MF7)7/0@%VC*\F.DJ W]#.M$#/. M!C.2S>D7I+S(+A9:P8CL&>L:>/-=MNR)'AC0FM8FU: HMK+B>^@$K+3"P'QG M!D9&*N%^NB7FH\Z,+^WI+(H!38?T OP>;T9/AG?J?+YU.Z@XX\L;09BAO/B+C12_*'I0 M\"EK82X8(6B;'5V$\D,>=WJ$>D%"*G8U> B&!T2QXLIF]U#Z=5_+O9(;D U[ M;M(Z9*7W9KWQVO;I27P:[.26"BM>RT_F>KP^ZS.ZAUPM,35]D+TQ&\0D?^"[ M4V=/TX .48L8[,HUI+C.'2FI]WPO0X[GE?=5M-!KBZJY4+!UI[:UU?U))<^Y5$@L$'I5DX<0;F<9@NV-A M !R.XL7%OXRH9R;_*(6V\SFJ[T]/3C@-0M/Y&VV8G25(/\)#$BC*6+BJ2H)N M1/]3O; [9*/YFQ["66^0\VY=]IN+J?U J9I'2-=$.C=93R]@&! M9&35Y3G!$(/GO )'+]1.2XU< W)W6SUKK5 ; @5?OX:B]0F.(4%>6F<2.4K MO2Y,_-N)G?=/7+"FXTI\OB-IMDW-@.):+X#C%E6L60N,=I/;<9J\]W=ZHU2F MS]D-GH@8E? [CI5]^LL48Z\>G5^^] \8X0V./_V1D8 WH!K:L*8OVOB>DJ;# MTIS9?( 3PF :%O0/J)BB: \\7#+)PL5)%,W[59!]*4VNUV<&==W237D49?9[ M5S%=>\=[DWYJ?0+CC[@\^3D7)P6??,Z;4_X^WA]YR=(SKT1]-O$0?8DK9P]\ MY(_FY/B$3[S3"8AB:6S7U"%6PWEK$X@K;?-^U4N8YEC>P4CN0OBX$UYBY=:Y MMN:B"X)SKM-7F;@\D1VL>7C51;@#8A2NCEG/@$FUC1#+%^D=O'9H6U^K)USI MM?MHO[UB>M\WU/<=>H]O$NNM1YX4V3GYF7_#4IE$'K2+KUDJ83BD))'DP+!2 M(: 5]SZ"'][#"8^5A:N?L3 M>;"/#?C2()/@O:906G;G5VGD-3A->.$!HG'5 M^"<]3Z2$@3H4G6L!5BJPVB4R)&<1C!Z.A?(0G.:?9/&9S,GA#%Y:;W-;G'0O MA[^;5_.9^_-J/RD_>-PR) R\WZ%,0PN(;YSLYB9\GO:&=$9<[PNX=_8*A?U< M4L%7)N.\NAA 0AE62GSJ#GIP/PN[4ZIBNKVZF\'#!PD@]2_N\-EQ!::Y/E8L M!A,3$R[5X8337JHHTC))LG$MB&AO?WYCQPY2<-8L/N%U ^O)Y"RC\?E)[&,W MX8=(B,E^LTT-QO/)A[W]#&+ZOXZ6>:K[S7AOSF]I,<73QI(L3L92";DEO\R< M"9Q(/@T9ZE*J*D7O=WK'TH^H^::Q,E0FP8@LQ#H9K>,<7@W;^ 52$5^NP@]GPFV!/B^W=6-RFF5)7Z[ PJ]=OX(M=W M#;$L'B1G^3][<3&\SI&T?+_+P>,S3?71,\>/1P[N,?DJRN'C1.D] M.0).'7D*)*N#M[P5F2O:4184N[KWX%\XWUV/%G?RPPZX\-(_C"+W/'Q"9@>4 M^RG8Q?C]N]I9E0OUOVNI#-GA7J^)O;_$WKS>U53TX1<:#LV'!;#A0ZXQ Z7@ MS:D"9H2*B$^(AD4!E+J4P^Z>=XR88EIK'VJM=4)^G2OS#RF:!I=9.U]3JT\0 M*/FUL*0+8-Q_SZJZ39ZJO8T:=Y/_'=LO$%9\NV#^95W_?:;_L)X(<2O5"H?# M5OY%%4^ []@!0D0$Y^<0H(2+?7@ SA+*+)H@8G5$AR@Z.C[)2UZMU$?6Q<#0 M^JFI>]\F(0"MN0:?>///;(Z[\ES7'',9X97U2?J(PDC=3+-#F+BZ098$%(F3 M\N'BX\-WK^Y^AOT:<8L0Y2 -'U[PES*K QK^R^/3,[[H'9,3JM.?/AKSBY,@ M)S35H&.(4L"9Y<(OW+73 & ]#K@/=I5Y?A\HT 142#[M\\O9"<=6WEM_ MZ?<]MO7>LB/FP< C@('O3.[$)8N6X%5<_/@(@Q!T*-K9(78PKG(H^E &*0._ M/7NM<5;U@;VIX7>,]?%/ !.\MF&+A>17]:^<+-UZD/(?F&#BHACT:,(.WKQ^ M^?8]EWM6TBE^):]0<9YR$&3C=R'!\;W68NYPZ$WA$, M^0?-]6^5+4/N-#"FE +L/,0N:?WPEEF#)0PO40@'0:4PNM5G/7?_FLC9V?\X MHV\3-O^$OVC#*?(RS>!$R#+XK:L;?U8N%(58S\ M^8A)FI'A@HXD(Z$AZ-0UPTFYPB4WS&=;R6B*/6:_:6;3^ZJY!'!\ NY]3T[= MZ?')V;W-?1%BO\/L\OC?!T_G)AT>G3SVIYA0^EPLZ>F7#Q_R_F3LL]GQ69+M M2]J'4XD='^U%P_1%+W_]KU5[D-Q=)YT$I*A_MV&H?3])YR<0]@ZH;>,UP3YV MNSU$,Y;Q?)#\L3-^!QE_THW?Q:XZ^;MGX=/,_]FX<_EC:;&Y_,TYDMT%G/_2 MSJGKR?3IXR.YH.U_Z>HU_^FT6=UU]8I_7%I#9X4&C_&H?MWY7S!!^&-ZW_P7 M4$L#!!0 ( /:I!U%W+DMD50< ,P3 9 >&PO=V]R:W-H965T9KZY#WG^J,TWNY2R94^KNK$7HV7; MKL_&8ULNY4K8CWHM&ZS,M5F)%D.S&-NUD:)RAU;UF(=A-EX)U8PNS]W&6:[U4J8YRM9Z\>+433:3MRKQ;*EB?'E^5HLY(-LOZSO#$;C@4JE M5K*Q2C?,R/G%:!J=766TWVWXFY*/=N\_(TEF6G^CP5^JBU%(@&0MRY8H"'PV M\EK6-1$"C'_W-$<#2SJX_W]+_4].=L@R$U9>Z_KOJFJ7%Z-BQ"HY%UW=WNO' M/\M>GI3HE;JV[I<]^KUI-F)E9UN]Z@\#P4HU_BN>>CWL'2C"[QS@_0'N<'M& M#N4GT8K+RU(M&.4V= M?!:S6MK3\W$+#K1O7/;4KCPU_AUJ&;O53;NT[*:I9'5X?@QD SR^A7?%CQ+\ M:]=\9'$8,![R\ B]>! W=O3B=\2=&[UBU\!JX!90>;MDUT[9TK!_3F?6S?_K M",-D8)@XALEW&'Y25BP61BZ$4ZV>PY,=A+>4>Y04A>>978M27HP0?U::C1Q= M?EY"&%TCME2S8"T9CJV-WJA*6J8:'[7._6<(25;MX,AJ"\5KH^RU8;TZREX= M1*75K 6?1K2=D20#C<"EZFB[:"I&:%0I_6 A]<*(]5)!*KD =64=4>X M!.;!KE2U&M1")-]&Y^ 8N=;&BV?E ED!J8B1\*^9@91HF0!2DN<;*+G_V#N% M/*H4EIU\@:MCX:$%)Z"[%HVHA /Y"Q UVYVG ;NYO9FRDYO.( \&[%95%2#< M"-NZW=-YO\T-[J;7[&3:D?= LH#]BJ3T#REJ+ ;L ?I?2CHXMH@-[*:C)]J8%8&!JE[JS.&9/SR"YD9*M?+!)"C:&4)%#J+RS(9JP.VD< MLZ:$.,UOSRO8Y5>]D36[4AI H5/9M:JT[+-N1?W3^V_%5VW>=)(S=N=GV38: M/[ D2,,$W]__KN 1_^/>3!;P9'*PXF?N$0'"E$M'N0*A6J^=$K=N$P=AR%D> M)%G$HA"?C)&11D,XYOB?.S$F#A."8!D+T2G&>=X$9AF MQ)(7$"B.$A(KBGH029 GD7<[^IL/-/PHABQ\F/.C_U[@!_5TS/&.+?^?N)T9 MW&X29"_<;CL#-?#XT"S]U+N.5P1YGK(H"GA:0.@@A+FS(('GY0'G6(F#+$M? M6R(J@CAW"O='/S .-#'9 E2RW%N)*& BA_=$/^Y\"9PO=]:3 IR(WXI(!B>)%BAL/C>CDX7";S[E=@)AJ(^%$1I)SOS='H?R'T MD:J<#E4Y/5J5#RO_MM2]59*/TOF9DHQ5U"QTD#7YLJ62MZVX2/06!@M8U\Q4 M7;O25TJU<5U8L-M6:MOVI7280YW!&?1M\G61. S,3Z"YFJ&_B:,^%@H# <]<&@/:NRJ0!F'B M#(UOPCYUQBEP2<6;JID+YN/9A[:0; %[E*[)0$_[&W:U!S89_.]GRNH[><]I M=/=ONM(=V;OO>:CY>=MH:%4(W R]2],0N&U[A=C5U=E! M2S6OE&TC*+KYTK M4*;HYD[A41"[U)W23QSD*4>+(9J%:P4/J+Z8EK9%(J&." ;*_R-:8WL :U# M:Z5?TW3^'33*G:,<[%A9 @4\)Q-^RBBND_@'1'(-:8/NR5W:O*(.)&!_V&ES MFW7@13,"*(_&AO+U..T.5\T5M/^V\FV6R(FK8UZ[RMR"AZX^W4JXA4UYM+FXKN^%;Y"1JLZ_IESGT7M);$+@2M3XAHAO #W?I&0(;*>;@ MLFWQ7MT&4A>:<9&ZG%84L:L)19R^WWRARPYSEO&$)6@K>,"C-YK\"(U%XHM< MZ&(?>9,/]>>MR!_OO;! @POWCF2A!?B-?VP99H>GJJE_H=EM]^]Z^9Z1;F@( '<% 9 >&PO=V]R:W-H965T;E'@.#T51TU:;%ULC.GB30ME94CO77*>I+6J4S)[J!A7M M5-I(YL@UF]0V!ED905*D>9:=IY)QE *EP:LEY*9]P4*W)HZ2A#"TF)+MNC(\CUDY_"@E:LMW*D2RX_X ME(3UZO*=ND5^D/"[5ZP[_"PAON.%I0V@%7A?!T$F2 JQ'4\+ ++25=2QM5%$P4 M7K!P4>UGYWXX[3-Q5UK0@%%Q':.%%HGW,Q64N/$NY@)=007G)_ED/+0_:UDZ& :)9A-'WE+57KEN+OK5 M_E6YZ8;I?WCW)#TPL^'*@L"*H-GIQ20!TXUYYSC=Q-%::T>#&LV:7D8T(8#V M*ZW=S@D)^K=V_@]02P,$% @ ]JD'49#WN(JI @ ] 4 !D !X;"]W M;W)K&ULE53?;]HP$/Y73M$>6JDB(82558 $M-4V MJ5)5MNYAVH.37(A7QZ;^4=K_?F<'4M85I+T0W_GN^[X[?#?>*/U@:D0+SXV0 M9A+5UJXOXM@4-3;,]-0:)=U42C?,DJE7L5EK9&5(:D2<)LG'N&%<1M-Q\-WJ MZ5@Y*[C$6PW&-0W3+W,4:C.)^M'.<<=7M?6.>#I>LQ4NT7Y?WVJRX@ZEY U* MPY4$C=4DFO4OYIF/#P'W'#=F[PR^DERI!V]\*2=1X@6AP,)Z!$:?)UR@$!Z( M9#QN,:..TB?NGW?HUZ%VJB5G!A=*_."EK2?1*((2*^:$O5.;S[BM9^CQ"B5, M^(5-&SO,(BB9T'%LB]:EQL268MP3I 8*/<*.DK0U*Y^E1P*]. M]F"0G$&:I,D1O$'7@4' &_Q/!VZ8?D#K:][OPL]9;JRFA_3K"&_6\6:!-SO MNZ3Y*AT1J H*KP%?-;S7YN-HBS<(P"Q0I[#K5"CK$@MLO$&[E^H6?G;!:2%,A:NC.4T-&0>\E\S MKN&>"8?^B> +/6O?=*@<\<%)_Q0^P'!TEHW2_<-Y_RS-1J\''_=..M,(A6#& M\(H3%Y42>NR;\+;90,M!.0U.,E=RKXR:4M+>:4]&"5X&P3D33!8(8=I,[[TW M$.]-8H-Z%?:-(1@G;3N4G;=;:;-VDE_#VWU(3W#%I0&!%:4FO?-A!+K=,:UA MU3K,=:XL;8EPK&DMH_8!=%\I97>&)^@6_?0/4$L#!!0 ( /:I!U&R*N , MMP( #X& 9 >&PO=V]R:W-H965TF\AQZ1[ESFK2$XM!3%V899BSAK$),=B*=PK:0M#7R4.>8O_4-BUU%, M-A1GR5[ S[4\AEYT!$F41'OP>EW*/8_7^WO*%]QD0KFL#7P_2XW55"4_]L3H M=S'Z/D9_1XR[IL9!%5!PR63&F0 N*4#=W&_57'8.S$+A""T](5>G5.M9K367 MF07+*6J#>&8P]%OX%\\1MRN2;OVX%Y9RH;*$=?4,_J19EQ1$P"\A9/A47^8 MD/#NS3")DP\OI%;Y)]__"#2(CY+^<$>@5OE:P85;/5VAGOO)92!3M;1->W>G MW7 \:V;"LWDS6:^9GM.3TE47Y!H=#TX"T,VT:C96+?R$2)6E>>/%D@8\:F= M^D(IN]FX -TO8_H+4$L#!!0 ( /:I!U$-ZS#3P@, "P) 9 >&PO M=V]R:W-H965TT-9O(=@9Y/2BU,F)Q7$0M%RI8 M+8:S>[-:Z-Y)H?#>@.W;EIOG6Y1ZMPR2X.7@06RVSA]$JT7'-_B([L_NWM N MFE!JT:*R0BLPV"R#F^3ZMO#R@\!? G?V8 T^DK767_SF7;T,8N\02JR<1^ T M/>$=2NF!R(VO>\Q@,ND5#]O<[ M[N/)/5ZEI1U&V(VR61Q U5NGV[TR>= *-<[\VSX/!PKE*06V5V"#WZ.APFYU2V77%4(CQ[!PAMT7$@+%Y_X M6J*]7$2.C'C1J-H#WHZ [ 1@ 1^T'C+S@+^T:LK M2.,06,SB,WCI%'$ZX*7_+^*_;];6&2+)/V=L9).-;+"1G;#Q2+U3]Q)!-R#4 M$RJGS3-4NNVTHHT]EM:SB+XWKVW'*UP&U'P6S1,&JW=[:(&6P*E1K,/:VW1; MA$9+ZCBA-G A%)WHWG)5V\MKH(SBE%%*0(7M&@VDB3])YO# =T0QAT9P2LPK MF,W\ )^IO5X+];HSND)K@97 "G@KE"#ZU;#1NK:0EPFD:0F'KKV"HBQH3&<) MG$EN/B4W_^GDDB\=&O<,%!K@UUYT=&&X$!2Z8SD^"WP\Q_>G+?S*G+_G:VWX M0)/)"*6,9>$L\>EG:9@7";Q'NH&V6M8@6HK]";V*.%Z$DW"),EIS,CV'47K3#_> MIA0>V=\83X0B*Z&8)W \59#%85K.(9V'>9I2!-9>TV5<]6TON<]=C93M2O#Q MEB95WFKCQ+_CP47J(Y]=#@N6)Y.8-/VI&BK\4\ M2X-T]WP'JZUH]=U6&[I=P:-%Z#OC=;N9>,-3#](J_\ 4$L#!!0 M ( /:I!U&LUR-570, (P( 9 >&PO=V]R:W-H965T^%&@##+>]4)0H_DB*I.GI0:I[72$:>&QJH6=>94Q[X_NZJ+!A^EJV M*$BRDZIAAK9J[^M6(2N=4E/[41!D?L.X\.93=[92\ZGL3,T%KA3HKFF8.BZQ MEH>9%WI/!VN^KXP]\.?3ENUQ@^9KNU*T\P>4DC#/N/!1K*5\MYN/I4S+[ .88V%L0B,E@>\Q;JV0.3&OR=,;S!I%<_Y)_0/ M+G:*9-;$[* MY$'#1;^RQ],[G"GDP2L*T4DAF6^,+.[?V;A*N)4-Y5HS]UQO[MBV1OUVZALR8R_[Q0ERV4-&KT!F M\$4*4VGX2Y18/M?WR;W!Q^C)QV5T$?!S)ZXA#D80!5%P 2\>8HX=7OQ:S!53 M>(IYQ8Y48@862C&Q1\=_7VRU450O/RX82P9CB3.6O&:,VJCL:@2Y WWVV,7Y M8^.CY?&EM[Z(;EOV1K>LP)E'/:E1/:#W+*06/1*6Z.8(XMZI>JY:*] MEZOECK+?)Y#>"XSM>G!2FVKCGN*7??N-Y45SQR$85TLVB_IRY=@KKF;^7#6Z M!B,G>P^O(!VGEN:A*Y8PS/HU3F&]^:J=1^O-0D,6!A#G&;*6AZ>78BGX74-D+)-]) M:9XVUL#P S+_"5!+ P04 " #VJ0=1XL'=.\X% X$ &0 'AL+W=O MJS7G-N MX+G(2WW16QM3S48CG:YYP?105KS$G:54!3/XJ58C72G.,DM4Y*/ \Y)1P439 MNSRW:P_J\ES6)A?<_%H] M*/P:M5PR4?!2"UF"XLN+WI4_NQ[3>7O@-\$WNC,'LF0AY6?Z>)]=]#Q2B.<\ M-<2!X<\3O^%Y3HQ0C2\-SUXKD@B[\QWW=]9VM&7!-+^1^2>1F?5%;]*#C"]9 MG9N/:6%,M-2HG2@K*W"C<%4AG+F]D40B#7C8:6)G! MC2R-*%>\3 77.;_ &WP3ND=-:PT]EQK/7]"/4 ML54TV"EZ'1QE^$M=#B'T!A!X@7>$7]@:'EI^X;\R_%;H-)>Z5AS^N%IHHQ ] M?QZ1&K52(RLU>D/J'4<$02JU.>32H[24GC-=L91?]##_-%=/O-6 ML88-1[69AJ7,,>=V3M1LC+ED+=FZ1E<%5(9\3>S62>7H"@QSN3RK-:DEN:HX@E$,0YQA,-T MBH/O3>%]:5!S;0#I'$>YR,7*,M+@0XA_R2&9$"40CY&'![X?PX>**T;![)P! M?^"% 8YT*&C&8#R!^1JU/4/!1??TJ=\'/X$?OIL$?O C1.-V.J\7[IPH4UGP M=OTTB*,^G,8Q#E&"XZ,T+._R/"$=IM9B+\01M9@&=G4:3*S$@[KHUAT866'6 M0/N:'"N?N,+-)I06Q9BL&F/-2KN^Y4P-X8-9XSE1N@KNBJF#BY%0RO(L)7_F M.:4Z++O>=9DA7[M30XW 4'N4NG&,)NBA=J^!LV&Z \E9)T9WCNB3K9\\.V-H M%;8#5))ZRDL4K5L(RF25[L-X&+CI/FF&V2OKT@"*X) ,$_@>;IA>0\5$ACHH M8 7M:PIB7A/,;8J@)U$4)CV5!;)A'X6O[=A+K6])GQ?34])I:1DME2SV/7T" MXW%D(9*$X1'"KZ)VTJ+RI$V8;R)+/!*&.AXI=7%;ZN*CI>[K+$3LU4J8[:'" M=Y33X<)WM0^R -/4/3?2H:#6<". M%]G?+301!$1RRU->+#!I0G^P#WT+C=,7O"<-A/JV2'A10"=\B+!>C&D:X#28 MQ#0-<1I/;$F.<#H.$IK&5F-*>\Z6F#?@AX,(*X\K27B+$$6]*S$5V[HF&(:# M$$%VAQ5D!J*H:F/3HBG)I^.!/TGZ3F7XT,D(U#$9^%@ACV F:3&3',7,Z]J> M"[80^1N0.KJTK0J[NL&K'?#GBI:Q=^/1IH$1^TH:I!,8K6Z_ M M^;REWML8=]\8]^",@WM6UDN\4M.>C583N);87G2/2N(;\:L/=IH@% M^%6E1$X=-J&VZ46X_81OSLJ2D)"B%4KN.N22.:_,CB,VP7 PQI1!0*"\E4C1 M:DIRJ9Q_B.4=7$E'5?)" ]I\%E_\ 4$L#!!0 ( /:I!U%7YYN?X@< (48 M 9 >&PO=V]R:W-H965TZ6DJ# M9C6?U*M*RKUJT)OS M$1]U';?Y?&&H8W)QMI)S=:?,;ZN;"JU)KR7+EZJL M4E#N3(71''+FXD[- ;%QV$]*SRNY6N2I+)@L,_8WLU 5NU4/JEPK]KEL$H"0 M//DJ9X6JQV<3 PM(SR1M5[ML5A.OK!:R+[HTBYI]*C.5[EZ?,S'>B53=3Y"1=:J>E"CBZ\+Q>YU@6HC M\XT-%5M5^B'/,)"7LDQSA#C?"NCL.]/KJK6$!-AL76.MNNZLK)DL--1M*D%>+"\8#4E:XIC%@8C%Y)F]SJ$>1>DWN8E M=\(DZ?UH6L*)(M'W-:U7/3OA8[B0)!$+'#]QK55AF\B0(6"HZO) FI'0H6A+8MO!:=KKK2 :]9 C@Y M0.4R4(>D1VQ/N!&$PQA=W MO,"E'L%MVX.5=CR,HW'SY87A&&A7*#742FO?B1BSDP!APMB)#Y#C,;M6J.FT MK3"+Q9)XXH^6@Q%SFBN@]Y?7R@T+(F.\9ND0\ ,^@O#58/7(T, A >D%U&-: MK$$PV:#52+"&@10K%/;2^M2Z_AP..&&5K4L)'DLMI]2'6^- @5$@1-/"X30) M8#>T%B#JZ(P_97?YXQ +#0W_ESDH<<)G'-3U@ J$%^X,M5UOLE",D@X8YXX( M8KB(%/)0)3YH*'*$"&Q=A,%S'N(Q*C/IQ6"'%Y%T&(6MG$"EN_P_9"+8#@,Z M9YI6Y' P9-?7M :9".4=)IXE(0Y[N,/=&(@%,!$T !X##41^?# 9^4XDB)P% M]T!IB4=T3:3-P2PQ>@*?OX>0.$ +/((P%" AZ(TY62GLIB# +2)V_$ T)?^< MB< N(O)1XE[DCBWK^-0*!#&%".@SX*^0#Y9T??L! HSXF_23$$6=Q*X8IA_+ MH'Y#?>24_W\"VDM 0X/# 8N2:AQIU70V9OAHSE\O4B-]QZ\ MWDELNP"^F^?VBM^]YO41BWS:5P4* 7SGAW;G33PZ<84NC7 <-ZB/)VXS%L=O MYZ2=$[0(GEM@>-XF^:%1XY+#GQ7;4C^Q<- M _)YF=_C9@J&N.H-N-HU14GBDV8Y6(- /+>([CAF=\_:H$J9K-O:HQU652F( M2,ZMQ.[^:W4BC&WU;%]EGY*)TFS_R%.:/7UU/K IX^$Q\X)C].,W/GX:NL0) M_AA[-_YR#(=;0U?L@^W\@#]]Y[5MQW?:J;WMU7:J=F&[QOAR!C^P)[Y 3H2,(&.[ MF'&TN;O=>0U]; >5'YL9'P:*).R+)#RX2/KTPL5ZOO.N4BFY+_T'5>^_YC^] MUSPM)VD'S@ OB@6X8W4*B-W VLV/VET)VRV([NUY<^ R.WO0_AWC]9Q_BUJ? MOOIRFL((P%+;ZW'BMIQEN0MW5N[Q9@!'JT]?/DUQ)_.X3R'U*/NBGS4W8N/NJ/J47<^'3'PH<#Z@2:F4.3XO!-?:GQ>%/O0'-1] M )J=[K> F^[A+[+M)6#OO0C^U%E@-WE<,W 2BFC+]W ;VI^WDZVG893;W#Z MU\S2;O-*W/?V;^S3YFGY:7KS0/]%5O,<9\E"W4/4/8VP:5?-HW?3,'IE'YIG MVH!@[.="R4Q5- 'C]UJ;KD$+]/_S&PO=V]R:W-H965T&R'-,JJMW=W$L2EJ;)BY5CN4M%(IW3!+0[V-S4XC M*WU0(^(L2:9QP[B,5@L_=Z]7"]5:P27>:S!MTS!]W*!0AV641B\3#WQ;6S<1 MKQ8[ML5'M'_L[C6-XAZEY U*PY4$C=4R6J,M"N& B,;W#C/J4[K 4_L%_1=?.]62,X.W2GSEI:V7 MT2R"$BO6"ON@#K]B5X\G6"AA_#\<@N\XB:!HC55-%TP,&B[#ESUW^W 2,'LK M(.L",L\[)/(L[YAEJX56!]#.F]"7K^)@8 M]C2S%YJ;;!#PJ"][Y/%&;^ ]8(%\[\N#O]:YL9K:X^\! MX'$///; X[?V4S)Q--R JH"]VMLB[*WP>WMN2P>!W>&\,3M6X#*BTV=0[S&B M;,!.$MH:AY(">3%#\\Z%Y.62(E1KF"S-AQMXJC52O"S!\&=H@H ;W'(IN=S" MA@D/^YG)EHXOI$$,N(#1&+YJ;O%*596!HF9ZBR6P+5T)QOY ZMU/LRS-/@$) MH/:H.8:=:E0KK0&J;,^)D3C"@1 M2EJM^B#JIE=,6HE]4P0> PI.>@4G@PH^ MANO)TRJ*P$OW[0+YD2HC%N<4' 0^K^!3C9T@KC(;.C)W=V5W3_)_:&*("!3, MXE81XQ\%?;T_H_1JFL =.QJ8IE?SSIRG4+JOD]T) D_*,A',4;=VVVJ-TG9+ M>;?[ZS.<+GJI+J@_DL2K,@^#\,TNY_.I,\8T,X$[BFURG\O13.?_$\UT-J'_ MC_2;.B.;.'-V.4L+^C_W M\-Q]H5-"YP,$5A2:7'^DYM'A"0D#JW;^VLZ5I4? FS6]NJB= ZU72MF7@4O0 MO^.K?P%02P,$% @ ]JD'4;%F\R8C! I0X !D !X;"]W;W)K&ULS5=-;]LX$/TK Z.'%$@BT1^R$S@&XCA!4S3;H&YW M%RAZH*6Q140B79*R&V!__ XE6;832_4>%LC%)BF^-V^&PR$Y7"O]9&)$"[_2 M1)JK5FSM\M+S3!ACRLVY6J*D+W.E4VZIJQ>>66KD40Y*$Z_M^X&78R)6E^U6&LS\$4L8NL&O-%PR1)?:+6G_ MTJ&>XPM58O)?6)=S_1:$F;$J+<&D(!6R^.>_RD#L #K=&D"[!+1? -JL!M I M 9UC =T2T'T)Z-< >B6@=ZR%H 0$>>R+8.61GG#+1T.MUJ#=;&)SC7RY M):L.ZX6EA7%AH5UC@<&#DC8V<"LCC [@;YOQ00/>(V\KE]L;E\?M1L*/F3R' MCG\*;;_M?YM.X.3=^Z56"\U3$W.-AWR\::9\X)HHV1[E 99),\L$PPT+&]2S MW/YW]VK]NCN:BUT<5+2W ITJZ3HY;:>&ELI PF=* M_[.-48.-N81]T/=/Q GW%E/SHT%1MU+4S15U:Q0]\F=GSX!55.Q^9D(CJ-RV MD"LT-O]X:"T*VB"G=55\-6*^[P^]U6Z07T_:SMB3VZOD]AKE/BBJS%G"-5P; M@^DL$6A.X5Y2_GQ_H#[J'_ /3%'3.%S#(U5KU!HCF%H5/E5S&@(75$J"-[*4 M_4I1OS$V?V3.-U?,BJS?K&?DZA@91^K99TC1QBK:65X*6.TV&1[O+W!OT M_=Z+E;[]_;P]GP:53X/_)3W'@^;TW!-S48FY: XP&<00/MGH'$Y<)T'X@#RQ M,4Q#@3)$.C5VTO!F\O=9P%AW;ZPV;8[(3>9O#S?_C60GVSEP6?/>%0G%3!'I MLEA5X*G*I#UT7I14QZT?:V\EM!LE3#+G')WXE$XD OCO(3U7I6>3DV>;&L["X[4PJ-(N(PY7D[P2DZW1LZVL+/F MROY9XIFE9\TI2"7/Z$S+9,1G5'U";N+-;CIT>2MY=[?1H/=J&WD[M^@4]2)_ M[Q@(W>8L[C;5:/6FNLY?$B_&Q^QRP@Z,W[HW6'YKW](7#SBZ/RZ$-)#@G$SY MYWV*FR[>1$7'JF5^AY\I2R^"O!G3.Q*UFT#?YTK93<<9J%ZFHW\!4$L#!!0 M ( /:I!U&6L:1_D@, -D- 9 >&PO=V]R:W-H965TD%-E.)$7Q4U]LDKKGW'/)2UYR?N#BB\P %/J:4R873J94<>.Z,LX@ MQ_**%\#TEST7.5:Z*U)7%@)P8D$Y=0//F[@Y)LQ9SNW81BSGO%24,-@(),L\ MQ^+;"B@_+!S?>1KX1-),F0%W.2]P"EM0#\5&Z)[;L"0D!R8)9TC ?N'<^C=W M_M@ K,5?! [RI(U,*#O.OYC.AV3A>$814(B5H<#Z[Q'60*EATCK^K4F=QJM@=EC"FM._2:*RA3-S4 )[7%+UB1]^ASH@*S#F5-I?=*ALI]<. MBDNI>%Z#M8* IH%?02_E&R*S3RWJ/ "[R' M;83>_=0F:_UV%@$%%R;P!T94"V7T=DH)J=YT;61W_601Q)K,-V3^=6N49Y,W M:K)A9&E'';0?]<8^76#!F6['8$3J+!%HG6&6 B+LW(RPF!04T.<_-2'ZH""7 M__3("1LYH943=LDI\QT(DX'-W*-23[Y$_Z/75F-=48\MM3DN'Y?!W'UL43-N MU(Q[U?S&>7(@E+8E>865[CLA(UT"X::'?WNMU9J),FU,F@4!') M"TQ$1XZN)B^\=_B=-GZG;UIPO--)56\2V;;(TYY%KF:RS^),XZS1..O5N %A MZ[/>%OK0^N];K@_ S_=@A/?E_'5#?_TC;$'?.Q8(;U NO$>84AYC!0DJ0,0= M.?$*VW1RY7D_MRWEI<#H N#Y5)S42O_B$Z"&GFZ&(/2\ET? 4,-H@.%Y',$Q MCJ!_F_%'H&A%N,I X )*1>)!2>P?"XG_0U02_UA*_/Y:\M8T[F<+PLXTOA 8 M70 \GXIC'?,O+V3^RXHR:\WB87;1ZW95$.[)%38'D=JW@T0V,ZK+7S/:O$]N M[:W\V?C*OXFJ5\:1IGKTW&.1$B81A;VF]*ZF6IJHWA%51_'"7I1W7.EKMVUF M^NT%PACH[WO.U5/'.&A><\OO4$L#!!0 ( /:I!U'Z0 $1# 8 )$D 9 M >&PO=V]R:W-H965TRCVH-B,+502/8E.VF$_?I2LB I)4\I4O222?.[EQQ'/ MO;SB_(GG7XL=8P)\2Y.L.)_LA-B?3:?%>L?2J'C/]RR3OSSP/(V$O,VWTV*? MLVA3&:7)%'F>/TVC.)MV8$E2>I+]^+MV.FG:+ W;U\_> M?ZD&+P=S'Q5LP9,_XXW8G4_""=BPA^B0B%O^]"NK!U1U<,V3HOH+GFJL-P'K M0R%X6AO+'J1Q=OP??:LGHF4@_=@-4&V = -RP@#7!KAO"Z0V('U;H+5!-?3I M<>S5Q"TC$5W,<_X$\A(MO947U>Q7UG*^XJQ\4>Y$+G^-I9VXN&6/+#LP<,O6 M?)O%%7D_@V5<1-MMSK91]8 _@&?AY M4JZ0T^''0_8>8.\G@#SD6?JSZ&T.9[;A#&M]];];?S$9N'E#<.4/G_!W^EWX M\IN$@@^"I<5?CH9(TQ"I&B(G&OK$191(\:F<6U^CH[U?V9<*^'@!R

>KY%D@H@7:*"E"8((8JAQ9&L/8CM%83/* MT#G*U?7JL@\]L\;?;%QZH*<$W1M(4.V@/6,80Z(Q9$&1@&B3O[2@9BBD&D46 M%$3$]^TDP5;P@NZ5='.YZ$,31,HC&IDHI:L0#R4*VRC0]Q3J.E3>S[U$XC4L$ MN8/!#5?7--I,0;!2/3J)0;N1/E'C2& M)HTT-!:EB<(>U+--"XK.0GW39D,A^:B6(DW]L:E$2L9 MQ^Y$NIO&VD%'+FI!67)1"\J2B]I0)W-1K,((=H>1#AI?G:KB5B%EY$H*5D*. MA]92:@<=J:H%94E5+2A+JFI!.5)5K"()=D>2#D)_1":+E=;CD>LP6*D\'EJ) MP69I!'OZ:EQ84 03/9&UH,(@T#?Z%I1/6KY>#E5%&>R.,K]S21NXBKG8L3S: MLX.(U_T6IU)W/'*%ABA=)T,K-,2LEP3$UP1R84')_$@GSH:"B(9ZI=/2)$(G M-B!$!1;B#BQNYEZ9R!(E\F3D,@Y1JDZ&EG&(652A@;X%7%A0!I4F))!"JS/I M=-+8-XDE2M;)R(4=HD2;#"WL$$N9)4"A3J$-92Y($X71S%B/ M)LJQ'E70(.Z@T;T>>Z:Q1(DW&;FX0Y2(DZ'%'6(66CR=Q4[(LANR?C92 M@8.Z T:].7JD2+^'9ZG@Z1KD_'M:YCO)MG!4@ M80^R*>]](#N<'\^_'&\$WU<'/.ZY$#RM+G&R'-/*BMW5R%H2EJ M:)@Y5QN0^*12NF$6IWH=FHT&5GI1(\*8TFG8,"Z#;.;7;G4V4ZT57,*M)J9M M&J;_WH!0NWD0!4\+2[ZNK5L(L]F&K>$.[/WF5N,L'+*4O %IN))$0S4/KJ.K M?.KB?< /#CNS-R:NDY52#V[RN9P'U &!@,*Z# QO6\A!")<(,?[T.8.AI!/N MCY^R?_2]8R\K9B!7XBRZV-I0(K6 M6-7T8B1HN.SN[+'W84\0)2\(XEX0OU4PZ043WVA'YMM:,,NRF58[HETT9G,# M[XU78S=D" M+./"G&',_=V"G)ZJ]8P69I9:)'*Y0Z+GN"F(XA?(/C2RG,RH>]( M3&,Z(L]?ER^@0'GDY-'EP23'T"MRVW&1JUW??H."*B\<40] PL&<"25\'N MY8H+ 25NU@+XEJT$C-)U6=+]VG$2Q0>$(U&47EZ.(Z8#8OHV[W)EQJU+C\M> M'*(=Q]!QK.F -7T;UE?.T$/<56"NR (JT!K][#^Q,=SIT7M,:9(>\!X'Q31) M#I##O3/!G5 M4O9IXDZ>X4>3_0-02P,$% @ ]JD'43A1&-MN @ HP8 !D !X;"]W M;W)K&ULI55=;],P%/TK5L3#)L&2)MF J8VT?B V M:=+4,7A /+C);6/-L8-]TY9_S[63AC)UW00OB7U]SSD^-_;-<*/-HRT!D&TK MJ>PH*!'KRS"T>0D5MV>Z!D4K2VTJCC0UJ]#6!GCA094,XRBZ""LN5) -?>S. M9$/=H!0*[@RS355Q\VL,4F]&P2#8!>9B5:(+A-FPYBNX!WRH[PS-PIZE$!4H M*[1B!I:CX&IP.4M=OD_X*F!C]\;,.5EH_>@FU\4HB-R&0$*.CH'3:PT3D-(1 MT39^=IQ!+^F ^^,=^R?OG;PLN(6)EM]$@>4H^!"P I:\D3C7F\_0^3EW?+F6 MUC_9ILT]CP*6-Q9UU8%I!Y50[9MONSKL 8CG,"#N /%30/H,(.D R6L5T@Z0 MOE;AO -XZV'KW1=NRI%G0Z,WS+AL8G,#7WV/IGH)Y<[)/1I:%83#; YK4 VP M.>1ZI83_>._8%]ABPR4[F0)R(>TIQ1[NI^SDS>DP1))UX##O),:M1/R,1,)N MM<+2LIDJH#B GQ['7QS!AV2W]QSO/(_CHX0WC3IC2?26Q5$<'=C/Y-7PP<=# M=OY/??;/ZG\5(^D/0.+YDA<.P-+HBDVHT(;N+AU"+-G$'S\P[/O5POKXCR." M:2^8>L'T&<'KJN;"4*M!EI?T$=>WO_$(C?4(_+.DO L8E MT/I2:]Q-G$#_7\I^ U!+ P04 " #VJ0=1S(RQ64T# ?"@ &0 'AL M+W=O77!R$_*9* M $U^U!572Z?4>G_CNBHKH:;J2NR!X\I.R)IJ',K"57L)-+>DNG(#SXO=FC+N MK!9V[EZN%J+1%>-P+XEJZIK*?]90B:$'2$8$B(7B"$ M'2%\K8>H(T2O]3#K"#9UM\W="K>AFJX64AR(-&BT9CZL^I:->C%NZN112UQE MR-.K!W@"W@!Y@$P4G-F?]YX,9O^%G&P:R7A![D$RD9.W&]"45>H=@K\^;LC; M-^_(&\(X^5**1E&>JX6K,3SCQ,VZ4-9M*,$+H83DL^"Z5.2.YY!/\#>7^?$% MOHNR]-H$1VW6P46#OS?\BH3>;R3P F\BGO35='\^E;_[W][/Q C[0@FM MO? GA;*3HB8I"BUQCV.QZI*DMDQ!DK]NM\K._WW!8=0[C*S#Z 6'6&FV#?(, MB-A6K*"F.!51^%8[-EDAZ]9D;$V:%OFTBH(D6+A/I[]M#/+#.#D';<:@V0!R M-X:$R>S9V5G6LS[KV<6LTY+R I392KH$ DHS[(:X_U!7KFC;7?>2H2BTJD36 MK@FR_YE:QB+RA#10W,*3&[2-;7:FS##M= QZ/Q](O!ECXG HWQ@3A=/BQ;UX M\:^53%N]'(\O>T!ANWN6NI4%^UEV+&[9EOR44/$H]GD87@^$&H-\WXNB@51C M5' ]/U&B%6L"%?E>/*U7TNN57-3KB]"T.J8Y61#)>*M$\^%>22=006BZSEFB M8U0P'U?%!"J9>_X@4??DQ,/.4]BKAL)?UW#=]K1^MK_-W-I#?#"_]F]2?V)^ M@[>?]K+R;+Z].GVFLF!85!7LT)5WE>!/D>UUI!UHL;?G[59H;(OVL\0;'$@# MP/6=$/HX, [Z.^'J/U!+ P04 " #VJ0=1I_L2/XT$ "0'0 &0 'AL M+W=O2,7S]61M09X6JW_ZN';$ MQ@0$:R:@]01D[5XM9*V\HHJ.!H(O@3"C-9JYL%NUL[5Q:6&B,E%"OTWU/#4: MLP=6+!@8LYC/BM1ZZAC<,&$#7L0,_'V?I3-J7WR\8HJFF?P$/H"T +=SOI"T M2.0@5-H4 QC&ZV4O5LNBFF6_+(H3@*,C@"(4?9M<@8\?/CU'"?5&JMV@:C?( MPF+_;H[ M=D*S;RKE";AX%52SS(ZY^TLC M@FO%>7'7>Y:X70MCOF2'D:=B'0&X<..U4FU.O&N M7GECS,SWF1:SFL >@<^/I?8$2\!MFIMQ? HF^I6L<1]'BJ4]G::47DNI4]W0-%KKL5.=CMD=V1ZU6K][RK5^%053CD MLW"4UB.[S/$#=T'."S67'@_U*QO[[\PNJ*GE9]=I9>MI*]@%(R>[T8'XM09Z M1K H.MU-,+BA^_"M*-: #,%O1H7/2T[.(7IGCJ%&CD$G]A"W@V4N 4!_!G@! MR\@6RQ#NHAJ6.56'G3=CF1?95*MGLJ0Q&P:Z')5,/+!@!'Q><](/&[1?\&2A M(S.A&9/@[BO+[YGP!L3I.NRU@R).Q:%?QE] D?XV1?JXID:!3IKAZ?_P-O@7 MM*%\04[04=2*R"*G\,BOP_M'=@WTK/KL]G8'%FW4XG[Q?L6WWX"\1Q6#G&JC MAAK]_?C77. @)_6(M(-_3ON17_M?P+_.%O]POT98D)-QY)?QU_#/C]Q8X2"7 M$)"_(']']C67/LAE$=1O!_M<6D$-:65_]IUN%]C]/MY-/^P2 O97^*^@GQ_Y MY:4/=CD#^W/&6,-1$<\!+1)PI8.:\3)GA7JBXS[5$'89 K>D7;/1KSE8PV:[ M8X,0C&I8XV0<-_5L]@Q 2PHD[-(!;D>'![L$@0_5X\$[FCPPJJF0L!-__&9M MG@;D/2HD[,0=-W5ZVL3)YJ()NR2!V]$7(BYKD$/UA*E_;([9XKQ7-[.6&PO=V]R:W-H965T[$DFN<S+RC J<*Y 5YP3]3)")M>#H!-L#+=T51AG"(?]DJQP@>:^G"M[ M"EN6C'(4FDH!"O-!<-VYFO:@.LVP01"X@9)@:QT#L M\H1C9,P1V3!^-IQ!*^F V_L-^T>?N\UE232.)?M.,U,,@LL ,LQ)Q0-V$; J:A7\MS480M@>78#X@80OP5T]P"2!I < MJ]!M -UC%7H-P*<>UKG[PDV((<.^DFM0SMNRN8VOOD?;>E'A^F1AE'U++01.\@CN)H1SSC MH^&=#[O2^3_UZ3^KORI&TC9"XOFZ>_@6]2>>:5V1)4.XMT568 J$Z<^*FA>8 MB12%^ZMASHB AQOD2U0_#DAW6^FNET[V2%];VHRRRI,O,*T4-=3&,GU.664_ M->1*Q%<^_GWQC[J7(T[.^P3>W'4<_XW?7WK MW!"UHD(#P]Q*1>?O;:BJGN3UP&ULS5=-;]LX$/TKA+"'%NA&HF1+<6 ;B#^2;;=!@Z3M'HH] MT/)8(DJ17I*VT\7^^"4I15%C67;1'G*Q26K>F^&;$3D:[H3\JG( C1X*QM7( MR[5>7_B^2G,HB#H3:^#FR4K(@F@SE9FOUA+(TH$*YH=!$/L%H=P;#]W:K1P/ MQ48SRN%6(K4I"B*_38")W*+:QQ9@+/X3&&G&F-DM[(0XJN=O%V.O,!&! Q2;2F(^=O"%!BS M3":.?RI2K_9I@V@)*[)A^D[L_H!J0WW+ MEPJFW"_:5;:!A]*-TJ*HP":"@O+RGSQ40C0 AJ<=$%: \#F@=P 058#H5 ^] M"M [U4._ O2? ^(#@+@"Q*=Z2"I XI)5JNM2,R.:C(=2[)"TUH;-#EQ^'=ID MA');BO=:FJ?4X/38I)"1A9#$5@2ZE)+P#$RI:85^1]?W?Z);1K2M>/01TIP+ M)K)OZ*.Q4BN0;U #;NN*+]%[FII"-529!$>$7LU $\K4:\/XZ7Z&7OWV>NAK M$[N-P$^K."=EG.&!."-T([C.%9KS)2Q;\+-N?'P,?]6-QV$'@6]$KY4/'Y6? MA)V,[S;\#$7!&Q0&8= 2T/1D.!ZTZ?%SWN<_Y_VJ&SZ#U,#Q0?CU,>^LAO:BC4WQT1]>J(>BZBWH&( M[F +? /FL$]%QNF_K24[*3EBQV'OG.T8]P9Q$@0FH]MF*;48AA$>[!G.]@W# M01SM,\Y;#)-!@)N&WVV\7V^\W[EQ>^1\N8%B ;)+Q[BFBU](9I,ZHN079#;9 MD_=Y2H]:S(Y:S(]:7.U;F!XG.)CE\UJ$\Y.SC/Y#-Y338E.K-NC<]=1<(-2X-4Y-]H%NR8)!V^E7\31E[R?]P[+CQFV/?TAX\G"J\#A\ M\A&^%.F?#G@<_2+IHSWIH_-^6\G[C::K )FY?EJA5&RX+J^>>K7NV2]=I_IL M?8(OIKAE?88OYF5'_D1??B#<$)E1KA"#E7$5G"7F3)5ESUU.M%B[EF\AM&D@ MW3 WWRD@K8%YOA)"/TZL@_K+9_P_4$L#!!0 ( /:I!U'H!0Z,QP, /\/ M 9 >&PO=V]R:W-H965TZGOHA)"R]%%O@^&8C9,(4#F6@IUL) M;)V#DE@W#"AV*HXXW$J2[I*$R<<)Q.(PTJAVG+B+@E!E M$_IXN&4!W(/ZO+V5.-(KEG64 $\CP8F$S4B[H=?OJ)L!\H@O$1S2VC/)4ED) M\9 -WJ]'FI$I@AA\E5$P_-K#%.(X8T(=?Y:D6K5F!JP_']D7>?*8S(JE,!7Q M']%:A2/M2B-KV+!=K.[$X3OI$$)&.3%*G8W M+\V,*38>2G$@,HM&MNPAKV^.QHI$/+/BO9+X-D*<&F,)8[82DF6.(#=2,AX M6DVEY%>R!.D_D-N8JQ"![))XQ+-R )XVOR(?+1FX@.).18\F8& MBD5Q^A9)/M_/R)M?W@YUA7*S176_E#8II)EGI%ED*;@*4S+G:UBWX&?=>+<# MK^,V57ME'O=J8G82_K[CE\0R+HAIF$:+GFEO./7:TGG9ZO.7K;[HAL_ 1S@] M"W_7#;_9!17P5)^JU# MD5TILG-%]AE%=[ 'O@,\GGT1\.BO5L=."@XWY\BZQ'Y,;<\=& 96=%^W4DN@ M:5&O$3AK!IJ>:S49YRV! \^@]< GB3M5XDYGXE/\D4GL*'APJ; \LD!>D#AB MJRB.U&/;/A243DV,8]A.,[N><0NGF9QAVV=SB$>.#J<-*E^+]JTK1U?_@_:M&+?'_4M/YS3!JM,3->L;- MSRU[QAI>E;/W0]M'N-&XS9@V1'NVBJ'M8/2:OV2G2P U3JW;^,GN1([CRP5 M']/2VA\-^DIL2\V3)O/EQIV6)/42>FU.^W'<4YFG9D>MGU_H)=Y3%'#&_7Z% M/C5":K^60I]Z%.UN4OU.*-IL-V9+4VH)A^ M<8N6N.>)Z;7K!@H,\IMD2GRQXZKX"U?-5K?5F_R.]FQ^0J^GM&5^1J_GQ5WT M1%]WCE8^M P 0 \ !D !X;"]W;W)K M&ULS5?;;MLX$/T50MB'%NA&HFZV ]M 8L=N%QLT MB-'N0]$'6AI;1"A1):DX7NS'E[I8=B)%T:(ID!=;I.:^XN),1@$(/ M,4ODQ(B42L]-4P81Q$2>\102_6;#14R47HJM*5,!)"Q ,3-MR_+-F-#$F(Z+ MO1LQ'?-,,9K C4 RBV,B]I? ^&YB8..P<4NWD4>[*FO.[?/$IG!A6;A$P"%1.0?3? M/0IP MGP&X%<#MJ\&K %Y?#7X%\/L"!A5@4"2KC&Z1FCE19#H6?(=$+JW9\H2FNE-!OJ<:IJ4XA(VLN2%X1Z$((DFQ!EYJ2Z$]T#2*X0RNJR);15-$$ MS;0.MI<*K;(T97MTL150B*-WX[ZLYNC='^_'IM(6YGK,H++FLK3& M?L8:C*YYHB*)KI(0PA;\K!OOO(2_ZL;['7A31[8.KWT([Z7=23B'X PY^ .R M+>RU^=,-_RM+--S*X;;5 I_WAN-16S1^3?OBU[0O^X=NU)$*IZYTI^!S_F^E M(Y*$C]:?500"J8CH>G\$^O:WYD2?%,3R>X=%;FV16UCD/F/1+=Q#DH$^T0.^ M3>B_[15?^4Z3<=$B.!A9 M^%3PD>->[;C7Z?A,?V1"-R%]UJFH.N5 ?$",DC5E5.W;XE!2>B?&>);K-;WK M*;?TFLY9KONL;W[MF]_I6^-@_'8-\1I$5\$,:N[!&RGA86W1\/4S.6QD2%^< MK&8F>\HM7Y9[Y-NH]FW4Z5O9_0[I0_\U>UZ/U&+KV(BM-Y)!AIDMT11C(7CD[ MMA3\5GH*/C85_!I=I2)Y\>.:XY8FX+5]K2V,SK!%<-'".!AV?*_XV%;P;^@K MN-D(G%;_^LDM6^2>.F:>W->U@=MB%),HX%FBR@M-O5N/>Q?%D/-D?X;/Y[AE M_PJ?+\IA[DA?SI;71&QI(A&#C59EG0VTM:(?JL,@5U$/S]"=02P,$% @ ]JD'46-&C0A> @ 8 8 !D !X M;"]W;W)K&ULS55=;],P%/TK5K2'31I+FJ8%IC32 MUH( ,3&M#!XF'MSVMK'FCV#?K"N_GFLGBUJV%9!XX"7QM>\Y.?=6N5HI;C?G(,UZ%/6BAXDKL2K13\1%7O$53 &OJTM+4=RQ M+(0"[831S,)R%)WU3L=#GQ\2O@A8NZTQ\Y7,C+GUP?O%*$J\() P1\_ Z74' M8Y#2$Y&,[RUGU'W2 [?'#^QO0^U4RXP[&!OY52RP'$6O(K: ):\E7IGU.VCK M&7B^N9$N/-FZS4TB-J\=&M6"28$2NGGS^]:'+4 O>P:0MH#T3P']%M /A3;* M0ED3CKS(K5DSZ[.)S0^"-P%-U0CMNSA%2ZN"<%A0^9+/C.7>379F+=CIAAP='[( )S3Z7IG9<+UP> M(XGSGXCGK9#S1DCZC) /M3YA_>28I4F:/ $?[X=/8$[PGH?W7N_"8[*D\R7M M?$D#7_]O?6%4WD[\"4NP#$NNV2[HYB-QLO<(RGW;HZC?*>H'1=FSBC1:VO6T M0;!LMP;88R8%GPDI^;F M0,[#XG!AWWX#_IS;!3-/SWO1D^87N2_-*;WR0U:N.M\^_OW@MN M5T([)F%)L.3D)?EIF_NL"=!4X4J8&22E85C2+P"L3Z#UI3'X$/A;IONI%#\! M4$L#!!0 ( /:I!U%_!2[$.P4 %$< 9 >&PO=V]R:W-H965T>$Y^#%XN&#\N_ !)'J-PEB<=GPI MYR>&(5P?(BJ.V1QB=67*>$2E.N4S0\PY4"\%1:%!3-,Q(AK$G=$P'7O@HR%+ M9!C$\,"12**(\A]G$++%:0=WW@8>@YDO]8 Q&L[I#)Y ?IT_<'5F%%Z\(()8 M!"Q&'*:GG2_XY,:R-""U^"6 A:@<(UW*A+'O^N3&.^V8.B,(P97:!54_+W . M8:@]J3S^S)UVBI@:6#U^\WZ9%J^*F5 !YRS\-?"D?]KI=Y '4YJ$\I$MKB$O MJ*O]N2P4Z7^TR&W-#G(3(5F4@U4&41!GO_0UOQ$5@/)3#R Y@+0%6#G 6@78 M&P!V#K#;1NCF@&[;"$X.<%8!S@9 +P?TVD;HYX!^6\ @!PS2=LCX2\D?4TE' M0\X6B&MKY4T?I!V4HA7G0:R;_4ER=350.#E231+2">-4]QSZPCF-9Z":60IT MA*Y"-J$A&L.+>BCF>O00W<^S)HT]=!NXJNL5:L8!LJO*-94P"UQ4<:S,*R8: M6?%87D('8Y T",5G%?KKTQ@=?/J,/J$@1L\^2X3"B:$A5U<> M(PL?(F+B7MT-:8;_E,0*;FHX,6O@X]9P/*B[G1^+?OFQZ%?-\#&XQ:VK@U\W MPY]@7D3OU\!OVD?O-32"53SZ5NK/>N^CGSZBU?-[Z0-'TJD)%=9&2G&=D;,XK5_.%*-0=*/Y_]@!^B,*"3( SDC[IVS5PZJ4LM[2^C MKFEWA\9+M:O:&%VM&Q'3M@NCI9*Z14G=QI(>U4P7)Z#6!2Z;Q<%?]7-0YJ-; MB8SM@=-;SF_<7[ M9YHK;-<8D56CBW4CRUHUNEPW(MV*T5*A@Z+0P>ZH1G]O7QBTZ0MLEJL:JAG>%SG#I9[A MW0O:&5[7(6R;&^DLE0CO0HKPNC*LSDPU)MVUF6F[G\L:DZ5Y<+G.4H3P#E7H M(VVKIS4:@C@Z4V_;'KH+U+%DJH/:]'6I<7A?1 Z7*H>;9>Z9\AE()'3U:,JX M>C/-:Z]MZ!HI,]._#527(H1WJT(?H?J.O@91$E6''D$ Y:[?\$[;HA5(J6ID M7U2-E*I&MJM:H,*JH&IB@>"%3L+:+LC]5+N@W]W8 Z14*;(G*E7? _]Z!B"E MLI%]4392*AO9KFSM:+=K5Y\;>2_EC#3+V7_*>T'L?4MR2[4BSKZ06TH.Z>U^ MV9+[K!*]>=5"2JDAS5+S_]#\O&"M:"Z5B@SVA&:KE!/+W#W-N4]G12]-)^/?SMR,+;;L&256F*1?6&I\I7.:F8IB9(P\^U2Z?I'R1Q1[P_% M5IJ(9&H"3A?VA\CU=7[ZBWD$5"0<$)NB.6>JUT7=M_.K/'253&N=3*.RO: : M9);N30GDLB26V>?&8K38__J2[OJLC)_CDS&N&;_ )Y?9[E;I/MMLNU,+S2 6 M*(2I"F4>]]3TPK/]J^Q$LGFZN3%A4G5O>N@#]8!K W5]RIA\.]$!BEW$T3]0 M2P,$% @ ]JD'4;'APK[M P *!$ !D !X;"]W;W)K&ULS5AM;Z,X$/XK%KH/N])>P4!>B))(>>E+5M?=JMV]^["Z#PY, M@K6 <\9)MJ?[\3<&2I)"6'J]#ZV4!LP\SSSC&8]QAGLAOZ9F-W!JXY^M0Z0%S/-RP-3R ^KJYDWAGEBP!CR%) MN4B(A-7(F-#!@O8U(+/XG<,^/;HF.I2E$-_US2(8&996!!'X2E,P_-K!#*)( M,Z&.OPI2H_2I@FT]] M ORW *P!>5@YY_K+DSYEBXZ$4>R*U M-;+IBZR",C3FG">ZV!^4Q*<<<6J,11*QI9!,UQR92,F2-6 QJY3\2M"0*5AS MGQR9885.UA(R(_)N#HKQ*'V/UE\?YN3=+^^'ID)=FMWT"PW37(-]1@,EMR)1 M84HNDP""&OR\&>_\#'_=C.\VX$VO$[]H+]YK* 2G7%U. MQN>\='41E@0G]Y]5")*HD"7D%/3M-^0D"P5Q^F>#(K=4Y&:*W+.*$ES4OL(V MH\*BP8#\0"+.ECSBZK&NWG+*;D:I=\_=N&.Y'=I!L ?=@7ZP3_G=]+\DY.D?.J>MU>Q65EYV*2FH[U*N&766T MO:Y39;RI,MH]SZ)G ^^6@7<; [\34F%;_G8+\1)D4YGT2L;>&RG.7'>2XJ#_$-N M>02X[C$[G_'3HFJH=7B;L-Y(W="C-QSZO[>\6<%YVLNLLRN5V@4X+'%;)ACWI*:F4TDSE6QM(T38>MBCK_N4Z^[$6K.CGL0M1]*W5R MV#UH\_:AZX2C6W2*30;XCBTCJ$U*S<[06!R'/DY?U,A/K+!R:/'TK M79X>VCQM[O/ML_#S'IY+,(].1[CPU]G1.B6^V"8J?W$J1\OC^R0[M#X;G]+! MC-:,S^G@JF[\F@YN\D/[P6W^&\(MDVN>I"2"%4JP+GI843(_EN&PO=V]R:W-H965TQ8810T&.(' M2Z3X?><CQB.YTIP)N%$H7V495=LSX')STL&=AXE; MMDBUG0C&HR5=P!WH+\L;949!Q3)C&8B<28$4S$\ZI_CXBA +<"O^9+#)=^Z1 M-64JY3<[^#@[Z816(^"0:$M!S64-Y\"Y93)Z?"]).Y5,"]R]?V"_=,8;8Z8T MAW/)_V(SG9YT!ATT@SE=<7TK-U=0&M2U?(GDN?M'FW)MV$')*M ^ E 7 +BMA*Z):#;5D*O!/3: OHEH-\6 M,"@! ^?=PAW.EQ.JZ7BDY 8IN]JPV1L7$ YM7,B$C=T[K@$!4S](DE)HP-;J' MH="["6C*>/[>P+_<3="[7]Z/ FT4M>*"I%3JK%"*/*$41M=2Z#1'%V(&LP;\ MN1\?/8>_\.-['GQ@-KC:9?*PRV?$2WA-MRC"'Q )\;#)'#_Z]Y4X0E%HX21L M@$]:PQNE7_R<],N?D_Z;'WZZ5%[I5W[X!)*C)W9^SY%1E2Z1XXM>FBXN'7;' MGW5JDD2G5*!]T-=/AA-]U)#E?WLTBBN-8J=1_*1&0BO3 4S=T&E9,4!]0)S1 M*>-,;YOBK:#L.4K;W=;C;AAWP]#L\'HW,EJNNSI<1\(XWEVW9UNWLJWKM>T6 MUB!68'ID(A>"_=-<"PJ.[HYP' ][_0,M)]T#+3&)\/#0[$-&,NQ%AXR7AXRD M/PSQDX;W*L-[7L/_D&NJ-,O1UVO(IJ!\@=*O./MO)'0'E48#KY7W8%J+G*-D M3XB"'*A*4J?6S$0 E\M"S8<&?#AD1RO^8X MP6'=OL-72)&29%?^<%]\D2$-ZQ[G1L,2EQD'N>'EVK=VYV4%ORPOT+_H5FXI MU]LVJ8))+8B\D63!=>O!T?^6+L^(:I,ON.Y0V-^BFKQV+K/E2IN=N_B^8LMJ M9^_D7&^H@E;>K-L([KX5;]85'OM+O"TCS(AU2H@5Y3:%@:WIE -B(C$?HCDT MNJYWD%<#;RVI&P3NO]A/UXR#J7#&]L^BG5?JZH\';\4K=6W'SQ?WTBNU.YK> M6O%A18]]7B!U12?^BN[WPOU&MO$"J4LJP6_$"Z2NOH2\BA?.2I[G^VJP\X5L MNO7"G9;DII2NA"[>_JO9ZD3FU)U#/)H_Q\<3W#!_@8\OB_.6FKXX_KFF:L%$ MCCC,C:CPJ&]JE2I.5(J!EDOW?3Z5VKQ*N-L4Z R476">SZ74#P,KH#K7&O\' M4$L#!!0 ( /:I!U% D7$A,P, #@, 9 >&PO=V]R:W-H965T.D M:QVYAR>NKP'&XGN""[$R!AW*F+$[/3F-NI:C%6&*H=041'WFV,M PLBG) \E9=L\06+@)J:+V2I,+^P M*&P="\)<2)858*4@2^CR2^Z+1*P %$\UP"L WK8 OP#XSP&-#8!& 6ALZZ%9 M )K;>@@*0&!ROTR6R?2 2-+K<+8 KJT5FQZ8ZHB M*1DS3G2!X8AS0J>H3HX4\!G.DE"=(;4\Y6@687> DB2IV%.[-U<#V-W9@QU( M*%S'+!>$1J)C2R5+D]MA(>%X*<';(,&%$:,R%C"D$485^'X]WO\7?EB/#VKP MMDIGF5/O,:?'7BWA ,-]\-U/X#ENNRJ>>OC7G"JXH^&>4P$?; VO]#[\/^\G M;_:^EDN_/)^^X?-?>SY!';:U^;F,D8.,"85UT.V9XH13B9GX6:.H42IJ&$6- M#8HN<8XT1W6MAFQ*D]_51W;)$1@.?;O/>VZC';0Z]GRUDA56GJ_SMFHU?&GE MM0/_&==)A56K[;BEU5JPS3+89GVP3#UE<#O";(R\+GM!21A\D'JV2D6M=ZAG MZV5V'>=9G5[:'*S8K(D[*,4=O"+_\ =&28KJ45 ).*=;%:9=>FI_D,*XSM/; MY-1&_RW7T0&;0$0>!*@^"F;D08NH?&7JR1I-PU(G;.71=-]:ENL%VZ8LKO?D MR_LHA7FZE%W_/0M33Q8X&PMCKS0V&?*I:4$%A"RG[H^_B1,"E)!-M7WH"\3._.;# M\YMQIK\5\DE% )K\2.)4#5J1UJM+RU)!! E3%V(%*;Y9"IDPC4L96FHE@2T, M*(DMQ[;;5L)XVAKVS=Y4#OMBK6.>PE02M4X2)I]'$(OMH$5;NXT9#R.=;5C# M_HJ%< _Z<365N+)*+0N>0*JX2(F$Y:!U12]O:3<#&(D_.6S5P3/)0ID+\90M MOBX&+3OS"&((=*:"X=\&QA#'F2;TXY]"::NTF0$/GW?:;TSP&,R<*1B+^"^^ MT-&@U6V1!2S9.M8SL?T-BH#\3%\@8F5^R;:0M5LD6"LMD@*,'B0\S?_9C^(@ M#@"HIQK@% #G)< [ W +@-O4@E< O*86_ +@-P6T"T"[*:!3 #HF6?GIFM1, MF&;#OA1;(C-IU)8]F/P:-&:$IQD5[[7$MQQQ>H@IC-E<2)8Q@EQ)R=(0D&I: MD2\$!9F&D ?D0"SC3[H@WWB A$1(*,$ R,<):,9C]0F1C_<3\O'#)_*!\)0\ M1&*M$*/ZED:7,\-64+@WRMUSSKCGDCN1ZDB1ZW0!BPK\I![?KL%;>%3E>3F[ M\QHYM0I_7Z<7Q+4_$\=V[ I_QHWAM%<5SJ]9O_XUZS?U\#LF$4[/6K^MAT\@ MV,%?6C]*A5M2US7ZW-=2U_#SN09 MC[RS'J58,8'&&M914;T@/Y.8LSF/N7ZN*H!<9=NHS"Z.S="W/;]O;0YIT43H M]E3(L3VO%#H*R2]#\FM#FL$&TC7@K1.(,.7_5A;A*-?A'UBF7J_=.?9O[)_X M1QTWH\)1J*>ZG%[;?:'K^E27T^G9M#K8=AELNS;8!_8$"T:^WT$R!UG'B$ZI ML?-..-HM/>J^/4>[ISG!;YT7B?N)T)&WO=+;WAO0KW=:'9T3]TZ%NO8Y]ZB] MOS[MUU"&_$<>5U^6$@^93-FSR6P#.M&#ZYJ^$T)19^^3\^:4NBET'N7#/YN/ M_9U W5?F8P8*F PB2I7TCI_6=/,L2 M1[-H%*L)^(;-8ZC,3$4'=MRSJ=DW5_JJ[HJIN>,Q(%DPSEVM3/$P'I@,<0:[ M!=QODI5]+Z;OI1G3?3>F/V_'S;+2/;T];?NT@UD'LP!686C&/$4"L4YU_FU5 M[I:CY)49H%[LC^CEF%;L3^CE=3XH[M7G&ULS5C?;^(X M$/Y7+'0/N])>B1T2H*)(%&BOJ^.N:K5W#ZM[<,E HB8Q:SNE2/?'W^1'$]BD M;I;N2?2A),Y\X_%\GAF/1ULA'Y4/H,ES%,;JHN-KO3GO=M72AXBK,[&!&+^L MA(RXQE>Y[JJ-!.YEH"CL,LMRNQ$/XLYXE(W=RO%()#H,8KB51"51Q.7N$D*Q MO>C0SLO 7;#V=3K0'8\V? WWH+]L;B6^=4LM7A!!K (1$PFKB\Z$GE^S00K( M)/X*8*OVGDFZE N(*I"/\./.U?= 8=XL&*)Z&^$]O?H%B0D^I;BE!E_\FVD+4Z M9)DH+:("C!9$09S_\N?"$7L U-,,8 6 M078!<#^'M![!= K +VV,S@%P&D[ M@UL W+: ?@'H9V3EWLVHF7'-QR,IMD2FTJ@M?2_P:($Z/ MD<*0/PC)TQU!)E+R> VXU;0BOY(%5QHDV9-)-T_LD3M0P.72)Y.UA$P\&[[7 M8OE(;A/\@KMC[^.'&6@>A.HC*OUR/R,??ODXZFHT/S6BNRQ,OMX738Y(WWS7[UOMFOS? 9+!%.F^ '5-AE&-B9/OM'PR#;U_OO?VH?0T+[ M/":'H*^_HTYRHR%2_Q@LZI46]3*+>J]8=,MW>1AJ@?GZ6Q)(("*;.XB?0.GL M8Q-MN5HW4YL6HJ-NVZPJNZ0FJ[KO,JU]2JC@J6<;V+Z=VD9)3\B^40#Y1) MR"69*(6C80#J$[F),37O2?V,/4+WCC/T1'8)995-[.A]4D"=QC16.VO\#E5?!,WCH+6Q$/"B.@VW8JVH>[9T*>U55H^:R]D>2KH^(%?'X3A'L M_L@FK\V-1UBS,MO*M)@,JTH--=>:XSB\%'&BR+7@(5E@I]N&OJH:T/ZIT%=5 M#3KXF?29E;6@KRH>U%P]IO/['Z7/U'-469Q9)T(2J[(VHT9?3-;8*JZY!K(4 M$1X:EP%N3\7#U -1@#]:Q-#$5Z'W\%QX>-H]-*E*VLR7F;\L=KJ[*^+CNJI@P<_X_MBF_+/2:NO+51X& MU#J[I568%I-8Y]<9Y6AY$SS)[C^_&Y_2\QEM&)_3\ZO\GK=2GU\[+[A9\^_@]0 M2P,$% @ ]JD'47@Y0/\( P 80\ !D !X;"]W;W)K&ULS5?;;N(P$/T5*T^[$B5QN"- HK2K[:IH$>SEH>J#"0-8C>VL M[10J[<>O;6@"TM;E!947XMN<.9Z9<#*]C9!/:@V@T9:E7/6#M=99-PQ5L@9& M5%5DP,W.4DA&M)G*5:@R"63AC%@:QE'4#!FA/!CTW-I$#GHBURGE,)%(Y8P1 M^7(-J=CT QR\+DSI:JWM0CCH960%,] _LXDTL[! 65 &7%'!D81E/QCB[C7N M6 -WXA>%C3H8(WN5N1!/=G*WZ >1900I)-I"$/-XAA&DJ44R//[L08/"IS4\ M'+^B?W&7-Y>9$P4CD?ZF"[WN!^T +6!)\E1/Q>8K["_4L'B)2)7[19O]V2A M2:ZT8'MCPX!1OGN2[3X0!P:X_H9!O#>('>^=(\?RAF@RZ$FQ0=*>-FAVX*[J MK TYRFU69EJ:76KL],#<)B5S(8D-#AI*2?@*3-2U0E=H M+EG2=@QU0LT*<; MT(2FZG,OU,:]!0F3O:OKG:OX#5??* MA3M=N%-'H553JF MN'%IE5,J'FZ>K7+\R#@ZH71*_<-^G3JQ=,CVXTO'B%3CG=(I116W+ZUT2A'% MG;.5CA\9USRE$QXT3+;Y'!.YHERA%)8&+*JVS,LH=_W<;J)%YGJHN="F(W/# MM>F!0=H#9G\IA'Z=V+:LZ*H'_P!02P,$% @ ]JD'40AQPZ>- @ @P< M !D !X;"]W;W)K&ULO55=3]LP%/TK5L0#2(Q\ MMBFHC32:H3$-"=&Q/: ]N.E-8^'8P79:^/>SG9 %&BHV37M)?)-SSCWW.'*F M6R[N90&@T&-)F9PYA5+5F>O*K( 2RQ-> =-O9VF?7(IGR6E'"X%H@69> FTPJO80'J MMKH6NG([E14I@4G"&1*0SYR/_ED:&[P%?">PE;TU,I,L.;\WQ>5JYGC&$%#( ME%' ^K:!.5!JA+2-AU;3Z5H:8G_]K'YA9]>S++&$.:<_R$H5,V?BH!7DN*;J MAF\_0SO/R.AEG$I[1=L6ZSDHJZ7B94O6#DK"FCM^;'/H$?SH#4+0$H+W$L*6 M$+Z7$+6$R";3C&)S2+'"R53P+1(&K=7,PH9IV7I\PLRV+Y30;XGFJ62.98$^ M/=1D@RDP)1%F*UNK)[2 K!9$$9#H YKSLN+,0GB.=FB'*2A,J#S2T-M%B@X/ MCM !(@Q]*W@MM:B %W@!]OI^>0J;I MOJ'[IP/T]-W=7]-='7*7=- E'5B]\$^2OL+B7@>WI-!/^^ZKYJ)+!:7\N:=S MV'4.;>=H7V?3+3,+^&UA:$L:J;&5,F?&)HE'XT@'L.DGOXLZ]:+3R4M4.H * MH\#O4"^FB;IIHKW37.FO\*D-#EW4^LM"=U=0+D'LRVK4J8_^\RZ-N\[C?[=+ MC=2HE^QH$DV"5[NTBXK]()H,YQ]W/N._\WF,&4/P257^DBURT+_)4$8@'Z? M"W.N=O_=Y!=02P,$% @ ]JD'46"PL8#_ @ PH !D !X;"]W;W)K M&ULM59;3]LP%/XK5L0DD#9B)^D-M96 #JW3T!"7 M[0'MP:2GQ"*QB^VT\.]WG(80: A]@)?$QSG?N7QV/GNX4OK.) "6/&2I-",O ML79QX/LF3B#C9E\M0.*7N=(9MVCJ6]\L-/!9 :F#S+N'X\@E2M1A[SGB;.Q6UBW80_'B[X+5R O5J<:;3\*LI,9""- M4))HF(^\0W8P8:$#%!Y_!*Q,;4Q<*S=*W3EC.AMYU%4$*<36A>#X6L(QI*F+ MA'79[:<[7Z 65#'1&V@*@$1 4S MZU8*'B;<\O%0JQ71SANCN4%!9H'&]H5TZWYA-7X5B+/C8VX2\OT^%TN>@K2& M<#DK;/M(+B#.M; "#/E&+N'!YCPENQ.P7*1F#^>N+B9D=V>/[! AR66B&$;I8[ZO?Z$KF5K(S+^61&&5*"P21>\EBMT GA,UK< Z M5+<(Y<1@.>YUNA'VNZP3O>DUH-&@_])KTN 51@&KO%YT$U7=1*W=3.42C$5) ML81;$BMCW0\M&IN)-@I@E-)7O:R=.C4GVEQAIZJPTUKAJ4*URE.NR:$QD-VD M^&=\)5.)N^_Z%&W0;:O:K;)T/W?[]*I$O=9V?J\D:).(!5F CC$#ZGP3V>U1 MHGU*O[14TZ^JZ;]#KH1'6L>H[ MN=./^L&KK5RZU?=RCP51OWD_LYKXL_=KW8)F]JQ][)/%CSVK'_M ^6.;FL5Z M;$,SFMP&(7TM''[MP'77(]RVMT(:DL(<<72_ARNEUS>.M6'5HCB#;Y3%$[T8 M)GA+ ^T<\/M<*?MDN&.]NO>-_P-02P,$% @ ]JD'48"-J6ID @ . 8 M !D !X;"]W;W)K&ULS57+;MLP$/R5A9!# K31 MPX^X@2R@L1&T10T$<9,>BAYH:641H4B7I.SD[[ND%,%!8B.''GJ1^-@9S@L58T57.*-!M/4-=-/5RC4;AK$P?/"+5]7UBV$6;IA:URB MO=O<:)J%/4O!:Y2&*PD:RVGP.;ZZMV7[#+9^3XX!X> "0=(#DO8!! M!QCX1%ME/JTYLRQ+M=J!=M'$Y@;>&X^F;+AT55Q:3;N<<#:[9ES#/1,-P@*9 M:312B:R!TSE:QH4Y@X^P4!*?8,'T W75=2,+ [\66*]0_Z;=N^4<3D_.X 2X MA!^5:@RCB#2TI,Y](\P[)5>MDN2 DF^-/(=!] &2*(G>@,^.P^>8$SQV\/C3 M2WA(GO3&)+TQB><;'.!;MFT-JH222R9SS@1E:*QN6H?JUJX"F(72N;CU+KK6 MI/;.&ZVY7+L6X^:(G$$O9^#E# _(:6M0MS4HFP,.MQQCS^'.[S8;38:3) VW M^T:^CKJ(D^&DCWHA<-@+'!X5^!VW*"#N.^-(SJ.>&PO M=V]R:W-H965T\ J9/=ER46&E3[%U9"<"Y!974#3PO=DM,F),F=F\MTH37 MBA(&:X%D7998O-\#Y'?+6/C;QW^$FCD8(U,)B^-? MQ^GT(0UPN/YD?["YZUQ>L(0EI\\D5\7"F3LHAQVNJ=KPYB=T^42&+^-4VB=J M6M]9X*"LEHJ7'5@K* EKW_BMJ\, X$_/ ((.$/PO(.P H4VT56;36F&%TT3P M!@GCK=G,PM;&HG4VA)E;W"JA3XG&J?0>4\PR0%O#(-$*%"94HEOTR [ %!<$ M)+KNMF_T_M-VA:ZO;M 5(@S]*7@M,1F^@DS#?0/WOW^%N[H$?1V"O@Z!Y0O/\&UU>^0U!<1W?>KO:,G+ MBC-MR LAPCY$:$-,SX38X$;?G )!,!TM6 N/+=QTWR&=S1+W,"S*B$OO\474 MM! 9R%%9+4$TB!G,CV2-N,3CNJ)>5W11UP-A1'_5.=IS M/OYY12R,\MR:3ZM[2SF? MBE*G/&=+B529950^7+-4[&86MO8W/O#-5IL;]GQ:T V[9?I3L92PLMLH:YZQ M7'&1(\F2F?4'OEH0QSA4%I\YVZG>-3*EK(3X9A9OUC/+,8A8RF)M0E#XNV,+ MEJ8F$N#XW@2UVIS&L7^]C_Y753P4LZ**+43ZA:_U=F9%%EJSA):I_B!V?[.F M(-_$BT6JJE^T:VP="\6ETB)KG %!QO/ZG]XW1/0-V2NP^W1[@UZ^>(5>()ZCCUM1 M*G!04UL#.)/"CAL@US40<@+(VS*_1*YS@8A#G 'WQ;C[#8O!'1MW/'GL;@,E M+2^DY854\=P3\?;E7Z E$*0?LX"^O@-S]$:S3/T[DLQMD[E5,N\GR:HL;)]E MB,,Z3E#%,3OT;NXY;@0%W_6I.K9R)[[KME:/0'HM2&\4Y#NFU!5LN[C,RI1J MMH;= LH1:+*C(RJ)%^+#T1BP@@$Z,1F3%N3D)Y,-[X&M2->(9X44=\Q@5.=P MCIU.9IWG9QWW5!T_$>]-H#ZEV E#[X#X0;/(\8:9QYW,8C(*="&RHM1,]F;= M0%8BT3LJV5E-Z&06N[^A"9U@XG'%_(4F'$N>BUW_L <#5@X.3K2@TT4\+HS_ M) F'$\#C!B2ES+DNS^Q IVTX^ T=Z*0.AT_5@?!XOC$^ZL" E7=*?G GDGA< M)1GWO2*1YQGHC[)E#_O!)XT0'U0T:3 M0^;MWD'8?(6\IW+#2*$WB_,<;O]O)K_!U!+ P04 " #VJ0=1#$.*U?T! !I! &0 'AL M+W=O@?-LX;M<8/VH5EK9]&1I>0U2L.5 M!(V[.;F+;Y>ICP\!WSEVYF0/OI.M4H_>^%S.2>0+0H&%]0S,+0=R)7Q M>^ D8TH//-T?V3^$WETO6V9PJ<0/7MIJ3MX3*'''6F'O5?<)AWZN/5^AA E? MZ/K8V0V!HC56U0/855!SV:_L:=#A!!!/SP"2 9"\%I .@* <[2L+;:V897FF M50?:1SLVOPG:!+3KADO_%S=6NU/N<#9?,,%D@;#Q# 96:!D7!M["1Z7*C@L! MEX/ORCD?-BNXO+B""^ 2OE6J-4R6)J/65>+Y:#%D7?19DS-9O[1R FGT!I(H MB9Z!+U^&K[!P\-C#XYM_X=3U/XJ0C"(D@2]]C0BC!C_OML9J-V>_7DB1CBG2 MD&)Z)L51SN>TZI&S@/2W[I"GR33.Z.%4D?\$]471DT'PE_ KTWLN#0C<.5@T M>7=-0/>#W1M6-6$VMLJZ20O;RKT%J'V .]\I98^&'[?Q=%I;)4AYT+1-FU8U[?9BV@L'CF#58&:;I/OV M.QN"TH1$W1OPP_WO?G?&QW@KY+,J #1Y*7FE)DZA=7WGNBHMH*3J6M10X4XN M9$DU3N7:5;4$FEE1R5W?\V*WI*QRDK%=NY?)6#2:LPKN)5%-65+Y=P9<;"?. MR-DM/+!UH 8(.*3:>*#XVL <.#>.$.-/Y]/I0QKA_GCG_:/-'7-9 M405SP7^R3!<3Y\8A&>2TX?I!;#]!ET]D_*6"*_LDV\[6.^)[OC<@ MGY^7+R!%^OY2X6I*^*WU?%M_Z"_ZO*K^E*:8E?WN\S,8(^1F!CA"=B M[$I;-S(M\$,[KP;712Y*#, MG:6G26W'^X0 M4704+/"C Z !F^@$3]SSQ&=Y'H6F?(@G/CJV^#8,#H &C*+0.R!R]^Z_Z;W? MJ%RS2A$..R;M!9"R/JA!*D?F]9IG:)6VRZJ7A@X M"5:Q36T3DOWZ'1N*LI546BZ"/\YY>=Z#C^>MTD^F1+2P%94TBZ"TMCX/0Y.7 M*)@Y5C5*VEDI+9BEJ5Z'IM;("I\DJC".HH^A8%P&Z=RO+74Z5XVMN,2E!M,( MP?3N$BO5+H))\+)PQ]>E=0MA.J_9&N_1_JB7FF;AH%)P@=)P)4'C:A%<3,XO M9R[>!_SDV)J],3@GF5)/;G)3+(+( 6&%N74*C!X;O,*J+^ M^$7]L_=.7C)F\$I5OWAART5P&D"!*]94]DZU7[#WXP%S51G_#VT?&P60-\8J MT2<3@>"R>[)M7X>]A/A00MPGQ)Z[>Y&GO&:6I7.M6M NFM3K'>6B)RFF'>4]PV1'$!PB^-O(8IM$'+V9*IM'\+1*2 MI<%7//B*O>KTD"\G-.;K0FLFUTCGRD*V@_VX)=OYY8N6Z0(>OI$DW%@4YO$- MH.D -/5 R0&@[XVK#Z@5=!Z!;:B*+*L0J+5@351VK'B=ZLRKN@[;I">G9R>3 M))F'FQ&<9,!)WL2Y95LN&@'R7RRK($/@QC14D::FBN$6=X2^B6Z36G0U[A MBC*CXQ.2T%UC=Q.K:M],F;+4FGY8TEV(V@70_DHI^S)Q_3G&PO=V]R:W-H965T$ ]NFMCQ/??8QSZ]'BV5OC4%@"7WHI1F'!765L=Q;+("!#,] M58'$+W.E!;/8U(O85!I8[H-$&:=),H@%XS*:C'S?5$]&JK8EES#5Q-1",+TZ MA5(MQQ&-'CJN^**PKB.>C"JV@&NPGZNIQE;"=N*C.E;EWC/!]'B6,$)63603!\W,$9E*5#0AX_UJ!1F],%;KX_ MH+_SD\?)S)B!,U5^Y;DMQM%A1'*8L[JT5VKY'M83.G!XF2J-_R7+9NSP*")9 M;:P2ZV!D(+ALGNQ^O1 ; 8BS/2!=!Z2>=Y/(LWS#+)N,M%H2[48CFGOQ4_71 M2(Y+I\JUU?B58YR=7%N5W>ZY>>7D3 D4VS"_7'O$?R*7E6L:\O(-6,9+\VH4 M6\SKHN-LG>.TR9$^DF- +I2TA2%O90[Y[_$Q\FU)IP^D3],@X(=:]LA^\IJD M29H$\/;;1=CW>/U'\,YE!M+MCC_F_.T"Q ST]T"*?INB[U/L/[;.!=.P;9U/ MM&9R ;C1+9FMR.:X*5OY[I,ETSGY]A$AR;D%84*$#EI"!\$Y3VN=%9B&5)IG M0-2<9$H()&3<$FP3.8Q'DZ27)"\"S 8MLT$0Z9.2>]>6V=HJO7JZ(L,VS?!Y M*'+8$CK\SXJ$\0X/=@ARU!(["@(]60*:=.Z3/ \1Z(8ATK ,H)T;N/6_4Y;+ M!>'2@@9CS5;K"Z/17:>"IAVQ]!_V!V$SA0:&?Q%X].AY")1V5ITF_UF@'8##1P6*-^I9 M 7KAJW:#=E=+VY2V;6][,SAIZN%N>'.MN&!ZP5&T$N88FO2&>!1U4ZDW#:LJ M7QW/E,5:V[\6>+L![0;@][E2]J'A$K3WI&PO=V]R:W-H965TW,U'LJ-R9F N2)ZPSE5VRGDLAQY;6^_<I'TY;0?6P&G\9%#J@S6QH:RD?+#" M33+R LL(X0KR'.+A#S^[$"]VJ0[8V3 F:C^]&F7B ,# MQ#EN$.X,0L>[_%_%,2@)C1XEX)H1NF\6A#MX+E/!>]<$J\ AMU3->$?M%,.*G5#0Y-8 M;H2I.FN]6P^F2=6.G]6KJ3:C*F5"DQS6:!JT^OB"5#4H*L'(PC7GE338ZMTR MP^$*RBK@^5I*LQ>L@WI&PO=V]R:W-H965TB1M-\!^_$A*%K5.IN2L _R22)3.N9?W M4(?T'1\9?Q8)(1)\S6@N)EXBY>[>]T64D R+6[8CN7JR83S#4MWRK2]VG.#8 M@#+JHR 8^!E._PEJR(_+1;^#TE1U&[!GHJ:\:> M].(%.B-"220U!5;_#F1.*-5,*H\_2U*OBJF!]>L3^T]F\FHR:RS(G-$_ MTE@F$V_D@9AL\)[*#^SX,RDGU-=\$:/"_ 7'\MW ]%>2):58)5!EN;%?_RU M+$0-H'B: :@$H&\!O3. L 2$70&]$M#KFE*_!)BI^\7<3>$66.+IF+,CX/IM MQ:8O3/4-6M4KS?5"64FNGJ8*)Z-57##?]EGRMXT!3]'\4(J]42&K[PW&K18C>ME@?. M<;XE6G.P?@'U]Y;XQ0P_'#&/P>=?%25X)TDFOC@2ZE4)]4Q"O3,)U5FD"M@'"+-8;D"D;27AQ;!*:.B_5)#O4_:Z*=7<==8>!]?# .?V"]D"$3/,MX'IO M5(:](SQ20=\TFJB;L!_Z%4NB*S1HN&5 M*&*-&;G/M/_-!1;QB3IQL=H&I53_\&4$L#!!0 ( /:I M!U%DR%0B;@8 #4D 9 >&PO=V]R:W-H965T4N! UB3G;P/9T/_Z< M$.*\&">TN_1#2<(S8WMF_,QXR.66\6>QI%2";W&4B*O>4LK51;\OYDL:^^*< MK6BBOGEB//:ENN6+OEAQZ@>94!SUD>-X_=@/D][X,GMVQ\>7;"VC,*%W'(AU M'/O\Y89&;'O5@[W]@_MPL93I@_[X^RQ;O%K,HR_H+8O^# .YO.H->R"@3_XZDO=L^RO-%^2F M^N8L$ME_L,VQ3@_,UT*R.!=6,XC#9/?I?\L-41)0>LP"*!= 705P+H#K N2 M ,D%2-<1W%S [3J"EPMXF>UWQLHL/?&E/[[D; MXBE;:THO,79FT,G"8I)'U M(+GZ-E1R1>*? 7Q\F MX.RG=^ G$";@RY*MA9\$XK(OU1S3D?KS?#XWN_F@ _.!X"-+Y%* :1+0P"!_ M:Y?';?)3N[QGD>\KVQ8&1GL#WR"KPM_7R3G SGN '.28UO,V\4EG<3@R6>-M MH\]>/7K%EK@(5ISIPX>"5?%JL(XH8$] E*)S7HY.NHM.RW"D&(YDPY$.>Z,\ MA,F+.TU>IBEE\\T8CK!:\Z;L*Q-H.*R"IDT0@4X--#. '!<6H,IRW6*YKG6Y MGUA"XU7$7B@%?WVD\2/E?UNLZ!5JO5,X;5 ,-["O8IU./!V,K5+5 BRXGT@U MX)EB)K'T.17O3+RT4^N63.HYZL]LTV$QFZ%U-C,_Y&#C1VMJF)%I%L.&8_&A M.8R*.8S:PQA\SL?NX%GHZ.3AG,*WL)2MX'?;DKFJLD?=@5O;DB;0$-:V9 ZJ M;%P(O=J>-*B"$+MFYT&DEXRL2[[>^CP &RIDF"S BO*0F?.:70T!+]3GPN8% M3<,06W55JH&$2:5:JC)SSA9)^"\-WN]B81_NQB( -VQ%AJ5 SSW8!37-4=XA M5'61FOQA!_9O;!OP'_BB=J^*>_ YZ<234/,O=$^RFS0S0^^(T.)I$2[ F0JQ M.4VDB22G+0J1>^XX/]OFIFD2J*F4 K#'. MQ #"PUHZF.:@2M) =54S@ZHA&9BY"VF"1F\EZ+0.RDWBIV$H )-+53?)I9_8 MB!LU*1D-&L3="35M0U47KXD;V8G[+@W=+A&KB1F=A)B1)F9DY]&C(M9K6G'D MU2.V"<+U F9J 'EH4 _8)FC@' I8S?;(SO8_,&";=3V$S8#M@IJVH:J+UXD' MV0\)=S>?NP6LSBQH=(J Q3I=8'NZ."9@& MFIE0V$-FKV&=QK#]*/+C0A8;#A)-CNV$FK:AJHO7*17;4^HGEGR8[IL%1Q\P M<:GAU1*%\ ]R4U^LZNRH7G(VM]C37G8SOG MWX?B&3QQ9=TPD92K,\#A2=DU.>?$/B>=-;#]^%!8*@@W84!5\?\2TLC8IFK1 MY+2<0XA.+,2>6#IV/VY:U*#6[@?1Q$]>UX,R1VW>'F[2,*GW?6V0ZE0U39,W MT_2!O7Y\GX-H4B>G:>.7^OAV4C_ZH'W3HM!M#7!-Q^1'T?'QO1"B69J3@<90,-1C0MG!M!@=.CG+4W<;@MQTT@]6KP'O]"$ M;,?E.GNSH_;\ M%EY,H.'Y%%[,=F^P:/6[%VH^^GP1*@:.Z),:RCD?J$CDNW=4=C>2K;)W*AZ9 ME"S.+I?4#RA/ >K[)\;D_B8=H'A3:/P_4$L#!!0 ( /:I!U&9_TD+KP( M +L& 9 >&PO=V]R:W-H965TXW-\ M\66RY>)%9H@*WHJN*Z,,RR([/$2F5Y)N2B(TE.Q=F4ID"065.2N M[WFA6Q#*G&AB8PL137BE*3K3)F &TU*LL8E MJJ=R(?3,;5D26B"3E#,0F$Z=V_[-/#3Y-N$7Q:WLC,$X67'^8B;?DJGC&4&8 M8ZP, ]&O#_8OUCOVLN*2)SS_)DF*ILZ8P<23$F5 MJT>^_8J-GZ'ABWDN[1.V3:[G0%Q)Q8L&K!44E-5O\M:<0P>@>8X#_ ;@[P,& M)P!! PBLT5J9M75'%(DF@F]!F&S-9@;V;"Q:NZ',5'&IA%ZE&J>B.2FI(CDL M%8]?X#/!=P6^YWM'],S_&]Z_/B,G: \[L'S!";[[UXJJ=_A]NY)*Z _X MSQG.06T5SS313XHX%VN.F>S6'6 MT+_NCT=MV@>]PU;O\*S>9WNQM$"R0:'[1"L92D%C^]W)4Y8JF4")HO[PCCJK M]QYW-(<]+]@S=I@T[ 4G;(6MK?"LK87@,6(B(16\:#7+ SO'1-?,84=/_WJT MI_DPQQ\/@CW-;JCWE7.TF9H/V?Q7] M!5!+ P04 " #VJ0=1--[N]!@# #!"0 &0 'AL+W=OU ]^]W=D(*-$W1JGT!O]SSW'/GBWV#C9"/*@+0Y"F)N1HZD=;II>NJ M((*$J@N1 L>=I9 )U3B5*U>E$FAH04GL-CVOXR:4<6SAF< UN('@XW:&1,3RD*(1S.Y#H>.9Q1!#($V%!3_UC"!.#9,J.-W0>J4 M/@UP=[QE_VB#QV 65,%$Q#]9J*.ATW-("$N:Q?I.;#Y!$5#;\ 4B5O:7; I; MSR%!IK1("C J2!C/_^E3D8@= /)4 YH%H'DLH%4 6L<"_ +@'P+\5P#M F!# M=_/8;>*F5-/10(H-D<8:VWWL)/Z_&=&KR+ M62U3V]RF=MRL)?R<\0O2\LY)TVOTJ^)Y'WQZ-+SI5W0]ZOH#=[V;VIS_@<4!(\$H@2L15G^4X9VSOI++E^;UNSZO. M9Z^4TJO/9R:#")\0DDJ&Y7":J9"DJ,T*.ZL2DO/U=H0T.A<'I3$YQFCVAM%> M//TRGO[["GO':]^_V^=WB( M[LY3E8!F/[%/X#--WMS<4+EB7)$8EDCI M772QM&3>+^03+5+[("Z$QN?5#B/LL4 : ]Q?"J&W$^.@[-I&?P%02P,$% M @ ]JD'44]A<\:T!0 Q1L !D !X;"]W;W)K&ULO5E=<]HX%/TK&O9CTIEML"0;2)V8Y%@A*>;\I)@T+WWZ.CXZ,KNKZ6ZUW/.#7I(DTR?MN;&+-ZUVSJ> M\Y3I8[G@&?PRE2IE!B[5K*T7BK-)'I0F;1($G7;*1-8:]//O;M2@+YR/5I"[>>OK@5L[FQ7[0'_06;\3MNOBQN%%RUJRP3D?),"YDA MQ:>GK3/\[C(,;4 ^XB_!UWKC,[)3&4MY;R^N)J>MP"+B"8^-3<'@WXH/>9+8 M3(#C6YFT5=6T@9N?G[)?Y).'R8R9YD.9_"TF9G[:ZK70A$_9,C&WMB;-1MH7BIC4S+8$"0BJSXSQY*(C8""-X10,H TC2 E@&T:4!8 M!H0O BC9$1"5 5'3"ITRH/,B .]BJ5L&=)L&],J 7KZZQ7+D:SEBA@WZ2JZ1 MLJ,AF_V0"R*/AB44F=7NG5'PJX X,QC*-!4&Q&@T8MD$#65F1#;C62RX1F_1 M9_Y@EBQ!1R-NF$CTFW[;0%D;W([+$N=%";*CQ!_+[!C1X#=$ MS]+Y4PCS59+_Q9 M1SR&K#C'=K(;VX?&/)'@"51-FLL]4V39$YA=:=H@M4IOI-(;R?/2[]+;UVL8 MCJX,3_4_GF*T*D;S8N$N+L#-D9R"QX*"N3;,<+10X/O*/*(C_6W)%$=3N'7> MH'^1AZOW19DH+V-W@]6@VZ5!T&^O:M"%%;K0B^[3,AUS9?&-ER*9 L:)1Q\ M> )H/#)Z'VZA">N11!62R(ODEF=\#109KM*Z@O[H"#URIK1GO3H5CHY_O;2& MW5IQ(Q2W$D%RG(@9LYNR9U$^ENK>C+.?A&/(/?J^#WO/"';"$,K'FNN$VB MDHI/ZCRZMT4EK6%\M#TL]#!^4D$^\4+^#/*TMTL,GJ&@Z:D#Z,] ZZ1: M0/Z.P&>3P(';<0-OKJMLPM-,3$6<$X[.9HH7(OGZD5M+\%D?WMC8\8]W6NQ\ M'1/OK*ZEUOG*%#4>H2N-%70.M;LK::IF[*P>^[T^%\>U9%DC%IU'X_ +#HC MQGXO/9<*8J BMF"Q?4;P'F99//^PD'@N<.P4KF:SLV@_!?85!%R" !"30A'GB[(<$/YYYXFR(X%=0=)ED4]&1 M3]!DH]_T^Q)LTW)IYZIXS,4J7_1QA>U&Y^G!4KX7FS]\+C@.O (BS,.*W ML#N3MP\B@SX,NM59^9V3Y9&R5B*_Z8Z7E=RU!F>[;EX;IFO\' YV=)9YS4W[?!H>$M(0&Z MX9DH,TIZ@'Z-.E^D>WSQU<[&V\T&G.K&3#M; MHP?HZ:@S,NKOZ5Z/Z6B+:=H]VESWMKC&>+>JG>U1O^UAX/J.S43&UDV(#IT[A0=HZT+G5J&_K7LM MHB_+.L_LXV2GJ$/G;Z'?W^Z6X^+11A.6G2F%] L;SPA]#=@K\7RAW#[F2$- M7^Z=ES6C2"?:6HOVQNL&^X+K(U,@:/OP<@IQP7$7$JCBG5%Q8>0B?P,QEL;( M-/\XAS:+*SL ?I]*:9XN[$N-ZLW=X#]02P,$% @ ]JD'43TVDCQG P M" P !D !X;"]W;W)K&ULI99=;]LV%(;_"B'T MH@7FZ%NV MM 8KM8BQ4+FG:[IF7:(BJ1'DG%W7[]#BE%L2E:";8;6Z+>\QX^ MAQ1UYB\415EY$$@V=0U%G_?DXJ?%E[H/0]\I8=2Z0%_ M.3_B WDDZOOQ0<"=W[OL:$V8I)PA0?8+[RZ\W82!#C"*/R@YR;-KI%&VG/_0 M-Y]V"R_0,R(5*92VP/#W1%:DJK03S..OSM3K<^K \^MG]X\&'F"V6)(5K_ZD M.U4NO)F'=F2/FTI]Y:=?20>4:K^"5]+\HE.KG8*X:*3B=1<,,Z@I:__QSZX0 M9P'@XPZ(NH#(#DBN!,1=0/S6#$D7D+PU0]H%&'2_93>%6V.%EW/!3TAH-;CI M"U-]$PWUHDQOE$2839#JTX4Y0=""LHD6B"?B.P"C J M%7J_)@K32GZ X>^/:_3^W0?T#E&&OI6\D1 LY[Z"*6ECO^C2W[?IHROI8_0% M$I82;=B.[!SQZ_'X;"3>AU+T]8B>ZW$?C1I^;M@-BH-?4!1$@6,^JS>'A[D+ MY_]EW_SG[!?%B/O-$1N_^(K?1\HP*PBJS"8H8!/(VQ';I+=-C&URQ?:NYD+1 M?[ Y*?@>"?TR3_A^TD 6+"51SIW4FF;&5)]_3\LDG?M/YXLSE*3)I60]E.3Y MI60SE(3!B^8".>V1TU'D3TP10> E N*VFGQ;T8,I@1.VM4O/YV"Q#A6QA?JJ MQV:HR-R<6<^9C7(Z=HR++AOD33(+;RA)IQ;?4!(&@47HT(2IFW':,TY'&7\_ M$H'U(7E&Z8*<.J871Q:F0S2 6 ]%T9#4(8JF,S?JK$>=C:(^EO"F3F#KUJ^P MSH88]H(.)3;F4)%82[X9,[D@S'O"?)RPV;9DE!6\)BZV_+6)KX:*230X>!RB MU#J_-@Y-DEW9KF'P\HD/1AF_<86K5Q:PL[ ./8MAY5#E@7WL.$11F%L;?^-* MF$?V?O7/.IN:B(-I*250-$RUW[%^M&];[TRS9HW?A[>KT#&^UFVNZ:1>[-L> M^0L6!\HDU&T/J8*;*2R+:-O.]D;QH^FKMEQ!EV8N2VC5B= ">+[G7#W?Z 1] M\[_\%U!+ P04 " #VJ0=1I]:P-AT" #)! &0 'AL+W=OMC!\G-='Z)DU] M6:,6OF?7:/AD:9T6Q*%;I7[M4%2Q2*LTS[)1JH4TR:2(>W,W*6Q#2AJ<._"- MUL)MIZCL9ISTD_W&HUS5%#;22;$6*WQ"^KZ>.X[2#J62&HV7UH##Y3BY[=], MAR$_)OR0N/$':PA.%M:^A."^&B=9$(0*2PH(@E^O.$.E A#+^+W#3#K*4'BX MWJ-_BM[9RT)XG%GU+"NJQ\G'!"I=3=$D65=X+$I'!V RYD,UI81*NQFL5) M$S[*$SD^E5Q'DYG56A)WF3P(4\',&I)FA::4Z.$2OE&-#KXB&X=[TPY!Z.;% M'9*0RK\O4F(9 2PM=Y33EC(_0?FE,3T89!\@S_+L[_*4U7<6\LY"'O$&_V7A M3OI26=\XA)^W"T^.Y^#7&=9!QSJ(K,,3K,_Q>V-U*5[1\?CRA(8[P,2@8K<( MG88+:6"+PAWOTWF&Z[82&PO=V]R:W-H965T?!RNE'TR) M:.&I$M(,@]+:Y448FJS$BIE3M41).X72%;,TU8O0+#6RW(,J$<91E(85XS(8 M#?S:3(\&JK:"2YQI,'55,?T\1J%6PZ 7K!=N^:*T;B$<#99L@7=H[YQ>3U-E[@Q\<5V9C#"Z2N5(/;O(E'P:1$X0",^L8&/T> M<8)"."*2\:?E##J7#K@Y7K-?^=@IECDS.%'B)\]M.0P^!)!CP6IA;]7J,[;Q MG#F^3 GCO[!J;:, LMI85;5@4E!QV?S94YN'#0#Q[ ?$+2#>!O1? 20M(/&! M-LI\6%-FV6B@U0JTLR8V-_"Y\6B*ADM7Q3NK:9<3SHXFJJJXI;)8 TSF,%'2 M'HW3&\ M R[A>ZEJ0XQF$%K2Z;R%6:MIW&B*7]&4PC6I* U\DCGF+_$AQ=<%&:^#',<' M";_6\A22Z 3B*([VZ)G\-[SW\8"^]]I_Q>O-$C5S?B!S-2WH_AHHM*I =3O"U7=OQ1KNU'.[SO X.C_O M#\+'S2SNVO32).F,7J@^ZU2?O5%UP263&1[0W#"?;>B)MA3O6J3[Y::=W/2@ MW*M6E+\H)S#3G(JZ9(*NT+,O^#Z=Z4[>TFVANR8]=Q1?2 TWND"%>N&;HX%, MU=(V=Z5;[?KOI6\[6^MCZLM-&_U'TS3U:Z87G&Z]P((HH]-S2IUN&F4SL6KI M>\U<6>I&ULA95K3]LP%(;_ MBA7Q :1!+LVM**TTBM V@:BX;)_=YK2QB.W,=BC\^]E.R+K%I?W0V(G/^[S' MR3DN=ER\R I H3=:,SGS*J6:2]^7ZPHHEA>\ ::?;+B@6.FIV/JR$8!+&T1K M/PJ"U*>8,&]>V'M+,2]XJVK"8"F0;"G%XOT*:KZ;>:'W<>.!;"ME;OCSHL%; M> 3UW"R%GOF#2DDH,$DX0P(V,^]K>'D5V@"[XB>!G=P;(Y/*BO,7,_E>SKS M.((:ULI(8'UYA074M5'2/G[WHM[ -('[XP_U&YN\3F:%)2QX_8N4JIIYN8=* MV."V5@]\]PWZA!*CM^:UM/]HUZ\-/+1NI>*T#]8.*&'=%;_U&[$7$(4' J(^ M(+*^.Y!U>8T5GA>"[Y PJ[6:&=A4;;0V1YAY*X]*Z*=$QZGY@E-*E-YF)1%F M)5IPI@C; EL3D.@@6] Z@)7[O(DZO06%2RS-T@@A#3Q5O MI5:1A:^T-T/PU[V/J\Y'=,#'CY9=H$GP!45!%#P_7J/3D[-_57R=V9!>-*07 M6=G) =G[!@0V"77.Y2>2DT%R8B7C Y+&(#H58#YY(YPBJO>LDF>NI#NIU$J9 M GG5X7%4^*\. _%@(#YF('2QNJADCQ6'T\S-2@96<6!2OU_59(O-<>!N4>&X7-,P M_K^&_+UV:XZN.RRVA$F]O1L=%UQDVKWH3H-NHGAC._"**]W/[;#2)R@(LT _ MWW"N/B:FJ0]G\OP/4$L#!!0 ( /:I!U'U0=O1@ ( +,' 9 >&PO M=V]R:W-H965TX"7QY9SO.]^7^#C;"/F@2@"-GACE M:A*46E%&[(NM5T(\ZS":YB#OJUFTLQ"C[(D#+@B M@B,)JTEP&I^H0I4&J1 M3!U_6M# <]K$[O@%_<*)-V(66,%4T-]DJ@D)/&.A*1-<$:$#9&K\AQKG&=2;)"T MT0;-#IQ4EVV*(]Q^E;F69I>8/)U/!6-$&YNU0I@OT51P3?@:>$% H:_HARY! MHF[4X3EH3*@Z,KOSNJKH('!T;\HH9'J]29>;^)@TQVP;_7<79D0=*F! MJ?L]!*DG2!U!;P?!1:UK">B:<,)JAF;XV=)LT]_@#!R./3R/>6_43[/P<0M[ MS[/W]K*?5I)08UD\\%]BCZ:^1^U_CFD#3S#X(-,:G'['M&'4V^[9T),/]Y+/ MH=+.*NO;^#V^C3SRZ'-\&WN"\0?Y-G[C6SH<];<;%T>OS2/:RW^-95&Z$_H> MV^).4XH_Q[CXM0_$R0=9UP)U#VHZ^/^?"SLMV%YGQIDUX0I16)FLZ'AHK)?- M#=%,M*A<5UX(;7J\&Y;F5@5I \S^2@C],K&-WM_3^5]02P,$% @ ]JD' M4&ULM59A M;]HP$/TKIZ@?6FEK@$!:$" !:;5.14.T7:55^V"2@UA-;&8;:*7]^-E.R"BD M&5*U+R2V[[UWSSG.[FZX>)8QHH*7-&&RY\1*+3NN*\,84R+/^1*97IESD1*E MAV+ARJ5 $EE0FKB-6LUW4T*9T^_:N8GH=_E*)93A1(!::3BGG/I0(1SLDK4E&^^8.ZG9?A"GDC["YLLUK]P(%Q)Q=, MY"7?AQV YBD'-') 8Q_0? ?@Y0#O6(5F#F@>J]#* :UC 7X.\.W>9YME=SH@ MBO2[@F] F&C-9E[LY[)HO<&4F<*Z4T*O4HU3_2DF1&$$$R+4*WR&@52"_$"& M(8')[0A. U2$)O),KSW[1,T:HU:23ZCH^'U M=IF=CZE??4S]NAH>8*CA]3+XF[WTBH+R+%_S';XQ8;HAZ=:CX&F,Z0S%3_@- M]X(P26PSD?!(57Q0:-O@BA2:10I-FX)W5$WO2,/3K0Z%&X6IK!)J%4*M2J]3 M7"-;(%I8M*2P'5 M7A07QU3?9<%Y^7^KKUT(M2N3'^DF*#0U*!0I$ G#;P&DUD=9$ZHF\^ 5B9!E M:;D[ITN*8F'O 1)L,61]H9@MKAH#>\+NS0_KG5&]9#ZH=ZZRF\1?^NQ>,R9B M077'2'"NI6KG%[JL1797R :*+^W9-N-*GY3V-=;7*Q0F0*_/.5?;@1$H+FS] M/U!+ P04 " #VJ0=1Z7SC><$$ #8%0 &0 'AL+W=OK[0J5G=V'T3ZX MY$"B)C%CFU*D_?%[=0.O- MI66I90 Q5Q=B PF^60D9U;,PZ0S&F9S"9I*H]"/*6#._^J8Z<1001+G9K@^/,,$XBB MU!+&\;TPVBE]IHJ'SZ_6;[+D,9E'KF BHG]"7P=7G7Z'^+#BVT@_B-UO4"3D MIO:6(E+9?[(K9.T.66Z5%G&AC!'$89+_\I>B$ <*:*=9@14*K*V"4R@X/RIT MWU#H%@K=MA[<0L%MZ\$K%+RV"KU"H9>!E5O0 $=?@DSF7>D]^)?<"%\DVXI*,E8+X,0I!?2%WR?*" M?)J"YF&D/J/8U\64?/KE\]#2&$-JR5H6_JYS?^P-?Q0])#I09);XX#?H3\SZ MSGOZ,[.^9]"WL'9E =EK :^9T>#OV^2"./87PFQF-^7S,?5I:W4Z:*K&Q[S? M?,S[K5E]"KBJ'-JD?@2%4ZYE)[/GM%K+?TF>*)X3WK<_4)3<:8C5OP9'W=)1 M-W/4?933>)YQ&UL[^A M]7Q8]KI<)7$4L5M&[!HCGN"BEU@,9!<=%+P"\@N)0OX81J'>-WW);BT*U^ZZ MM6@G+>5FN9S[GMQMW1ZSN]U#N:,:>&4-/&,-'N 9DBTT 3/Q:J'1[L#KU6*; M>G4$F4,']63K%MG <^H6;QH$>P.;OIENKTRW]TZZ"KAW:M_A;.Z06SP MG+K!F[I!ZGB>^R:$U*YV9]N8KV$[?H6/_$?N)P_CP_'/@)X>=!#TO.!35KEB M)\-?J+J-I%FT!B:1XY"J/8\M?V[3L(E8$9_O%<'C$=GD&V1C>V@VYMB9%5-@%=]3,^&?!LVU2+:*W H> MD7L\"K9!I:)DVCLS*A4CT_[/1,5LK 4J%8-3,X6W0V4R6XS;U)Y55,KL\]:> M58S(J#'%\7HM88W>R%+$V&XE3IN$(]#JIB3 MF9GSA*JG&XG8\PBKU0:(BC'9F=MT5K$@,S?J)[6]K-Y]NPU-^J2EW.Q]N>/L M*N)E9JYLA^D"),Z3,9E+6(&46/F%%LNG5J!67,N\,X-:D2@S-[85LZF 2TRM M.(+Y>/K"CH< CC"&&'0@_(,362/6O7K3Z/9[MEL#NZ7@K(7@<=X5HS,S"9]Z MZKPN[)J.G7E(UL$]$GXGZ^R*4"&);1.='\/+V?(:&)E1:75Y0>2&^CN_QL<^%P^UMI7K0:P!# M=B+-=#]8&Y-WPU G:Q!,5V4.&;Y92B68P5"M0ITK8 N7)-(PCJ)F*!C/@D'/ MS4W4H"KJ&5&[[ 0V>)Z9\M39V(AST)@YTS"2Z6^^,.M^T [( I9LDYJIW'Z! MPX$:%B^1J7:?9'M8&P4DV6@CQ2$9&0B>[9]L=[B(HP1:?R4A/B3$CO=^(\?R MAADVZ"FY)&4PA90869,*4>2)79 +*29TE M8,=<+LB'&S",I_IC+S2XH\T+DP/Z]1X]?@7]ZR:KDEI4(7$41R_30R1:L(T+ MMK'#J[_*]A&R#53(%&S%\6SU@O#W>=XS=U[A1<.Q>F,XW*G_'H7$K[D>W?@J[. M60+] 'U?@WJ$8$!\I(^\AWI)CR6:\R9EB@RU!H'W![I";K.D2N[&&(.Z)W_) MZ--L>!Q?@@G0TK%H?&E%4SH4K9VM:/S()S@!+>V*^FWEM#(9X^6*C7@Q-9I> M7N64#D@;EU8YI>/1YMDJQX],HQ-*I_0_ZO>I$TN'[=Z_=-"D&F^43FFJM'UI MI5.:*.VR_>:8J17/-$EAB6!1M85?1K5OX?:!D;EKF^;2 M8!/FAFML>T'9!?A^*:5Y#FPG5C32@W]02P,$% @ ]JD'49VYBF(N @ M$04 !D !X;"]W;W)K&ULC511;],P$/XK5IY M&DN:= --::2U$S D1M4R>$ \N,DEL>;8P;ZTY=]S=M*HH+;B)?;9]WW^[HO/ MZ4Z;%UL#(-LW4ME94".V=V%H\QH:;J]U"XIV2FT:CA2:*K2M 5YX4"/#.(IN MPX8+%62I7UN:+-4=2J%@:9CMFH:;WW.0>C<+)L%A826J&MU"F*4MKV -^-PN M#47AR%*(!I056C$#Y2RXG]PMIB[?)WP3L+-'<^8JV6C]XH+'8A9$3A!(R-$Q M!:R DG<25WKW M$89Z;AQ?KJ7U7[8;V6^K >./$N-WC'CLHG-3;PW'DW5".7^XAH-[0K"8;:&BOX)7K$/H"O# MVUKD7#*N"O8%:S!L!5M0';!'U=\89_T;]A7VV%'>JP= +J1]36NWK-$*:\M M%5"P3YVZ9DETQ>(HCM(02:L[,5WQ&EX%6&Q2J>E8"3\ 7E^&V+^MO M8$C>C ;%HT&Q9THN&T1&#(+8C_N-14/W[^<%^F2D3SS]] S]4]=LR&9=,FI, MP_T!@WA[JNR>[<:SN0[=9G$:;D\(F(X"IO\IH+><;R1<4C"?7E#0:[R4T6L, MCRZL>RP^&PO=V]R:W-H M965T7N">5>M=&E^N:WJ9=&:K_7=H%G5NICVC9:+ M 4U3.5@6\_+L\J*_=EU?7E3W[6)>ZNLZ:>Z7RZ+^_4HOJHVOJ^O:?!ML>YG.E[ILYE69U/KVP]E/Y/TX8UV#'O&ON7YH M=CXGG2E?JNIK]^7C],-9VMV17NA)VW51F#_?]% O%EU/YC[^N^GT;#MFUW#W M\V/O?^F--\9\*1H]K!;_GD_;V8>S["R9ZMOB?M%^KA[^IC<&B:Z_2;5H^G^3 MAPTV/4LF]TU;+3>-S1TLY^7Z;_%]\R!V&IA^< .Z:4#=!CS0@&T:L'U'X)L& M?-\1Q*9!;_I@;7O_X$9%6UQ>U-5#4G=HTUOWH7_Z?6OSO.9E-U%NVMK\.C?M MVLL;?6?:38I$4Y33YN9WI.OFLO^GR7B)K_,JOO&]-=<#%ISO]VH M@\GFWJ[6]T8#]\:23U79SIID7$[U%+0?Q=O+2/N!>4[;AT4?']85C7;X]_OR M7<+2MPE-:0KN9[AW#\7XP'ACLEZHUT[)>3T8XE=;M9=^^BX[?+@G/I;H8?-MU$$!1 MUCV.7=3(1]%<,J>O,4"I/"5;U!-#Q=90$35T6#5M4MTFJ[J:WD_:1Y.1Q>N. MQ*XM,G=,&?H@JA1U[/5!G/+4,=<'*2(9ME9NK951:S_K1A?U9-8'G*DQ=5&M MNDF%S)6^N6DFF&.OC\JHXHZ]/HB2C+H&@P$ES5-LL=I:K*(6WQA*-&OE;7*G M2UUO0FTQ-9%]WK1UT;$F,E[Y9@GJN''H@U262\=V'T24($Y78X"2C 3F=K:U M/=MC$4_,#&]ZLXW:Z2PVD4-_-\*GP0L[ \Y*79<.?13),_EI-JJ9,WBZHQ)'E;5\M'^ZL2VIU[=W$NC>&.W0@EJ;,J M1@!%6,Z$8SB"D2RTR$EJ-48:M7VDC8B=S-?,T$_X94<9?_07(*^G_IWDJ;M M$4KFH;O=443D $]]T8;4M%$R_<6V^(YGZ:;/I_>2NIPQA#">$\=?"$:8S+C[ M!!#.1*G 7"74/@,:#U-M-?EZWBGPJ5FPRVYUAIQUM>GJR=K+F4M$$)5EKN$^ MBILP[YH-4*D(1"=B!0UA4:.O==T+F'*BC63\X_>E;I+?/NGE%UW'- RQ(H;P MUY=,Q$H)$M<2SXLF DA=I-)U'5 :J&))2$?">94<2I\>?MUI@\Y#W1E">><[V82K/W84*4)3X)(G&%(IG ;LMB=%X*GYD!K/I]>D,=;.3 M(41YL2O=AU4.S& K(49BDT[4?P(SN$^X#\&&,T(RX M3P!0;<8%#3P"2[4T3K4'YS+4SZ7/*1&N\0!EK' /4,84I-&^,H8H3QD#%%#&"!54QM0J$1I7(A%V3OZ7'*F;J14'-']]\F96 M*[!XNOH\>3,_\P2Z&:"0;D8PH)L!+**;F94J+"Y5#N!N!L2(S]T !;@;H !W M U28NYG5*RRN5P[A;@9$1IZ[U U0@C"W\ A0)-TM66RL]F&Y"'IZIV ?5RQ' M,C<#>H,I-WA#E/2\[J.X\BJO",6#7K?*A>VSB7 HPJU&X7&-<@B#<5\Y M".ZFE4. HIEPQ3= F4S6E?)C )-$!>(7MUJ%Q[7*D0S&?14AW? T!"#A3HT1 M !%*W/"-4*D*9-[5RW'\1?WQ80DQ+/>1S%.E&L^T"]$4G?. YBB(K!S MRJU^X7'].SAT\_>*^SL, MYWYRC5"<>E,8H'+W&8T1*@NI;6[U"#]DRW_/C62.=O3]C60(\S>2$0QM)$-< M>"-96)TBXCKED,@E?-&0<]?O $2(5R,'*$J(ZW>$XJ$\6UB5(N(JY7I32;DI M%OM5PH25 (*^?@ 3EG%%G'&?5]0"I.HB=4_G )296VXA#*!RZ?8U!BC"*0MY MS7*LB',L]MKQY4VQ<^1/G,"IE@1%/!/>PZE^/HJ<"A)@X%0?A9R*\N2P4RT# MBS@#!YUZ=/8K+/&)$V2_PK*->&GV*_P@[VKAYR&CYR'C*.3I05%+)#).)$%/ M'G=R0-IH+LGKNU':""_W2?)B;I2@(.VO3H "JQ.@P.H$J,CJE)9>Y#,'KH[P MZ?$!65HJD"[71)'+?11RN8]"+@<;T1&7[QSX/N#$]\C6 MK;8OFNSC2!O^Y0D.;$D;\>5+#VQ)<,@JW=W:V'C2A\G4K36, (JFJ7<. HW) MI P4):0E'!DGG+U=>?R2598>U G.=RE+"NJEY[N47P-D:>H=V0>[H,S=!1T! M5*;<';@Q0$G.0^\K6$)2!^R5/N/FHU65LIRA3O#:D;)4H%[ZXI'R"V!@3P&@ MP)X"0H$]!31D<$]!61Y2<1XZQ-/'J2YE>4*=H%*G=M[*V:=2%W4S.*4#(C> M@<@-4"ARHS'#D5M9GE)QGOJ3'/V"N&Y)1IW@Z$]F:21[Z=&?S*\9@;@.4""N M Q2(ZP 5CNN9I; L3F%_WB0X.NIGEH2R$]2],DLRV4OK7IL.9#SJ Q2(^@@% MHCX:TH_Z@YUWP9>ZONM?PF^2275?MNN7>[=7MR_Z_]2_WNY&ULM5EM;]LV$/XKA-$!*9!% M(FG+<> 8B"VG39&L0;QN'XI]D.6+)402/8JVNV$_?M1+1-F1*+6UOMAZN>>. MO.=T#R6.]XR_Q!Z 0-_"((JO>YX0FRO#B%T/0B>^8!N(Y)UGQD-'R%.^-N(- M!V>5@L+ (*9I&:'C1[W).+WVR"=CMA6!'\$C1_$V#!W^SQ0"MK_NX=[KA2=_ M[8GD@C$9;YPU+$!\V3QR>6847E9^"%'LLPAQ>+[NW>"K6SI, *G%'S[LX](Q M2J:R9.PE.;E;7??,9$00@"L2%X[\V\$,@B#Q),?Q=^ZT5\1,@.7C5^^WZ>3E M9)9.##,6_.FOA'?=N^RA%3P[VT \L?U'R"Q8&$. MEB,(_2C[=[[EB2@!I)]J ,D!Y!C0KP'0'$#;1NCG@'[;"(,<,#@&6#4 *P=8 M:>ZS9*69MAWA3,:<[1%/K*6WY""E*T7+!/M14ED+P>5=7^+$9 %K62?B''T MMN;.QO-=)T!.M$*?A0<%C<[>O4?OD!^AWSVVC:7#>&P(.> DK.'F@YMF@R,U@Z/H@47"B]$\ M6L&J F_K\583_E:/QT3CP)"9+M)-7M,])5J/G[;1!:+F.2(F,2L&-&L-QZ.J M?/Q<]/G/1;_5PVUP)1Q7P0]R28O2I:D_6N.OH@B_WDL;="<@C/_21.@7$?II MA'Y-A-?BY^"R=>3_6UE#T\R'E?I(&OEN@OLC:S@V=F5B*ZP(3?)0MK+?6I&1 M18]\S2NLAB,3%U8'DQT4DQUH)_L;Q )<="]6%^@L.0D ?00G$!Y:N#[(7,MG M^^L#A$O@NN1:13RK(_J&183A">C+? S*Q Q-\XB]"B-R;&2_-:+TV&C^UH@, M2D8'$[TL)GIY.NK0?^A#P):RR]LR/P';9/W_\R93>MGY[WU)3 SH9LT!DKMM M:!\58QUU1#LVE::9)R ^=U)^C(YIKS 9O*&]V<^\PN2@R [G6=)NW&:>Y^B1 ML]76%2E["^ [22":2MX]N5I\*3,_2U<44M>K:*@PNVE#/29JP*0K\I4J8*I- MRF$,+F./D6>)A& M)7VXE?9U6%O35K6EY L/NJHM)5G8.G5MZ1UB4EM;#F!I.(Q M.$RCTF7<2I@[K*U9J]I2^HHONZHMI8MX=-K:FC4XK&+Z\*5%"2II):@=$F:W M(8PH922X(\*($C-"3DN8W> 0TR;"E @2O1!T3]B\%6%*;DB_*\*40A#]&\[W M=^\&AU5RFS.M!Y)A$]-*DHB^+=^X+MM&(D9/X(*_MK5!S.J^C75K\Q_@!V]P_IGQRAM6LALK=/MI1BE M#&0?@8NKQ1;63;IQP';.>=^G1OG#G9"_E8Q@$;W66__@ MDC?)S)F"B4A_)DL=#[V>AY:P8MM47XO=)R@2ZEA["Y$J]XMV!3;PT&*KM,@* MLHD@2WC^S^Z+0E0(QDXS@10$4B>$SQ!H0:#'>@@+0GBLATY!<*G[>>ZN<%.F MV6@@Q0Y)BS;6[,)5W[%-O1)N&^5&2_,T,3P]NH&UD5V_0Q]!K"7;Q,F"I8CQ M)?JJ8Y#H&NZ ;P%=\+PIK;CO]Z<*S1\J1#0VK8I.IJ!9DJJW!O?]9HI.WKQ% M;U#"T;=8;)6QK :^-I%;__ZBB/(\CY(\$R5%EX+K6*$97\*R@3]MYTKLT?8> M,EVQ$5(G?/VD6VZ_&#BZT)"I7RW.PM)9Z)R%SSC[)K1I4%DT8%,KY?S(\>T] M>3?"83_J#OR[JD -*$)M.:JHZ2&*]"-:LS5K0'7[ 2Y13Q+ME(EV6A,=9R#- MRZC0[25DJ56?9:LYQ=SL;'2-0O[?5?7R(IR93 PJ3,(J:A<*53QUN?Z.NQI-CI,+DT2+Y#V(]WK.8OE0L M>G 5&1GJ=U\#BG8"4A?K$-4CI/Y.-:$ZA-2T\BL3BKG7UFXT5&@AMESG'YKR MM!P_QV[HJIV?X[,);CB?VG'5342/YO-9]Y+)=<(52F%E7 6G7=-7,A\?\XT6 M&SW.2:6#AV9SLM_/N=G9"5K:V0)NVE M\=GW???=E_B:KI5^,!6BA<=:2#,.*FN7YV%H\@IK9D[4$B6=+)2NF:50EZ%9 M:F2%!]4BC*,H"6O&99"E?N]69ZEJK. 2;S68IJZ9?KI$H=;C8! \;]SQLK)N M(\S2)2MQAO9^>:LI"GN6@M/:;*S!=3)7ZL$% M5\4XB)P@%)A;Q\#HL<()"N&(2,;/CC/H2SK@YOJ9_;WOG7J9,X,3);[QPE;C MX"R A>L$?9.K3]BU\^IX\N5,/X7UEUN%$#>&*OJ#DP*:B[;)WOL?-@ #$8[ M '$'B%\+&': H6^T5>;;FC++LE2K-6B736QNX;WQ:.J&2_<69U;3*2>'@S2&\ 2[A2Z4:0R5,&EIJP0D)\T[N92LW MWB'W4R-/8!@=01S%T1;X9#]\BCG!!PX^>/<2'I)QO7MQ[U[L^8:[W*-+530" M02U .$^$]X3UGI0O7"57]A0=]D6'ONAH1]'K/PMML[&E2#R%N\FK+#F+XS1< M;9JU)2D^^YWT0MVH5S?:J^Y>EOK\.-B^R&Z W3)9<&!"X(%IV\)8MT.YC:P*JEO]MS96E2^&5% MLQRU2Z#SA5+V.7#CHO]WR'X!4$L#!!0 ( /:I!U%$CI^&PO=V]R:W-H965TE$L@T%R7,]3VO MY2:$LY[?#[ H17D)[Y36*J-,;*I3(1XL).K:<_Q;$3 M(-+6!#&/!0R ,6O)Q/&K,.J4/JUP<[RV_C%/WB0S(0H&@OV@4QWWG-!!4YB1 MC.E;L?P$14)-:R\23.6_:%F<]1P494J+I!";"!+*5T_R6(#8$.#&#H%?"/Q] M!4$A"/)$5Y'E:0V))OVN%$LD[6ECS0YR-KG:9$.Y?8UC+ ;KBJ[^,1?\.70HQ75+&T/$0-*%,G9C% MN_$0'1^=H"-$.?H6BTP9,ZKK:A.F=>9&14@7JY#\'2%]SO@9"KQ3Y'N^MT4^ MJ) M>['#&]4/OSX]7)42[!_,KY V][JZN"HHN+ZBU!!$?]"!5QM7I0,WW@!P54IP M\W# S2WWNQ7L %P5%%Q?4>H!'WS_<55A'(PY??'[:[? ?PNY& MMV);Q6LBYY0KQ&!F5-Y9V[PAN>J^5A,MTKR!F0AMVJ%\&)N.%:0]8/9G0NCU MQ/9$90_<_PM02P,$% @ ]JD'42UKL8*; @ 5@8 !D !X;"]W;W)K M&ULC97;;MLP#(9?A3!ZT0)M[#BGH4@,).V*K5B! M(EW7BV$7BDW'0F4ID^2X??M1=0T"UN5C)G63K]DLB!P0"DRM4V#TV>(-"N&$"./W M3C-HCW2.A^.]^IV/G6)9,8,W2KSPS!:SX%, &>:L$G:IZB^XBV?D]%(EC/^% M>F<;!9!6QJIRYTP$)9?-E[WM\G#@$/=/.,0[A]AS-P=YREMF63+5J@;MK$G- M#7RHWIO@N'1%>;*:=CGYV60NJ"Q,I@A48+C1F'$+WY0Q:. *YI*)=\,-J!RZ M+,]OT3(NS 6< 9?PO5"583(ST] 2HSLI3'<\BX8G/L$SA@!EQVP1CU&*,.C%>-+=XI?+<0%HPO<8,V)IZ@;%@ M"P2V3\@QFD9Y=$ 3'8<9MS#C3A@JA=JBYN@O+"M5):T!:E9;3A=2O$--M!8E M[>;'@,;_"S1I@2:=0'2)/U2HDMC>Q6, DW_7)SQXZR52PEU'H^2[6)MGWZZV M37/>](J_YDW'?:!Z4:5 8$ZN46]"D>NFBS43JS:^Q^X@YH_TJ2/U!+ P04 " #VJ0=1,H_2./D" I"@ &0 'AL+W=O MPVH,#D\2JP5G;).W?KPV4I(&@JI=>P(;W9MX\F\&#K9#/:@6@T4O" M4S5T5EJOKUQ712M(J+H4:TC-FX60"=5F*I>N6DN@<4Y*N.MA'+@)9:DS&N3/ MIG(T$)GF+(6I1"I+$BI?;X"+[= ASMN#![9<:?O '0W6= DST$_KJ30SMXH2 MLP12Q42*)"R&SC6Y&I..)>2(7PRV:F^,;"ES(9[MY'L\=+!5!!PB;4-0<]O M&#BWD8R.?V50I\IIB?OCM^BW>?&FF#E5,!;\-XOU:NCT'13#@F9 JOZ)MB<4.BC*E15*2C8*$I<6=OI1&[!%,HZXAV0.LFUG]*JHO:_8F/TJ??_3 M&[-?,Q$?V%Q'D'ZWV>6P$A2V"@K(1?AQEPG>=4S\%3Z3O99-/NUT27UG),:' M;C>@CK0 LFN+Q&M5%9+":]/DT<\-R ^9ONMZQ/\2TW6FN[ M#9C@<(.[>_]Q>XBZI]+\7A7BL# D?-DS"R:+L! #V! &0 M 'AL+W=O7U>C,EZ;9YM#8#D MM9'*+FF-V-XR9LL:&FZO= O*K6RU:3BZU.R8;0WP*D"-9$D4S5G#A:)Y%N96 M)L]TAU(H6!EBNZ;AYN<]2-TO:4P/$VNQJ]%/L#QK^0X> ;^U*^,R-JE4H@%E MA5;$P'9)[^+;(O7UH>!)0&^/8N*=;+1^]LGG:DDCWQ!(*-$K<#?LH0 IO9!K MXV74I-,K/7@<']0_!N_.RX9;*+3\+BJLE_2&D@JVO).XUOTG&/U<>[U22QN> MI!]JTP4E96=1-R/L.FB$&D;^.N[#$3"+SP#)""1_ 7%Z!DA'(.P<&SH+MCYP MY'EF=$^,KW9J/@A[$VCG1BC_%1_1N%7A.,R_\ W(C*&3\A.L'+'[R]B#!/9:GOI.IKZ3H#,[H[,&BT:4"!4IN*T)5V/P\-*)/9>N M.7O*UF75SK[;<=[^^*WN->]4&"XK%X/R/"C[?V>?QXO9^RB*,K8_832=C*;_ MQ>AEU7\QFKXU.K^)WQIE1Z?2WPA?N=D)98F$K2.CJ\4U)6;XRX8$=1M.W$:C M._8AK-W%!,87N/6MUGA(_-F?KKK\%U!+ P04 " #VJ0=1"?0]@30" #= M"0 #0 'AL+W-T>6QE9A;T6QKVV!/CQ9SIS^^NG#=IRT&:$/6YJ'Z-YSI7./KH2OHEIO&#R4 !JU MG(DZQJ76U><@J-,2.*DO9 7"1'*I.-'&54505PI(5MM%G 6SZ701<$(%3B+1 M\%NN:Y3*1N@87PX0\L.W+,;AXB-&GNY&9A#CQ[/WOQJIK]\A/TX^3";3Q_/K M??S,!K4GJD83".H,SV-=RS_F,USCVBO7D6+*KJ6^FMC=B.<;^\*W"O(:>O\ M-A_R'V(/#[.3JF*;+XP6@H/?^]$)DXCTZU I%7TRV>Q-20T "J,U*$W3,?); MD6H)K>YO4YL?UCQ[@YK_;9T+$* (&XLV5_^4J_QJQ9>?_I=D]U'9%_RBQJY= MG;K(^5L0N3A)D4'W01]UC9V>,:#(]N88W]EW -LF1:N&,DU%YY4TRT \:QV& M7I.5>6OM\)OY&>2D87HY!&.\M7] 1AM^-*NQS $P( L !?3T\$MP>:4#M M.*2VBZD8_1!2:5K5N %(MB6/:(7->=I3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W\PPU1>5*(Y5;&GC3 MY?YVX$G1H2)8%II%R=.B':5_'D\^NM+R4WFJK$_S.9"*UN4+!^3(@_O)?WZSMCO-\9\%_=UU;B3T<;[[:O) MQ!4;54OWE]FJ)IQ9&5M+'P[M>N*V5LG2;93R=36)IM-L4DO=C-Z\?KS7PD[H M@?&J\-HTH; M^*K5G?OO?'LH;K73-[K2_N%DU+VOU$C4NM&U_J'*D]%T)-S& MW/UMK/YA&B^K96%-59V,9OL37Y7UNGA6O&PA/\L;UY5X>7,M \C)*)N&&ZZT M=;Z[HKN_#(RW*ER\/]IY\T%77MDSZ=6Y-;NM;M;M;<*OF)"?T=7#X^N^$E_9 M_U.-9K72A3HSQ:Y6C=_7HU55"]BXC=ZZD6ADK4Y&I^966;&0:]7^J/ M%^7^ M!_I 1JK+OM+AA+TH.T9.GJ94C5.E".^%>R>==BW6PBH7+NVN$+()E;BK:TD@7P+(E[R0 MU^I6-3LEKE5AUHUNS].!>XI&[BDOVJ=PW\HX)[;!*,N-M#VE0*>P2Z6JY(VQ MLI6P>&NM;-;M&.CIDS=#0IEQ&T6ZC7C_[T[?RJKEZAZ[]M@_B*4J*"92RHS9 M*1^DMN*KK,(#^%%)M[//:Q')9,9LD\=90C?O:FK'AVRR(Q9(TMOBN_C M&[D?H^MP)R=_[[]((#-N@\BM#I-?T7%2*"2,&;,Q0D75VM=/?2+(S8>YLFH* MK7HMB\0Q8S;'=5L86G4AK7^@4$@4,V93+-6ZO>)/<:[,VLKMI@UANCJ\\AME MZ4P:62-BML;;JC)W7:\-'Q>G5I7:B\N@D5[S1D@?$;,^X,2@-TF-8%#"[) # M4P/Q(H23P>D&%DH9K;08,HGU.CYDF:_D8(29@5! MS(]TWI$@!26#)= "9D_H"5)0PKXN S#?]Y8\D((2]I49]&Q2H2=P:89];09@ M+CW%1 I*V%=G .:B5YM(00G[^@S O-04$RDH8<^WH9Y.9W$)4E#"'@BA<9-. MW1-DH61("RWH\)XB"Z7<%H(I#]KH*;)0RFTAB$F7.%-DH9390D_H\)XB M"Z7#I./&^S4!NKTF119*ATK'C;O^3C&1A5)F"P',]A3%1!9*N=-QQS&OE:,] M/4,6RI@M!# 7RR\TY9$A"V7,%H*-WHN%,F2AC'U' 5G-;?O-O;*%=JK-T%UM M>XV.+)1QQT*_82YLL+M7XFJU4E;3D"U#%LK88R&4>!]33&2AC#T6 IC]9Q-N M56./A1!F;T,=LE VY-Z#WGPS0Q;*AEP4^I923&2AC#T60I@9W:"(+)0S6ZBW MER,,2&^=M_(?U:A"BL7E*<5$%LJ9+?0[YD=3J6)721N G:HI)K)0SKXGH8_Y ME,L.<]!%;_:>(POES!;""Y9T0,J1A7)F"V',WAY?9*&<>Z,;Q*0#4HXLE#-; M"&/V!B2X99H[%H*8.<5$%LJY8R&(.:>8R$(YLX70FG\8[ GF'%EH/N#6A!!G M4$QDH3FSA;XT1?CF=?O'J3#(7WA5MWA%>>_&T;3;5OB$B2PT[RPTZ2YV;UZ7 M:J4;57X*7^%">7B.BH45[4NWJ3)*TG9CY6I75:>A[*JY-+)\_//4XQ^_WOP$ M4$L#!!0 ( /:I!U%FS1$Z= ( &TP : >&PO7W)E;',O=V]R:V)O M;VLN>&UL+G)E;'/-VDUNHT 0AN&K6!P@N*NJJ\@HSFHVV8YR >2T?Q3;6,!H MDMN/Y2SL#\UB-A'?"C6(XI60'B'@Z5R_], M[#:;_;K\[-:_C^4T_F-P_:?KWX==*6.U>&W[;1E75?UQN.T>ZNLF/5PF5XN7 MMU75O[REJIX[2"!(Y@]2"-+Y@PR";/Z@#$%Y_B"'()\_*" HY@]J(*B9/^@1 M@A[G#TI+E'%)D#3!FD#KA%PG J\3@IT(Q$Y(=B(P.R':B4#MA&PG K<3PIT( MY$Y(=R*P.R'>B4!O0;V%0&]!O85 ;YD\;!/H+:BW$.@MJ+<0Z"VHMQ#H+:BW M$.@MJ+<0Z"VHMQ#H+:BW$.BMJ+<2Z*VHMQ+HK:BW$NBMDYBOJ MK01Z*^JM!'HKZJT$>BOJK01Z*^JM!'H;ZFT$>AOJ;01Z&^IM!'H;ZFT$>MOD M93>!WH9Z&X'>AGH;@=Z&>AN!WH9Z&X'>AGH;@=X9]F?4.Q/HG5'O3*!W M1KTS@=X9]N?)QTH"O3/JG0GTSJAW)M [H]Z90.^,>F<"O1WU=@*]'?5V M KT=]78"O1WU=@*]'?5V KT=]78"O7WRLPF!WHYZ.X'>CGH[@=Z.>CN!WH%Z M!X'>@7H'@=Z!>@>!WH%Z!X'>@7H'@=Z!>@>!WH%Z!X'>,?E9D$#O0+V#0.] MO8- [P;U;@CT;E#OAD#O!O5NOE/O8?P\E.'6\[7&ZW\GU>/EW'*[_'7YM7-R M7ZXXU_<5P_-?4$L#!!0 ( /:I!U$2 6)0(0( " O 3 6T-O;G1E M;G1?5'EP97-=+GAM;,W:WT[;,!0&\%>I-6MOG._&1?E>]^OD4*"T.0S^F3;7+.7QA+#4[&ERJ M?:"QK&Q]'%PN7^,="Z[9NSMB8K4RK/%CIC$O\U2CNK[Z1EMWW^?%S:'\G#H_ M;JI(?:H67X\;IZQ-Y4+HN\;ELLX>QO:OE.5S0EU.SGO2K@OIHFRHV)L)T\J_ M Y[/_7B@&+N6%KG$Z.9<;IN,G/SM_+G,JL.R\C3ZD,K%('X][&AE*(8JY._V* MKXFE]-GO1].T6VK?F5VN]]''_3R/Q.;'^7?\YXQ?ZW^P#P'2AP3I0X'TH4'Z M,"!]6) ^UB!]7(+TP5&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( /:I!U'5 MFJ]9/04 &$5 8 " @0X( !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ M]JD'45_Z?8K8 @ J@D !@ ("!WA0 'AL+W=OP7 !X;"]W;W)K&PO=V]R M:W-H965T&UL4$L! A0#% @ ]JD'45X1>3!> @ "P8 M !@ ("!;B4 'AL+W=O0< (H? 8 " @0(H !X M;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ ]JD'41JMP5#5'P _&@ !@ ("! MQT8 'AL+W=O&UL4$L! A0#% @ ]JD'44C"62>U P 40D !D M ("!W&X 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ ]JD'4?<0UHJE @ & 8 !D ("!B)( 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ]JD' M4<+)6X^& P G < !D ("!O:8 'AL+W=O&PO=V]R:W-H965TR] !X;"]W;W)K M&UL4$L! A0#% @ ]JD'40:B(F2Y#0 R"8 M !D ("!O\, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ]JD'47&PO=V]R:W-H965T M&UL4$L! A0# M% @ ]JD'4;(JX RW @ /@8 !D ("!" ,! 'AL+W=O MLPT\(# L M"0 &0 @('V!0$ >&PO=V]R:W-H965T\) M 0!X;"]W;W)K&UL4$L! A0#% @ ]JD'4>+! MW3O.!0 .! !D ("!@PT! 'AL+W=O;G^(' "%& &0 M @(&($P$ >&PO=V]R:W-H965T&UL4$L! A0#% @ ]JD'4;%F\R8C! I0X !D M ("!$A\! 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ ]JD'400H4(-V @ = 8 !D ("! M>"T! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ ]JD'4:?[$C^-! D!T !D ("!3C8! 'AL+W=O@%#HS' M P _P\ !D ("!ED$! 'AL+W=O.5CZT# ! #P &0 M@(&410$ >&PO=V]R:W-H965T&UL4$L! A0#% @ ]JD'47\%+L0[!0 41P !D M ("!#4P! 'AL+W=O'"ONT# H$0 &0 @(%_40$ >&PO=V]R M:W-H965T&UL M4$L! A0#% @ ]JD'44"1<2$S P . P !D ("!'5H! M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M]JD'47@Y0/\( P 80\ !D ("!Q&8! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ]JD'48"-J6ID @ M. 8 !D ("!_6\! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ]JD'40Q#BM7] 0 :00 !D M ("![7@! 'AL+W=OP$ >&PO=V]R:W-H M965T&UL4$L! M A0#% @ ]JD'41-/A3%! P .PT !D ("!:8 ! 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ]JD' M463(5")N!@ -20 !D ("!'(L! 'AL+W=O&PO=V]R:W-H965T4 0!X;"]W;W)K M&UL4$L! A0#% @ ]JD'44]A<\:T!0 Q1L M !D ("!]I&PO=V]R:W-H965T&UL4$L! A0#% @ ]JD'44Q&_ &D @ N08 !D M ("!TZ,! 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ ]JD'4&PO=V]R:W-H965T&UL4$L! A0#% @ ]JD'40'1LA!% P T L !D M ("!L\D! 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ ]JD'42UKL8*; @ 5@8 !D ("! MZ-(! 'AL+W=O&PO=V]R:W-H965TK8 0!X;"]W;W)K&UL4$L! A0#% M @ ]JD'40GT/8$T @ W0D T ( !#-L! 'AL+W-T>6QE M&PO=V]R:V)O;VLN>&UL4$L! A0#% @ M]JD'46;-$3IT @ ;3 !H ( !=.0! 'AL+U]R96QS+W=O M XML 94 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 95 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 96 FilingSummary.xml IDEA: XBRL DOCUMENT 3.20.2 html 381 345 1 false 110 0 false 10 false false R1.htm 0001001 - Document - Cover Page Sheet http://www.codexis.com/role/CoverPage Cover Page Cover 1 false false R2.htm 1001002 - Statement - Condensed Consolidated Balance Sheets Sheet http://www.codexis.com/role/CondensedConsolidatedBalanceSheets Condensed Consolidated Balance Sheets Statements 2 false false R3.htm 1002003 - Statement - Condensed Consolidated Balance Sheets (Parenthetical) Sheet http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical Condensed Consolidated Balance Sheets (Parenthetical) Statements 3 false false R4.htm 1003004 - Statement - Condensed Consolidated Statements of Operations Sheet http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations Condensed Consolidated Statements of Operations Statements 4 false false R5.htm 1004005 - Statement - Condensed Consolidated Statements of Stockholders' Equity Sheet http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity Condensed Consolidated Statements of Stockholders' Equity Statements 5 false false R6.htm 1005006 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Parenthetical) Sheet http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityParenthetical Condensed Consolidated Statements of Stockholders' Equity (Parenthetical) Statements 6 false false R7.htm 1006007 - Statement - Condensed Consolidated Statements of Cash Flows Sheet http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows Condensed Consolidated Statements of Cash Flows Statements 7 false false R8.htm 2101101 - Disclosure - Description of Business Sheet http://www.codexis.com/role/DescriptionofBusiness Description of Business Notes 8 false false R9.htm 2103102 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies Sheet http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies Basis of Presentation and Summary of Significant Accounting Policies Notes 9 false false R10.htm 2106103 - Disclosure - Revenue Recognition Sheet http://www.codexis.com/role/RevenueRecognition Revenue Recognition Notes 10 false false R11.htm 2113104 - Disclosure - Net loss per Share Sheet http://www.codexis.com/role/NetlossperShare Net loss per Share Notes 11 false false R12.htm 2116105 - Disclosure - Collaborative Arrangements Sheet http://www.codexis.com/role/CollaborativeArrangements Collaborative Arrangements Notes 12 false false R13.htm 2128106 - Disclosure - Cash Equivalents and Equity Securities Sheet http://www.codexis.com/role/CashEquivalentsandEquitySecurities Cash Equivalents and Equity Securities Notes 13 false false R14.htm 2132107 - Disclosure - Fair Value Measurements Sheet http://www.codexis.com/role/FairValueMeasurements Fair Value Measurements Notes 14 false false R15.htm 2135108 - Disclosure - Balance Sheets Details Sheet http://www.codexis.com/role/BalanceSheetsDetails Balance Sheets Details Notes 15 false false R16.htm 2141109 - Disclosure - Stock-based Compensation Sheet http://www.codexis.com/role/StockbasedCompensation Stock-based Compensation Notes 16 false false R17.htm 2148110 - Disclosure - Capital Stock Sheet http://www.codexis.com/role/CapitalStock Capital Stock Notes 17 false false R18.htm 2151111 - Disclosure - Commitments and Contingencies Sheet http://www.codexis.com/role/CommitmentsandContingencies Commitments and Contingencies Notes 18 false false R19.htm 2159112 - Disclosure - Related Party Sheet http://www.codexis.com/role/RelatedParty Related Party Notes 19 false false R20.htm 2163113 - Disclosure - Segment, Geographical and Other Revenue Information Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformation Segment, Geographical and Other Revenue Information Notes 20 false false R21.htm 2171114 - Disclosure - Allowance for Credit Losses Sheet http://www.codexis.com/role/AllowanceforCreditLosses Allowance for Credit Losses Notes 21 false false R22.htm 2204201 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies) Sheet http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies Basis of Presentation and Summary of Significant Accounting Policies (Policies) Policies http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies 22 false false R23.htm 2307301 - Disclosure - Revenue Recognition (Tables) Sheet http://www.codexis.com/role/RevenueRecognitionTables Revenue Recognition (Tables) Tables http://www.codexis.com/role/RevenueRecognition 23 false false R24.htm 2314302 - Disclosure - Net loss per Share (Tables) Sheet http://www.codexis.com/role/NetlossperShareTables Net loss per Share (Tables) Tables http://www.codexis.com/role/NetlossperShare 24 false false R25.htm 2329303 - Disclosure - Cash Equivalents and Equity Securities (Tables) Sheet http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTables Cash Equivalents and Equity Securities (Tables) Tables http://www.codexis.com/role/CashEquivalentsandEquitySecurities 25 false false R26.htm 2333304 - Disclosure - Fair Value Measurements (Tables) Sheet http://www.codexis.com/role/FairValueMeasurementsTables Fair Value Measurements (Tables) Tables http://www.codexis.com/role/FairValueMeasurements 26 false false R27.htm 2336305 - Disclosure - Balance Sheets Details (Tables) Sheet http://www.codexis.com/role/BalanceSheetsDetailsTables Balance Sheets Details (Tables) Tables http://www.codexis.com/role/BalanceSheetsDetails 27 false false R28.htm 2342306 - Disclosure - Stock-based Compensation (Tables) Sheet http://www.codexis.com/role/StockbasedCompensationTables Stock-based Compensation (Tables) Tables http://www.codexis.com/role/StockbasedCompensation 28 false false R29.htm 2352307 - Disclosure - Commitments and Contingencies (Tables) Sheet http://www.codexis.com/role/CommitmentsandContingenciesTables Commitments and Contingencies (Tables) Tables http://www.codexis.com/role/CommitmentsandContingencies 29 false false R30.htm 2364308 - Disclosure - Segment, Geographical and Other Revenue Information (Tables) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables Segment, Geographical and Other Revenue Information (Tables) Tables http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformation 30 false false R31.htm 2372309 - Disclosure - Allowance for Credit Losses (Tables) Sheet http://www.codexis.com/role/AllowanceforCreditLossesTables Allowance for Credit Losses (Tables) Tables http://www.codexis.com/role/AllowanceforCreditLosses 31 false false R32.htm 2402401 - Disclosure - Description of Business (Details) Sheet http://www.codexis.com/role/DescriptionofBusinessDetails Description of Business (Details) Details http://www.codexis.com/role/DescriptionofBusiness 32 false false R33.htm 2405402 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Details) Sheet http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails Basis of Presentation and Summary of Significant Accounting Policies (Details) Details http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies 33 false false R34.htm 2408403 - Disclosure - Revenue Recognition - Disaggregation of Revenue (Details) Sheet http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails Revenue Recognition - Disaggregation of Revenue (Details) Details 34 false false R35.htm 2409404 - Disclosure - Revenue Recognition - Contracts with Customer (Details) Sheet http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails Revenue Recognition - Contracts with Customer (Details) Details 35 false false R36.htm 2410405 - Disclosure - Revenue Recognition - Textual (Details) Sheet http://www.codexis.com/role/RevenueRecognitionTextualDetails Revenue Recognition - Textual (Details) Details 36 false false R37.htm 2411406 - Disclosure - Revenue Recognition - Revenue Recognized During Period (Details) Sheet http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails Revenue Recognition - Revenue Recognized During Period (Details) Details 37 false false R38.htm 2412407 - Disclosure - Revenue Recognition - Performance Obligation (Details) Sheet http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails Revenue Recognition - Performance Obligation (Details) Details 38 false false R39.htm 2415408 - Disclosure - Net loss per Share (Details) Sheet http://www.codexis.com/role/NetlossperShareDetails Net loss per Share (Details) Details http://www.codexis.com/role/NetlossperShareTables 39 false false R40.htm 2417409 - Disclosure - Collaborative Arrangements - GSK Platform Technology Transfer, Collaboration and License Agreement (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails Collaborative Arrangements - GSK Platform Technology Transfer, Collaboration and License Agreement (Details) Details 40 false false R41.htm 2418410 - Disclosure - Collaborative Arrangements - Merck Platform Technology Transfer and License Agreement (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails Collaborative Arrangements - Merck Platform Technology Transfer and License Agreement (Details) Details 41 false false R42.htm 2419411 - Disclosure - Collaborative Arrangements - Merck Sitagliptin Catalyst Supply Agreement (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails Collaborative Arrangements - Merck Sitagliptin Catalyst Supply Agreement (Details) Details 42 false false R43.htm 2420412 - Disclosure - Collaborative Arrangements - Enzyme Supply Agreement (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsEnzymeSupplyAgreementDetails Collaborative Arrangements - Enzyme Supply Agreement (Details) Details 43 false false R44.htm 2421413 - Disclosure - Collaborative Arrangements - Global Development, Option and License Agreement, Strategic Collaboration Agreement, and Development Agreement (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails Collaborative Arrangements - Global Development, Option and License Agreement, Strategic Collaboration Agreement, and Development Agreement (Details) Details 44 false false R45.htm 2422414 - Disclosure - Collaborative Arrangements - Strategic Collaboration Agreement (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails Collaborative Arrangements - Strategic Collaboration Agreement (Details) Details 45 false false R46.htm 2423415 - Disclosure - Collaborative Arrangements - Platform Technology Transfer and License Agreement (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails Collaborative Arrangements - Platform Technology Transfer and License Agreement (Details) Details 46 false false R47.htm 2424416 - Disclosure - Collaborative Arrangements - License Agreement (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails Collaborative Arrangements - License Agreement (Details) Details 47 false false R48.htm 2425417 - Disclosure - Collaborative Arrangements - Strategic Collaboration and License Agreement (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails Collaborative Arrangements - Strategic Collaboration and License Agreement (Details) Details 48 false false R49.htm 2426418 - Disclosure - Collaborative Arrangements - Master Collaboration and Research Agreement and Stock Purchase Agreement (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails Collaborative Arrangements - Master Collaboration and Research Agreement and Stock Purchase Agreement (Details) Details 49 false false R50.htm 2427419 - Disclosure - Collaborative Arrangements - Performance Period (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails Collaborative Arrangements - Performance Period (Details) Details 50 false false R51.htm 2430420 - Disclosure - Cash Equivalents and Equity Securities - Components of Cash Equivalents (Details) Sheet http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesComponentsofCashEquivalentsDetails Cash Equivalents and Equity Securities - Components of Cash Equivalents (Details) Details 51 false false R52.htm 2431421 - Disclosure - Cash Equivalents and Equity Securities - Textual (Details) Sheet http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails Cash Equivalents and Equity Securities - Textual (Details) Details 52 false false R53.htm 2434422 - Disclosure - Fair Value Measurements (Details) Sheet http://www.codexis.com/role/FairValueMeasurementsDetails Fair Value Measurements (Details) Details http://www.codexis.com/role/FairValueMeasurementsTables 53 false false R54.htm 2437423 - Disclosure - Balance Sheets Details - Inventories (Details) Sheet http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails Balance Sheets Details - Inventories (Details) Details 54 false false R55.htm 2438424 - Disclosure - Balance Sheets Details - Property and Equipment, net (Details) Sheet http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails Balance Sheets Details - Property and Equipment, net (Details) Details 55 false false R56.htm 2439425 - Disclosure - Balance Sheets Details - Goodwill (Details) Sheet http://www.codexis.com/role/BalanceSheetsDetailsGoodwillDetails Balance Sheets Details - Goodwill (Details) Details 56 false false R57.htm 2440426 - Disclosure - Balance Sheets Details - Other Accrued Liabilities (Details) Sheet http://www.codexis.com/role/BalanceSheetsDetailsOtherAccruedLiabilitiesDetails Balance Sheets Details - Other Accrued Liabilities (Details) Details 57 false false R58.htm 2443427 - Disclosure - Stock-based Compensation - Equity Incentive Plans (Details) Sheet http://www.codexis.com/role/StockbasedCompensationEquityIncentivePlansDetails Stock-based Compensation - Equity Incentive Plans (Details) Details 58 false false R59.htm 2444428 - Disclosure - Stock-based Compensation - Stock Options (Details) Sheet http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails Stock-based Compensation - Stock Options (Details) Details 59 false false R60.htm 2445429 - Disclosure - Stock-based Compensation - Restricted Stock Units (Details) Sheet http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails Stock-based Compensation - Restricted Stock Units (Details) Details 60 false false R61.htm 2446430 - Disclosure - Stock-based Compensation - PSUs and PBOs (Details) Sheet http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails Stock-based Compensation - PSUs and PBOs (Details) Details 61 false false R62.htm 2447431 - Disclosure - Stock-based Compensation - Stock-based Compensation Expense (Details) Sheet http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails Stock-based Compensation - Stock-based Compensation Expense (Details) Details 62 false false R63.htm 2449432 - Disclosure - Capital Stock - Exercise of Options (Details) Sheet http://www.codexis.com/role/CapitalStockExerciseofOptionsDetails Capital Stock - Exercise of Options (Details) Details 63 false false R64.htm 2450433 - Disclosure - Capital Stock - Private Offering (Details) Sheet http://www.codexis.com/role/CapitalStockPrivateOfferingDetails Capital Stock - Private Offering (Details) Details 64 false false R65.htm 2453434 - Disclosure - Commitments and Contingencies - Textual (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails Commitments and Contingencies - Textual (Details) Details 65 false false R66.htm 2454435 - Disclosure - Commitments and Contingencies - Lease Cost (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails Commitments and Contingencies - Lease Cost (Details) Details 66 false false R67.htm 2455436 - Disclosure - Commitments and Contingencies - Other Lease Information (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails Commitments and Contingencies - Other Lease Information (Details) Details 67 false false R68.htm 2456437 - Disclosure - Commitments and Contingencies - Cash Paid for Lease Obligations (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesCashPaidforLeaseObligationsDetails Commitments and Contingencies - Cash Paid for Lease Obligations (Details) Details 68 false false R69.htm 2457438 - Disclosure - Commitments and Contingencies - Future Minimum Lease Payments (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails Commitments and Contingencies - Future Minimum Lease Payments (Details) Details 69 false false R70.htm 2458439 - Disclosure - Commitments and Contingencies - Other Commitments (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails Commitments and Contingencies - Other Commitments (Details) Details 70 false false R71.htm 2460440 - Disclosure - Related Party - AstraZeneca PLC (Details) Sheet http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails Related Party - AstraZeneca PLC (Details) Details 71 false false R72.htm 2461441 - Disclosure - Related Party - Molecular Assemblies, Inc. (Details) Sheet http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails Related Party - Molecular Assemblies, Inc. (Details) Details 72 false false R73.htm 2462442 - Disclosure - Related Party - Performance Period (Details) Sheet http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails Related Party - Performance Period (Details) Details 73 false false R74.htm 2465443 - Disclosure - Segment, Geographical and Other Revenue Information - Textual (Details) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTextualDetails Segment, Geographical and Other Revenue Information - Textual (Details) Details http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables 74 false false R75.htm 2466444 - Disclosure - Segment, Geographical and Other Revenue Information - Segment Reporting (Details) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails Segment, Geographical and Other Revenue Information - Segment Reporting (Details) Details 75 false false R76.htm 2467445 - Disclosure - Segment, Geographical and Other Revenue Information - Concentration Risk (Details) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails Segment, Geographical and Other Revenue Information - Concentration Risk (Details) Details 76 false false R77.htm 2468446 - Disclosure - Segment, Geographical and Other Revenue Information - Revenues by Geographic Area (Details) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails Segment, Geographical and Other Revenue Information - Revenues by Geographic Area (Details) Details 77 false false R78.htm 2469447 - Disclosure - Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details) Details 78 false false R79.htm 2470448 - Disclosure - Segment, Geographical and Other Revenue Information - Goodwill (Details) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails Segment, Geographical and Other Revenue Information - Goodwill (Details) Details http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables 79 false false R80.htm 2473449 - Disclosure - Allowance for Credit Losses - Analysis of Allowance for Credit Losses (Details) Sheet http://www.codexis.com/role/AllowanceforCreditLossesAnalysisofAllowanceforCreditLossesDetails Allowance for Credit Losses - Analysis of Allowance for Credit Losses (Details) Details 80 false false R81.htm 2474450 - Disclosure - Allowance for Credit Losses - Summary of Finance Receivables by Aging Category (Details) Sheet http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails Allowance for Credit Losses - Summary of Finance Receivables by Aging Category (Details) Details 81 false false R9999.htm Uncategorized Items - cdxs-20200630.htm Sheet http://xbrl.sec.gov/role/uncategorizedFacts Uncategorized Items - cdxs-20200630.htm Cover 82 false false All Reports Book All Reports cdxs-20200630.htm cdxs-20200630.xsd cdxs-20200630_cal.xml cdxs-20200630_def.xml cdxs-20200630_lab.xml cdxs-20200630_pre.xml cdxs20200630ex311sp.htm cdxs20200630ex312sp.htm cdxs20200630ex321sp.htm http://xbrl.sec.gov/country/2020-01-31 http://fasb.org/srt/2020-01-31 http://xbrl.sec.gov/dei/2019-01-31 http://fasb.org/us-gaap/2020-01-31 true true JSON 99 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "cdxs-20200630.htm": { "axisCustom": 2, "axisStandard": 38, "contextCount": 381, "dts": { "calculationLink": { "local": [ "cdxs-20200630_cal.xml" ] }, "definitionLink": { "local": [ "cdxs-20200630_def.xml" ], "remote": [ "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-eedm-def-2020-01-31.xml", "http://xbrl.fasb.org/srt/2020/elts/srt-eedm1-def-2020-01-31.xml" ] }, "inline": { "local": [ "cdxs-20200630.htm" ] }, "labelLink": { "local": [ "cdxs-20200630_lab.xml" ], "remote": [ "https://xbrl.sec.gov/dei/2019/dei-doc-2019-01-31.xml", "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-doc-2020-01-31.xml" ] }, "presentationLink": { "local": [ "cdxs-20200630_pre.xml" ] }, "referenceLink": { "remote": [ "https://xbrl.sec.gov/dei/2019/dei-ref-2019-01-31.xml", "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-ref-2020-01-31.xml" ] }, "schema": { "local": [ "cdxs-20200630.xsd" ], "remote": [ "http://xbrl.fasb.org/srt/2020/elts/srt-2020-01-31.xsd", "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/dtr/type/numeric-2009-12-16.xsd", "http://www.xbrl.org/dtr/type/nonNumeric-2009-12-16.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://xbrl.fasb.org/srt/2020/elts/srt-types-2020-01-31.xsd", "http://xbrl.fasb.org/us-gaap/2020/elts/us-gaap-2020-01-31.xsd", "http://xbrl.fasb.org/us-gaap/2020/elts/us-roles-2020-01-31.xsd", "http://xbrl.fasb.org/srt/2020/elts/srt-roles-2020-01-31.xsd", "https://xbrl.sec.gov/country/2020/country-2020-01-31.xsd", "http://xbrl.fasb.org/us-gaap/2020/elts/us-types-2020-01-31.xsd", "https://xbrl.sec.gov/dei/2019/dei-2019-01-31.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/deprecated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "http://xbrl.fasb.org/us-gaap/2020/elts/us-parts-codification-2020-01-31.xsd" ] } }, "elementCount": 544, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2020-01-31": 12, "http://xbrl.sec.gov/dei/2019-01-31": 5, "total": 17 }, "keyCustom": 27, "keyStandard": 318, "memberCustom": 61, "memberStandard": 46, "nsprefix": "cdxs", "nsuri": "http://www.codexis.com/20200630", "report": { "R1": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "0001001 - Document - Cover Page", "role": "http://www.codexis.com/role/CoverPage", "shortName": "Cover Page", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2106103 - Disclosure - Revenue Recognition", "role": "http://www.codexis.com/role/RevenueRecognition", "shortName": "Revenue Recognition", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2113104 - Disclosure - Net loss per Share", "role": "http://www.codexis.com/role/NetlossperShare", "shortName": "Net loss per Share", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CollaborativeArrangementDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2116105 - Disclosure - Collaborative Arrangements", "role": "http://www.codexis.com/role/CollaborativeArrangements", "shortName": "Collaborative Arrangements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CollaborativeArrangementDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "cdxs:CashEquivalentsAndInvestmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2128106 - Disclosure - Cash Equivalents and Equity Securities", "role": "http://www.codexis.com/role/CashEquivalentsandEquitySecurities", "shortName": "Cash Equivalents and Equity Securities", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "cdxs:CashEquivalentsAndInvestmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueMeasurementInputsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2132107 - Disclosure - Fair Value Measurements", "role": "http://www.codexis.com/role/FairValueMeasurements", "shortName": "Fair Value Measurements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueMeasurementInputsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "cdxs:BalanceSheetsDetailsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2135108 - Disclosure - Balance Sheets Details", "role": "http://www.codexis.com/role/BalanceSheetsDetails", "shortName": "Balance Sheets Details", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "cdxs:BalanceSheetsDetailsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2141109 - Disclosure - Stock-based Compensation", "role": "http://www.codexis.com/role/StockbasedCompensation", "shortName": "Stock-based Compensation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2148110 - Disclosure - Capital Stock", "role": "http://www.codexis.com/role/CapitalStock", "shortName": "Capital Stock", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2151111 - Disclosure - Commitments and Contingencies", "role": "http://www.codexis.com/role/CommitmentsandContingencies", "shortName": "Commitments and Contingencies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2159112 - Disclosure - Related Party", "role": "http://www.codexis.com/role/RelatedParty", "shortName": "Related Party", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1001002 - Statement - Condensed Consolidated Balance Sheets", "role": "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets", "shortName": "Condensed Consolidated Balance Sheets", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RestrictedCash", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2163113 - Disclosure - Segment, Geographical and Other Revenue Information", "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformation", "shortName": "Segment, Geographical and Other Revenue Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CreditLossFinancialInstrumentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2171114 - Disclosure - Allowance for Credit Losses", "role": "http://www.codexis.com/role/AllowanceforCreditLosses", "shortName": "Allowance for Credit Losses", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CreditLossFinancialInstrumentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2204201 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies)", "role": "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies", "shortName": "Basis of Presentation and Summary of Significant Accounting Policies (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2307301 - Disclosure - Revenue Recognition (Tables)", "role": "http://www.codexis.com/role/RevenueRecognitionTables", "shortName": "Revenue Recognition (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2314302 - Disclosure - Net loss per Share (Tables)", "role": "http://www.codexis.com/role/NetlossperShareTables", "shortName": "Net loss per Share (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2329303 - Disclosure - Cash Equivalents and Equity Securities (Tables)", "role": "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTables", "shortName": "Cash Equivalents and Equity Securities (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2333304 - Disclosure - Fair Value Measurements (Tables)", "role": "http://www.codexis.com/role/FairValueMeasurementsTables", "shortName": "Fair Value Measurements (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2336305 - Disclosure - Balance Sheets Details (Tables)", "role": "http://www.codexis.com/role/BalanceSheetsDetailsTables", "shortName": "Balance Sheets Details (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2342306 - Disclosure - Stock-based Compensation (Tables)", "role": "http://www.codexis.com/role/StockbasedCompensationTables", "shortName": "Stock-based Compensation (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeaseCostTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2352307 - Disclosure - Commitments and Contingencies (Tables)", "role": "http://www.codexis.com/role/CommitmentsandContingenciesTables", "shortName": "Commitments and Contingencies (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeaseCostTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1002003 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)", "role": "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical", "shortName": "Condensed Consolidated Balance Sheets (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2364308 - Disclosure - Segment, Geographical and Other Revenue Information (Tables)", "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables", "shortName": "Segment, Geographical and Other Revenue Information (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2372309 - Disclosure - Allowance for Credit Losses (Tables)", "role": "http://www.codexis.com/role/AllowanceforCreditLossesTables", "shortName": "Allowance for Credit Losses (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PaymentsToAcquireOtherInvestments", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2402401 - Disclosure - Description of Business (Details)", "role": "http://www.codexis.com/role/DescriptionofBusinessDetails", "shortName": "Description of Business (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "ib4f6daf166b346838cba1efa3786b175_D20181201-20181231", "decimals": "-5", "lang": "en-US", "name": "cdxs:RevenueRecognitionMilestonePaymentAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "span", "div", "us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:NumberOfReportingUnits", "reportCount": 1, "unique": true, "unitRef": "reportingunit", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2405402 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Details)", "role": "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails", "shortName": "Basis of Presentation and Summary of Significant Accounting Policies (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:NumberOfReportingUnits", "reportCount": 1, "unique": true, "unitRef": "reportingunit", "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2408403 - Disclosure - Revenue Recognition - Disaggregation of Revenue (Details)", "role": "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "shortName": "Revenue Recognition - Disaggregation of Revenue (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i0c1cb9e35380453ba6df21a60aa5ec66_D20200401-20200630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetGrossCurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2409404 - Disclosure - Revenue Recognition - Contracts with Customer (Details)", "role": "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails", "shortName": "Revenue Recognition - Contracts with Customer (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:CapitalizedContractCostNetCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetCreditLossExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2410405 - Disclosure - Revenue Recognition - Textual (Details)", "role": "http://www.codexis.com/role/RevenueRecognitionTextualDetails", "shortName": "Revenue Recognition - Textual (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetCreditLossExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2411406 - Disclosure - Revenue Recognition - Revenue Recognized During Period (Details)", "role": "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails", "shortName": "Revenue Recognition - Revenue Recognized During Period (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2412407 - Disclosure - Revenue Recognition - Performance Obligation (Details)", "role": "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails", "shortName": "Revenue Recognition - Performance Obligation (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "idc186c6be0b34b2aa5b86e1f0d996c58_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2415408 - Disclosure - Net loss per Share (Details)", "role": "http://www.codexis.com/role/NetlossperShareDetails", "shortName": "Net loss per Share (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "idc186c6be0b34b2aa5b86e1f0d996c58_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1003004 - Statement - Condensed Consolidated Statements of Operations", "role": "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "shortName": "Condensed Consolidated Statements of Operations", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:InvestmentIncomeInterest", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2417409 - Disclosure - Collaborative Arrangements - GSK Platform Technology Transfer, Collaboration and License Agreement (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails", "shortName": "Collaborative Arrangements - GSK Platform Technology Transfer, Collaboration and License Agreement (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i1e84015733234c7083ad9250584f9928_D20200401-20200630", "decimals": "INF", "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2418410 - Disclosure - Collaborative Arrangements - Merck Platform Technology Transfer and License Agreement (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "shortName": "Collaborative Arrangements - Merck Platform Technology Transfer and License Agreement (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i4e7dbadf2dfb492b9add5c7d9cdac997_D20200401-20200630", "decimals": "-5", "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2419411 - Disclosure - Collaborative Arrangements - Merck Sitagliptin Catalyst Supply Agreement (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "shortName": "Collaborative Arrangements - Merck Sitagliptin Catalyst Supply Agreement (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i349646ce0e08445abf2a89e01ec3e11d_D20151201-20151231", "decimals": null, "lang": "en-US", "name": "cdxs:CollaborativeResearchandDevelopmentAgreementOptionalExtensionPeriod", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiability", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2420412 - Disclosure - Collaborative Arrangements - Enzyme Supply Agreement (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsEnzymeSupplyAgreementDetails", "shortName": "Collaborative Arrangements - Enzyme Supply Agreement (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R44": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiability", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2421413 - Disclosure - Collaborative Arrangements - Global Development, Option and License Agreement, Strategic Collaboration Agreement, and Development Agreement (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "shortName": "Collaborative Arrangements - Global Development, Option and License Agreement, Strategic Collaboration Agreement, and Development Agreement (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i5f5fb4aff5074a449c62281b592f83a2_I20180930", "decimals": "-5", "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiability", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiability", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2422414 - Disclosure - Collaborative Arrangements - Strategic Collaboration Agreement (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails", "shortName": "Collaborative Arrangements - Strategic Collaboration Agreement (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "iee061d561caa45a0a26ddc783e6ac3ff_D20200401-20200430", "decimals": "-5", "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiability", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2423415 - Disclosure - Collaborative Arrangements - Platform Technology Transfer and License Agreement (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "shortName": "Collaborative Arrangements - Platform Technology Transfer and License Agreement (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "if4e519800a544be7be2056bb36b3a512_D20190501-20190531", "decimals": null, "lang": "en-US", "name": "cdxs:TermOfCollaborativeResearchAndDevelopmentAgreement", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2424416 - Disclosure - Collaborative Arrangements - License Agreement (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails", "shortName": "Collaborative Arrangements - License Agreement (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "if53680e6fe9c4bb990836a3ff427aa1f_D20200401-20200630", "decimals": "-5", "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiability", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2425417 - Disclosure - Collaborative Arrangements - Strategic Collaboration and License Agreement (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails", "shortName": "Collaborative Arrangements - Strategic Collaboration and License Agreement (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i6808a633ef82414192f7e20412fe8a25_D20200401-20200630", "decimals": "-5", "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PaymentsToAcquireOtherInvestments", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2426418 - Disclosure - Collaborative Arrangements - Master Collaboration and Research Agreement and Stock Purchase Agreement (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "shortName": "Collaborative Arrangements - Master Collaboration and Research Agreement and Stock Purchase Agreement (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R5": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i608b5447529e4e0380e5f0029ea06157_I20181231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:SharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1004005 - Statement - Condensed Consolidated Statements of Stockholders' Equity", "role": "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity", "shortName": "Condensed Consolidated Statements of Stockholders' Equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i608b5447529e4e0380e5f0029ea06157_I20181231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:SharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i0c579f90083a4794999ebb5051b8c764_I20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "reportCount": 1, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2427419 - Disclosure - Collaborative Arrangements - Performance Period (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "shortName": "Collaborative Arrangements - Performance Period (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R51": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2430420 - Disclosure - Cash Equivalents and Equity Securities - Components of Cash Equivalents (Details)", "role": "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesComponentsofCashEquivalentsDetails", "shortName": "Cash Equivalents and Equity Securities - Components of Cash Equivalents (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R52": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2431421 - Disclosure - Cash Equivalents and Equity Securities - Textual (Details)", "role": "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails", "shortName": "Cash Equivalents and Equity Securities - Textual (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i38f784063ed846418b2d5803ec430b1c_I20200630", "decimals": "2", "lang": "en-US", "name": "us-gaap:MinorityInterestOwnershipPercentageByParent", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id874283595104fedb7430a663881c32e_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2434422 - Disclosure - Fair Value Measurements (Details)", "role": "http://www.codexis.com/role/FairValueMeasurementsDetails", "shortName": "Fair Value Measurements (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i671863b45bae4bc3b3b529c1bc2c0163_I20200630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InventoryRawMaterials", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2437423 - Disclosure - Balance Sheets Details - Inventories (Details)", "role": "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails", "shortName": "Balance Sheets Details - Inventories (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InventoryRawMaterials", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2438424 - Disclosure - Balance Sheets Details - Property and Equipment, net (Details)", "role": "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails", "shortName": "Balance Sheets Details - Property and Equipment, net (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2439425 - Disclosure - Balance Sheets Details - Goodwill (Details)", "role": "http://www.codexis.com/role/BalanceSheetsDetailsGoodwillDetails", "shortName": "Balance Sheets Details - Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R57": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PurchaseObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2440426 - Disclosure - Balance Sheets Details - Other Accrued Liabilities (Details)", "role": "http://www.codexis.com/role/BalanceSheetsDetailsOtherAccruedLiabilitiesDetails", "shortName": "Balance Sheets Details - Other Accrued Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PurchaseObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i27490872c6a143ed8b6f93074dfcbd04_I20190630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2443427 - Disclosure - Stock-based Compensation - Equity Incentive Plans (Details)", "role": "http://www.codexis.com/role/StockbasedCompensationEquityIncentivePlansDetails", "shortName": "Stock-based Compensation - Equity Incentive Plans (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i27490872c6a143ed8b6f93074dfcbd04_I20190630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i04320b98cde947e1b6a52224d772d137_D20200101-20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2444428 - Disclosure - Stock-based Compensation - Stock Options (Details)", "role": "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails", "shortName": "Stock-based Compensation - Stock Options (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i04320b98cde947e1b6a52224d772d137_D20200101-20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i4343a7fb8d4c4a61b935c27a78a2730b_D20190401-20190630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PaymentsOfStockIssuanceCosts", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1005006 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Parenthetical)", "role": "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityParenthetical", "shortName": "Condensed Consolidated Statements of Stockholders' Equity (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": null }, "R60": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i8840844979a44004869c4c6c5dc3fb80_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2445429 - Disclosure - Stock-based Compensation - Restricted Stock Units (Details)", "role": "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails", "shortName": "Stock-based Compensation - Restricted Stock Units (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i8840844979a44004869c4c6c5dc3fb80_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "ide88fa812e0b4e01a450ebf5b57d61c2_D20200101-20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "cdxs:SharebasedCompensationArrangementbySharebasedPaymentAwardPerformanceAwardsThresholdLevelNumberofSharesMultiplier", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2446430 - Disclosure - Stock-based Compensation - PSUs and PBOs (Details)", "role": "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails", "shortName": "Stock-based Compensation - PSUs and PBOs (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "ide88fa812e0b4e01a450ebf5b57d61c2_D20200101-20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "cdxs:SharebasedCompensationArrangementbySharebasedPaymentAwardPerformanceAwardsThresholdLevelNumberofSharesMultiplier", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R62": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensation", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2447431 - Disclosure - Stock-based Compensation - Stock-based Compensation Expense (Details)", "role": "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "shortName": "Stock-based Compensation - Stock-based Compensation Expense (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "icd5c18748cf042e78c13c1aad75ce04c_D20200601-20200630", "decimals": "INF", "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R63": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised", "reportCount": 1, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2449432 - Disclosure - Capital Stock - Exercise of Options (Details)", "role": "http://www.codexis.com/role/CapitalStockExerciseofOptionsDetails", "shortName": "Capital Stock - Exercise of Options (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "2", "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R64": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i4343a7fb8d4c4a61b935c27a78a2730b_D20190401-20190630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PaymentsOfStockIssuanceCosts", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2450433 - Disclosure - Capital Stock - Private Offering (Details)", "role": "http://www.codexis.com/role/CapitalStockPrivateOfferingDetails", "shortName": "Capital Stock - Private Offering (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "ia2460839c8314ec595b673bd5225c81d_D20190601-20190630", "decimals": "INF", "lang": "en-US", "name": "us-gaap:SaleOfStockNumberOfSharesIssuedInTransaction", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R65": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-2", "first": true, "lang": "en-US", "name": "us-gaap:AreaOfRealEstateProperty", "reportCount": 1, "unique": true, "unitRef": "sqft", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2453434 - Disclosure - Commitments and Contingencies - Textual (Details)", "role": "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails", "shortName": "Commitments and Contingencies - Textual (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-2", "first": true, "lang": "en-US", "name": "us-gaap:AreaOfRealEstateProperty", "reportCount": 1, "unique": true, "unitRef": "sqft", "xsiNil": "false" } }, "R66": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2454435 - Disclosure - Commitments and Contingencies - Lease Cost (Details)", "role": "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails", "shortName": "Commitments and Contingencies - Lease Cost (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R67": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2455436 - Disclosure - Commitments and Contingencies - Other Lease Information (Details)", "role": "http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails", "shortName": "Commitments and Contingencies - Other Lease Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R68": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeasePayments", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2456437 - Disclosure - Commitments and Contingencies - Cash Paid for Lease Obligations (Details)", "role": "http://www.codexis.com/role/CommitmentsandContingenciesCashPaidforLeaseObligationsDetails", "shortName": "Commitments and Contingencies - Cash Paid for Lease Obligations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeasePayments", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R69": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2457438 - Disclosure - Commitments and Contingencies - Future Minimum Lease Payments (Details)", "role": "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails", "shortName": "Commitments and Contingencies - Future Minimum Lease Payments (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1006007 - Statement - Condensed Consolidated Statements of Cash Flows", "role": "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows", "shortName": "Condensed Consolidated Statements of Cash Flows", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "-3", "lang": "en-US", "name": "cdxs:LeaseRightofUseAssetAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R70": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:SupplyCommitmentTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i97907c5b2d884355b518f0bb0609b31b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:SignificantSupplyCommitmentRemainingMinimumAmountCommitted", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2458439 - Disclosure - Commitments and Contingencies - Other Commitments (Details)", "role": "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails", "shortName": "Commitments and Contingencies - Other Commitments (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:SupplyCommitmentTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i97907c5b2d884355b518f0bb0609b31b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:SignificantSupplyCommitmentRemainingMinimumAmountCommitted", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R71": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i79a1598048cf4b6bb4b0fcd964def50d_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromRelatedParties", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2460440 - Disclosure - Related Party - AstraZeneca PLC (Details)", "role": "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails", "shortName": "Related Party - AstraZeneca PLC (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i79a1598048cf4b6bb4b0fcd964def50d_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromRelatedParties", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R72": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PaymentsToAcquireOtherInvestments", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2461441 - Disclosure - Related Party - Molecular Assemblies, Inc. (Details)", "role": "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "shortName": "Related Party - Molecular Assemblies, Inc. (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R73": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i0c579f90083a4794999ebb5051b8c764_I20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "reportCount": 1, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2462442 - Disclosure - Related Party - Performance Period (Details)", "role": "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails", "shortName": "Related Party - Performance Period (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R74": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:NumberOfOperatingSegments", "reportCount": 1, "unique": true, "unitRef": "segment", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2465443 - Disclosure - Segment, Geographical and Other Revenue Information - Textual (Details)", "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTextualDetails", "shortName": "Segment, Geographical and Other Revenue Information - Textual (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:NumberOfOperatingSegments", "reportCount": 1, "unique": true, "unitRef": "segment", "xsiNil": "false" } }, "R75": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2466444 - Disclosure - Segment, Geographical and Other Revenue Information - Segment Reporting (Details)", "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails", "shortName": "Segment, Geographical and Other Revenue Information - Segment Reporting (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i7ad8d358e9ed4454963da077eb24b08f_D20200401-20200630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R76": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2467445 - Disclosure - Segment, Geographical and Other Revenue Information - Concentration Risk (Details)", "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails", "shortName": "Segment, Geographical and Other Revenue Information - Concentration Risk (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id0c8397736c64620abb45f5c16e5e922_D20200401-20200630", "decimals": "2", "lang": "en-US", "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R77": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9ad077002490435889870fb332037b66_D20200401-20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2468446 - Disclosure - Segment, Geographical and Other Revenue Information - Revenues by Geographic Area (Details)", "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails", "shortName": "Segment, Geographical and Other Revenue Information - Revenues by Geographic Area (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R78": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentNet", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2469447 - Disclosure - Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details)", "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails", "shortName": "Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i13f90f63d42a415ab3594d200615b977_I20200630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentNet", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R79": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2470448 - Disclosure - Segment, Geographical and Other Revenue Information - Goodwill (Details)", "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails", "shortName": "Segment, Geographical and Other Revenue Information - Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "iff6b4b1f218a4168a30a111e880c4247_I20200630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:Goodwill", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NatureOfOperations", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2101101 - Disclosure - Description of Business", "role": "http://www.codexis.com/role/DescriptionofBusiness", "shortName": "Description of Business", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NatureOfOperations", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R80": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i291483f99066475692591441bbfbf9ed_I20191231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForNotesAndLoansReceivableCurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2473449 - Disclosure - Allowance for Credit Losses - Analysis of Allowance for Credit Losses (Details)", "role": "http://www.codexis.com/role/AllowanceforCreditLossesAnalysisofAllowanceforCreditLossesDetails", "shortName": "Allowance for Credit Losses - Analysis of Allowance for Credit Losses (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": "-3", "lang": "en-US", "name": "us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R81": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PastDueFinancingReceivablesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FinancingReceivableRecordedInvestmentPastDue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2474450 - Disclosure - Allowance for Credit Losses - Summary of Finance Receivables by Aging Category (Details)", "role": "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails", "shortName": "Allowance for Credit Losses - Summary of Finance Receivables by Aging Category (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PastDueFinancingReceivablesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "id28e50666bf1404f915e9a409e50bf6b_I20200630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FinancingReceivableRecordedInvestmentPastDue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2103102 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies", "role": "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies", "shortName": "Basis of Presentation and Summary of Significant Accounting Policies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i9c056b2c6e67498dada104ac9eea0f4c_D20200101-20200630", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9999": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i0c1f3517fa1149469d1b78a9fd89c480_I20190630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RestrictedCashAndCashEquivalents", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "", "isDefault": "false", "longName": "Uncategorized Items - cdxs-20200630.htm", "role": "http://xbrl.sec.gov/role/uncategorizedFacts", "shortName": "Uncategorized Items - cdxs-20200630.htm", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200630.htm", "contextRef": "i0c1f3517fa1149469d1b78a9fd89c480_I20190630", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RestrictedCashAndCashEquivalents", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } } }, "segmentCount": 110, "tag": { "cdxs_A101SaginawMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "101 Saginaw", "label": "101 Saginaw [Member]", "terseLabel": "101 Saginaw [Member]" } } }, "localname": "A101SaginawMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "cdxs_A200220PenobscotMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "200-220 Penobscot", "label": "200-220 Penobscot [Member]", "terseLabel": "200-220 Penobscot [Member]" } } }, "localname": "A200220PenobscotMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "cdxs_A2018PSUandPBOPlanMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "2018 PSU and PBO Plan [Member]", "label": "2018 PSU and PBO Plan [Member]", "terseLabel": "2018 PSU and PBO Plan [Member]" } } }, "localname": "A2018PSUandPBOPlanMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "domainItemType" }, "cdxs_A2019PSUandPBOPlanMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "2019 PSU and PBO Plan [Member]", "label": "2019 PSU and PBO Plan [Member]", "terseLabel": "2019 PSU and PBO Plan [Member]" } } }, "localname": "A2019PSUandPBOPlanMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "domainItemType" }, "cdxs_A2019PlanMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "2019 Plan [Member]", "label": "2019 Plan [Member]", "terseLabel": "2019 Plan [Member]" } } }, "localname": "A2019PlanMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationEquityIncentivePlansDetails", "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "domainItemType" }, "cdxs_A2020PSUAndPBOPlanMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "2020 PSU and PBO Plan", "label": "2020 PSU and PBO Plan [Member]", "terseLabel": "2020 PSU and PBO Plan [Member]" } } }, "localname": "A2020PSUAndPBOPlanMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "domainItemType" }, "cdxs_A400PenoscotMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "400 Penoscot", "label": "400 Penoscot [Member]", "terseLabel": "400 Penoscot [Member]" } } }, "localname": "A400PenoscotMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "cdxs_A501ChesapeakeMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "501 Chesapeake", "label": "501 Chesapeake [Member]", "terseLabel": "501 Chesapeake [Member]" } } }, "localname": "A501ChesapeakeMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "cdxs_APACMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Regions of Australia, New Zealand, Southeast Asia and China", "label": "APAC [Member]", "terseLabel": "APAC [Member]" } } }, "localname": "APACMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "cdxs_AdjustmentsToAdditionalPaidInCapitalNonEmployeeShareBasedCompensation": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Adjustments to additional paid in capital non-employee share based compensation.", "label": "Adjustments To Additional Paid In Capital Non-Employee Share based Compensation", "terseLabel": "Non-employee stock-based compensation" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalNonEmployeeShareBasedCompensation", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "cdxs_AgreementDateAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Agreement Date [Axis]", "label": "Agreement Date [Axis]", "terseLabel": "Agreement Date [Axis]" } } }, "localname": "AgreementDateAxis", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "stringItemType" }, "cdxs_AgreementDateDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "[Domain] for Agreement Date [Axis]", "label": "Agreement Date [Domain]", "terseLabel": "Agreement Date [Domain]" } } }, "localname": "AgreementDateDomain", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "domainItemType" }, "cdxs_AgreementTypeAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Agreement Type [Axis]", "label": "Agreement Type [Axis]", "terseLabel": "Agreement Type [Axis]" } } }, "localname": "AgreementTypeAxis", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails" ], "xbrltype": "stringItemType" }, "cdxs_AgreementTypeDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "[Domain] for Agreement Type [Axis]", "label": "Agreement Type [Domain]", "terseLabel": "Agreement Type [Domain]" } } }, "localname": "AgreementTypeDomain", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_April2016Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "April 2016 [Member]", "label": "April 2016 [Member]", "terseLabel": "April 2016 [Member]" } } }, "localname": "April2016Member", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "domainItemType" }, "cdxs_BalanceSheetDetailsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Balance Sheet Details [Abstract]", "label": "Balance Sheet Details [Abstract]", "terseLabel": "Balance Sheet Details [Abstract]" } } }, "localname": "BalanceSheetDetailsAbstract", "nsuri": "http://www.codexis.com/20200630", "xbrltype": "stringItemType" }, "cdxs_BalanceSheetsDetailsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "-- None. No documentation exists for this element. --", "label": "Balance Sheets Details [Abstract]", "terseLabel": "Balance Sheets Details [Abstract]" } } }, "localname": "BalanceSheetsDetailsAbstract", "nsuri": "http://www.codexis.com/20200630", "xbrltype": "stringItemType" }, "cdxs_BalanceSheetsDetailsTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Balance sheets details.", "label": "Balance Sheets Details [Text Block]", "verboseLabel": "Balance Sheets Details" } } }, "localname": "BalanceSheetsDetailsTextBlock", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetails" ], "xbrltype": "textBlockItemType" }, "cdxs_BiotherapeuticSegmentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Biotherapeutic Segment [Member]", "label": "Biotherapeutic Segment [Member]", "verboseLabel": "Novel Biotherapeutics [Member]" } } }, "localname": "BiotherapeuticSegmentMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "cdxs_CDX6114Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "CDX-6114 [Member]", "label": "CDX-6114 [Member]", "terseLabel": "CDX-6114 [Member]" } } }, "localname": "CDX6114Member", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "domainItemType" }, "cdxs_CashEquivalentsAndInvestmentTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Cash Equivalents And Investment", "label": "Cash Equivalents And Investment [Text Block]", "terseLabel": "Cash Equivalents and Equity Securities" } } }, "localname": "CashEquivalentsAndInvestmentTextBlock", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecurities" ], "xbrltype": "textBlockItemType" }, "cdxs_CashEquivalentsAndMarketableSecuritiesLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Cash equivalents and marketable securities.", "label": "Cash Equivalents and Marketable Securities [Line Items]", "terseLabel": "Cash Equivalents and Marketable Securities [Line Items]" } } }, "localname": "CashEquivalentsAndMarketableSecuritiesLineItems", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesComponentsofCashEquivalentsDetails" ], "xbrltype": "stringItemType" }, "cdxs_CashEquivalentsandMarketableSecuritiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Cash Equivalents and Marketable Securities [Abstract]", "label": "Cash Equivalents and Marketable Securities [Abstract]", "terseLabel": "Cash Equivalents and Marketable Securities [Abstract]" } } }, "localname": "CashEquivalentsandMarketableSecuritiesAbstract", "nsuri": "http://www.codexis.com/20200630", "xbrltype": "stringItemType" }, "cdxs_CollaborativeArrangementNumberOfAdditionalPrograms": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Collaborative Arrangement, Number Of Additional Programs", "label": "Collaborative Arrangement, Number Of Additional Programs", "terseLabel": "Number of additional programs" } } }, "localname": "CollaborativeArrangementNumberOfAdditionalPrograms", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "integerItemType" }, "cdxs_CollaborativeArrangementNumberOfInitialPrograms": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Collaborative Arrangement, Number Of Initial Programs", "label": "Collaborative Arrangement, Number Of Initial Programs", "terseLabel": "Number of initial programs" } } }, "localname": "CollaborativeArrangementNumberOfInitialPrograms", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "integerItemType" }, "cdxs_CollaborativeResearchandDevelopmentAgreementOptionalExtensionPeriod": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Collaborative Research and Development Agreement, Optional Extension Period", "label": "Collaborative Research and Development Agreement, Optional Extension Period", "terseLabel": "Optional extension period" } } }, "localname": "CollaborativeResearchandDevelopmentAgreementOptionalExtensionPeriod", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails" ], "xbrltype": "durationItemType" }, "cdxs_CommercializationAndEnzymeSupplyAgreementMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Commercialization And Enzyme Supply Agreement", "label": "Commercialization And Enzyme Supply Agreement [Member]", "terseLabel": "CESA [Member]" } } }, "localname": "CommercializationAndEnzymeSupplyAgreementMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails" ], "xbrltype": "domainItemType" }, "cdxs_CommitmentsAndContingenciesLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Commitments and contingencies.", "label": "Commitments and Contingencies [Line Items]", "terseLabel": "Commitments and Contingencies [Line Items]" } } }, "localname": "CommitmentsAndContingenciesLineItems", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "stringItemType" }, "cdxs_ComputerEquipmentAndSoftwareMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Computer Equipment and Software [Member]", "label": "Computer Equipment and Software [Member]", "terseLabel": "Computer Equipment and Software [Member]" } } }, "localname": "ComputerEquipmentAndSoftwareMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_ContractWithCustomerSalesMilestone": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Contract With Customer, Sales Milestone", "label": "Contract With Customer, Sales Milestone", "terseLabel": "Aggregate commercial sales, milestone" } } }, "localname": "ContractWithCustomerSalesMilestone", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "monetaryItemType" }, "cdxs_ContractwithCustomerLiabilityNewActivitiesPerformanceObligationSatisfiedRevenueRecognition": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails": { "order": 1.0, "parentTag": "us-gaap_ContractWithCustomerLiabilityRevenueRecognized", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Contract with Customer, Liability, New Activities, Performance Obligation Satisfied, Revenue Recognition", "label": "Contract with Customer, Liability, New Activities, Performance Obligation Satisfied, Revenue Recognition", "terseLabel": "Performance obligations satisfied from new activities in the period - contract revenue" } } }, "localname": "ContractwithCustomerLiabilityNewActivitiesPerformanceObligationSatisfiedRevenueRecognition", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "xbrltype": "monetaryItemType" }, "cdxs_CoreSegmentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Core Segment [Member]", "label": "Core Segment [Member]", "verboseLabel": "Performance Enzymes [Member]" } } }, "localname": "CoreSegmentMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "cdxs_CustomerAMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Customer A [Member]", "label": "Customer A [Member]", "terseLabel": "Customer A [Member]" } } }, "localname": "CustomerAMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "cdxs_CustomerBMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Customer B [Member]", "label": "Customer B [Member]", "terseLabel": "Customer B [Member]" } } }, "localname": "CustomerBMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "cdxs_CustomerCMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Customer C [Member]", "label": "Customer C [Member]", "terseLabel": "Customer C [Member]" } } }, "localname": "CustomerCMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "cdxs_CustomerDMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Customer D [Member]", "label": "Customer D [Member]", "terseLabel": "Customer D [Member]" } } }, "localname": "CustomerDMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "cdxs_CustomerEMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Customer E", "label": "Customer E [Member]", "terseLabel": "Customer E [Member]" } } }, "localname": "CustomerEMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "cdxs_CustomerFMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Customer F", "label": "Customer F [Member]", "terseLabel": "Customer F [Member]" } } }, "localname": "CustomerFMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "cdxs_FinanceLeaseCost": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails": { "order": 2.0, "parentTag": "us-gaap_LeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Finance Lease, Cost", "label": "Finance Lease, Cost", "totalLabel": "Finance lease costs" } } }, "localname": "FinanceLeaseCost", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "cdxs_GSKMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "GSK [Member]", "label": "GSK [Member]", "terseLabel": "GSK [Member]" } } }, "localname": "GSKMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_GlobalDevelopmentOptionandLicenseAgreementMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Global Development, Option and License Agreement [Member]", "label": "Global Development, Option and License Agreement [Member]", "terseLabel": "Global Development, Option and License Agreement [Member]" } } }, "localname": "GlobalDevelopmentOptionandLicenseAgreementMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "cdxs_GoodwillAllocatedPercent": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Goodwill, Allocated Percent", "label": "Goodwill, Allocated Percent", "terseLabel": "Goodwill, allocated percent" } } }, "localname": "GoodwillAllocatedPercent", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails" ], "xbrltype": "percentItemType" }, "cdxs_IncentiveStockOptionsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Incentive Stock Options [Member]", "label": "Incentive Stock Options [Member]", "terseLabel": "Incentive Stock Options [Member]" } } }, "localname": "IncentiveStockOptionsMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails" ], "xbrltype": "domainItemType" }, "cdxs_LaboratoryEquipmentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Laboratory Equipment [Member]", "label": "Laboratory Equipment [Member]", "terseLabel": "Laboratory equipment [Member]" } } }, "localname": "LaboratoryEquipmentMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "cdxs_LeaseRightofUseAssetAmortization": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Lease, Right-of-Use Asset, Amortization", "label": "Lease, Right-of-Use Asset, Amortization", "verboseLabel": "Amortization expense - right-of-use assets - operating and finance leases" } } }, "localname": "LeaseRightofUseAssetAmortization", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "cdxs_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 5.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Lessee, Operating Lease, Liability, to be Paid, After Year Four", "label": "Lessee, Operating Lease, Liability, to be Paid, After Year Four", "terseLabel": "2025 and thereafter" } } }, "localname": "LesseeOperatingLeaseLiabilityToBePaidAfterYearFour", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "cdxs_LicenseFeeMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "License Fee", "label": "License Fee [Member]", "terseLabel": "License Fee [Member]" } } }, "localname": "LicenseFeeMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_LineofCreditFacilityAccountsReceivableBorrowingBasePercentage": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line of Credit Facility, Accounts Receivable Borrowing Base Percentage", "label": "Line of Credit Facility, Accounts Receivable Borrowing Base Percentage", "terseLabel": "Accounts receivable borrowing base percentage" } } }, "localname": "LineofCreditFacilityAccountsReceivableBorrowingBasePercentage", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "percentItemType" }, "cdxs_March2020Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "March 2020", "label": "March 2020 [Member]", "terseLabel": "March 2020 [Member]" } } }, "localname": "March2020Member", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "domainItemType" }, "cdxs_MasterCollaborationResearchAgreementMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Master Collaboration & Research Agreement", "label": "Master Collaboration & Research Agreement [Member]", "terseLabel": "MCRA [Member]" } } }, "localname": "MasterCollaborationResearchAgreementMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails" ], "xbrltype": "domainItemType" }, "cdxs_MerckMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Merck [Member]", "label": "Merck [Member]", "terseLabel": "Merck [Member]" } } }, "localname": "MerckMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_MilestoneOneMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Milestone One [Member]", "label": "Milestone One [Member]", "terseLabel": "Milestone One [Member]" } } }, "localname": "MilestoneOneMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_MilestonePaymentPerTargetGeneMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Milestone Payment Per Target Gene", "label": "Milestone Payment Per Target Gene [Member]", "terseLabel": "Milestone Payment Per Target Gene [Member]" } } }, "localname": "MilestonePaymentPerTargetGeneMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_MilestoneThreeMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Milestone Three", "label": "Milestone Three [Member]", "terseLabel": "Milestone Three [Member]" } } }, "localname": "MilestoneThreeMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_MilestoneTwoMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Milestone Two [Member]", "label": "Milestone Two [Member]", "terseLabel": "Milestone Two [Member]" } } }, "localname": "MilestoneTwoMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_MolecularAssembliesIncMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Molecular Assemblies, Inc.", "label": "Molecular Assemblies, Inc. [Member]", "terseLabel": "Molecular Assemblies, Inc. [Member]" } } }, "localname": "MolecularAssembliesIncMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails", "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails" ], "xbrltype": "domainItemType" }, "cdxs_NestecLtd.NestleHealthSciencesMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Nestec Ltd. (Nestle Health Sciences) [Member]", "label": "Nestec Ltd. (Nestle Health Sciences) [Member]", "terseLabel": "Nestec Ltd. (Nestle Health Sciences) [Member]" } } }, "localname": "NestecLtd.NestleHealthSciencesMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "cdxs_NonStatutoryStockOptionsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Non-Statutory Stock Options [Member]", "label": "Non-Statutory Stock Options [Member]", "terseLabel": "Non-Statutory Stock Options [Member]" } } }, "localname": "NonStatutoryStockOptionsMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails" ], "xbrltype": "domainItemType" }, "cdxs_NonemployeeContractPeriod": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Nonemployee, Contract Period", "label": "Nonemployee, Contract Period", "terseLabel": "Contract term as BOD member" } } }, "localname": "NonemployeeContractPeriod", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails" ], "xbrltype": "durationItemType" }, "cdxs_NovartisMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Novartis [Member]", "label": "Novartis [Member]", "terseLabel": "Novartis [Member]" } } }, "localname": "NovartisMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_NovelBiotherapeuticsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Novel Biotherapeutics [Member]", "label": "Novel Biotherapeutics [Member]", "terseLabel": "Novel Biotherapeutics [Member]" } } }, "localname": "NovelBiotherapeuticsMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails" ], "xbrltype": "domainItemType" }, "cdxs_OfficeEquipmentAndFurnitureMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Office Equipment and Furniture [Member]", "label": "Office Equipment and Furniture [Member]", "terseLabel": "Office equipment and furniture [Member]" } } }, "localname": "OfficeEquipmentAndFurnitureMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "cdxs_PercentofVotingInterestsThresholdtotriggerhigherexerciseprice": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Percent of Voting Interests Threshold to trigger higher exercise price", "label": "Percent of Voting Interests Threshold to trigger higher exercise price", "terseLabel": "Percent of voting interests" } } }, "localname": "PercentofVotingInterestsThresholdtotriggerhigherexerciseprice", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails" ], "xbrltype": "percentItemType" }, "cdxs_PerformanceBasedOptionsPBOsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Performance Based Options (PBOs) [Member]", "label": "Performance Based Options (PBOs) [Member]", "verboseLabel": "PBOs [Member]" } } }, "localname": "PerformanceBasedOptionsPBOsMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "cdxs_PerformanceEnzymesMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Performance Enzymes [Member]", "label": "Performance Enzymes [Member]", "terseLabel": "Performance Enzymes [Member]" } } }, "localname": "PerformanceEnzymesMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails" ], "xbrltype": "domainItemType" }, "cdxs_PerformanceStockUnitsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Performance Stock Units [Member]", "label": "Performance Stock Units [Member]", "verboseLabel": "PSUs [Member]" } } }, "localname": "PerformanceStockUnitsMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "cdxs_PortonMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Porton [Member]", "label": "Porton [Member]", "terseLabel": "Porton [Member]" } } }, "localname": "PortonMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_ProductSalesMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Product Sales [Member]", "label": "Product Sales [Member]", "terseLabel": "Product Sales [Member]" } } }, "localname": "ProductSalesMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "cdxs_RSAsandRSUsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "RSAs and RSUs [Member]", "label": "RSAs and RSUs [Member]", "verboseLabel": "RSUs and RSAs [Member]" } } }, "localname": "RSAsandRSUsMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "cdxs_ResearchAndDevelopmentAgreementTermBonusGoalMetMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Research And Development Agreement Term, Bonus Goal Met", "label": "Research And Development Agreement Term, Bonus Goal Met [Member]", "terseLabel": "Bonus Goal Met [Member]" } } }, "localname": "ResearchAndDevelopmentAgreementTermBonusGoalMetMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "domainItemType" }, "cdxs_ResearchAndDevelopmentAgreementTermFixedConsiderationMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Research And Development Agreement Term, Fixed Consideration", "label": "Research And Development Agreement Term, Fixed Consideration [Member]", "terseLabel": "Fixed Consideration [Member]" } } }, "localname": "ResearchAndDevelopmentAgreementTermFixedConsiderationMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "domainItemType" }, "cdxs_ResearchAndDevelopmentReimbursementMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Research and Development Reimbursement", "label": "Research and Development Reimbursement [Member]", "terseLabel": "Research and Development Reimbursement [Member]" } } }, "localname": "ResearchAndDevelopmentReimbursementMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_ResearchandDevelopmentAgreementMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Research and Development Agreement [Member]", "label": "Research and Development Agreement [Member]", "terseLabel": "Research and Development Agreement [Member]" } } }, "localname": "ResearchandDevelopmentAgreementMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_ResearchandDevelopmentRevenueMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Research and Development Revenue [Member]", "label": "Research and Development Revenue [Member]", "terseLabel": "Research and Development Revenue [Member]" } } }, "localname": "ResearchandDevelopmentRevenueMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "cdxs_RevenueRecognitionContingentAnnualReceivableIncrease": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Revenue Recognition, Contingent Annual Receivable Increase", "label": "Revenue Recognition, Contingent Annual Receivable Increase", "terseLabel": "Contingent annual receivable increase" } } }, "localname": "RevenueRecognitionContingentAnnualReceivableIncrease", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails" ], "xbrltype": "monetaryItemType" }, "cdxs_RevenueRecognitionContingentReceivable": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Revenue Recognition, Contingent Receivable", "label": "Revenue Recognition, Contingent Receivable", "terseLabel": "Contingent receivable" } } }, "localname": "RevenueRecognitionContingentReceivable", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails" ], "xbrltype": "monetaryItemType" }, "cdxs_RevenueRecognitionDurationtoPayAfterMilestoneAchievement": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Revenue Recognition, Duration to Pay After Milestone Achievement", "label": "Revenue Recognition, Duration to Pay After Milestone Achievement", "terseLabel": "Duration to pay after milestone achievement (in days)" } } }, "localname": "RevenueRecognitionDurationtoPayAfterMilestoneAchievement", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "durationItemType" }, "cdxs_RevenueRecognitionMilestonePaymentAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Revenue Recognition, Milestone Payment Amount", "label": "Revenue Recognition, Milestone Payment Amount", "terseLabel": "Milestone payment amount" } } }, "localname": "RevenueRecognitionMilestonePaymentAmount", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "monetaryItemType" }, "cdxs_RevenueRecognitionMilestoneRevenueNumberofDaysforPayment": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Revenue Recognition, Milestone Revenue, Number of Days for Payment", "label": "Revenue Recognition, Milestone Revenue, Number of Days for Payment", "terseLabel": "Number of days for payment" } } }, "localname": "RevenueRecognitionMilestoneRevenueNumberofDaysforPayment", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "durationItemType" }, "cdxs_RevenueRecognitionTargetSalesForSalesMilestone": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Revenue Recognition, Target Sales for Sales Milestone", "label": "Revenue Recognition, Target Sales for Sales Milestone", "terseLabel": "Target sales for milestone" } } }, "localname": "RevenueRecognitionTargetSalesForSalesMilestone", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails" ], "xbrltype": "monetaryItemType" }, "cdxs_RocheMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Roche", "label": "Roche [Member]", "terseLabel": "Roche [Member]" } } }, "localname": "RocheMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_SalesBasedMilestoneMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Sales-Based Milestone [Member]", "label": "Sales-Based Milestone [Member]", "terseLabel": "Sales-Based Milestone [Member]" } } }, "localname": "SalesBasedMilestoneMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_ScheduleOfCashEquivalentsAndMarketableSecuritiesTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Schedule of cash equivalents and marketable securities.", "label": "Schedule of Cash Equivalents and Marketable Securities [Table]", "terseLabel": "Schedule of Cash Equivalents and Marketable Securities [Table]" } } }, "localname": "ScheduleOfCashEquivalentsAndMarketableSecuritiesTable", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesComponentsofCashEquivalentsDetails" ], "xbrltype": "stringItemType" }, "cdxs_ScheduleOfCommitmentsAndContingenciesTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Schedule of commitments and contingencies.", "label": "Schedule of Commitments and Contingencies [Table]", "terseLabel": "Schedule of Commitments and Contingencies [Table]" } } }, "localname": "ScheduleOfCommitmentsAndContingenciesTable", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "stringItemType" }, "cdxs_September2019Member": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "September 2019 [Member]", "label": "September 2019 [Member]", "terseLabel": "September 2019 [Member]" } } }, "localname": "September2019Member", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "domainItemType" }, "cdxs_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantedInPeriodFairValue": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Share-Based Compensation Arrangement By Share-Based Payment Award, Options, Granted In Period, Fair Value", "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Options, Granted In Period, Fair Value", "terseLabel": "Fair value of options granted" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantedInPeriodFairValue", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "cdxs_ShareBasedCompensationArrangementByShareBasedPaymentAwardPurchasePriceOfCommonStockAboveMinimumThresholdPercent": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock Above Minimum Threshold, Percent", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock Above Minimum Threshold, Percent", "terseLabel": "Purchase price of common stock above minimum threshold" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardPurchasePriceOfCommonStockAboveMinimumThresholdPercent", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails" ], "xbrltype": "percentItemType" }, "cdxs_SharebasedCompensationArrangementbySharebasedPaymentAwardEstimatedPerformanceGoalAchievementRate": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Estimated Performance Goal Achievement Rate", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Estimated Performance Goal Achievement Rate", "terseLabel": "Estimated performance goal achievement rate" } } }, "localname": "SharebasedCompensationArrangementbySharebasedPaymentAwardEstimatedPerformanceGoalAchievementRate", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "percentItemType" }, "cdxs_SharebasedCompensationArrangementbySharebasedPaymentAwardNumberofInstallments": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Installments", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Installments", "terseLabel": "Number of installments" } } }, "localname": "SharebasedCompensationArrangementbySharebasedPaymentAwardNumberofInstallments", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "integerItemType" }, "cdxs_SharebasedCompensationArrangementbySharebasedPaymentAwardPerformanceAwardsThresholdLevelNumberofSharesMultiplier": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Performance Awards, Threshold Level, Number of Shares, Multiplier", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Performance Awards, Threshold Level, Number of Shares, Multiplier", "terseLabel": "Performance awards, threshold level, number of shares, multiplier" } } }, "localname": "SharebasedCompensationArrangementbySharebasedPaymentAwardPerformanceAwardsThresholdLevelNumberofSharesMultiplier", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "pureItemType" }, "cdxs_StrategicCollaborationAgreementMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Strategic Collaboration Agreement [Member]", "label": "Strategic Collaboration Agreement [Member]", "terseLabel": "Strategic Collaboration Agreement [Member]" } } }, "localname": "StrategicCollaborationAgreementMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_SubleaseMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Sublease", "label": "Sublease [Member]", "terseLabel": "Sublease [Member]" } } }, "localname": "SubleaseMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "cdxs_SupplyAgreementMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Supply Agreement [Member]", "label": "Supply Agreement [Member]", "terseLabel": "Supply Agreement [Member]" } } }, "localname": "SupplyAgreementMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsEnzymeSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_TakedaPharmaceuticalCoLtdMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Takeda Pharmaceutical Co. Ltd.", "label": "Takeda Pharmaceutical Co. Ltd. [Member]", "terseLabel": "Takeda [Member]" } } }, "localname": "TakedaPharmaceuticalCoLtdMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "domainItemType" }, "cdxs_TechnologyTransferCollaborationandLicenseAgreementMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Technology Transfer, Collaboration and License Agreement [Member]", "label": "Technology Transfer, Collaboration and License Agreement [Member]", "terseLabel": "Technology Transfer, Collaboration and License Agreement [Member]" } } }, "localname": "TechnologyTransferCollaborationandLicenseAgreementMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails" ], "xbrltype": "domainItemType" }, "cdxs_TermLoanMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Term Loan [Member]", "label": "Term Loan [Member]", "terseLabel": "Term Loan [Member]" } } }, "localname": "TermLoanMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "cdxs_TermOfCollaborativeResearchAndDevelopmentAgreement": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Term of collaborative research and development agreement.", "label": "Term of Collaborative Research and Development Agreement", "verboseLabel": "Term of collaborative research and development agreement" } } }, "localname": "TermOfCollaborativeResearchAndDevelopmentAgreement", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails" ], "xbrltype": "durationItemType" }, "cdxs_TransactionsWithAstraZenecaPLCMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Transactions With AstraZeneca PLC", "label": "Transactions With AstraZeneca PLC [Member]", "terseLabel": "Transactions With AstraZeneca PLC [Member]" } } }, "localname": "TransactionsWithAstraZenecaPLCMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails" ], "xbrltype": "domainItemType" }, "cdxs_UpFrontPaymentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Up-front Payment", "label": "Up-front Payment [Member]", "terseLabel": "Up-front Payment [Member]" } } }, "localname": "UpFrontPaymentMember", "nsuri": "http://www.codexis.com/20200630", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails" ], "xbrltype": "domainItemType" }, "country_US": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "UNITED STATES", "terseLabel": "United States [Member]" } } }, "localname": "US", "nsuri": "http://xbrl.sec.gov/country/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag", "terseLabel": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Area code of city", "label": "City Area Code", "terseLabel": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_CoverAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Cover page.", "label": "Cover [Abstract]", "terseLabel": "Cover page." } } }, "localname": "CoverAbstract", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "xbrltype": "stringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date", "terseLabel": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus", "terseLabel": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "This is focus fiscal year of the document report in CCYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus", "terseLabel": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "gYearItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The end date of the period reflected on the cover page if a periodic report. For all other reports and registration statements containing historical data, it is the date up through which that historical data is presented. If there is no historical data in the report, use the filing date. The format of the date is CCYY-MM-DD.", "label": "Document Period End Date", "terseLabel": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r487" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report", "terseLabel": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r488" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report", "terseLabel": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type", "terseLabel": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One", "terseLabel": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town", "terseLabel": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code", "terseLabel": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address, State or Province", "terseLabel": "Entity Address, State or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r489" ], "lang": { "en-US": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key", "terseLabel": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding", "terseLabel": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status", "terseLabel": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r489" ], "lang": { "en-US": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company", "terseLabel": "Entity Emerging Growth" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number", "terseLabel": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r489" ], "lang": { "en-US": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category", "terseLabel": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code", "terseLabel": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r490" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current", "terseLabel": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r489" ], "lang": { "en-US": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name", "terseLabel": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r489" ], "lang": { "en-US": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company", "terseLabel": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r489" ], "lang": { "en-US": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business", "terseLabel": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r489" ], "lang": { "en-US": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number", "terseLabel": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "employerIdItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number", "terseLabel": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r485" ], "lang": { "en-US": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Title of 12(b) Security", "terseLabel": "Title of 12(b) Security" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r486" ], "lang": { "en-US": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name", "terseLabel": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol", "terseLabel": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2019-01-31", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "xbrltype": "tradingSymbolItemType" }, "srt_AmericasMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Americas [Member]", "terseLabel": "Americas [Member]" } } }, "localname": "AmericasMember", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "srt_ConsolidationItemsAxis": { "auth_ref": [ "r144", "r163", "r164", "r165", "r166", "r168", "r170", "r174" ], "lang": { "en-US": { "role": { "label": "Consolidation Items [Axis]", "terseLabel": "Consolidation Items [Axis]" } } }, "localname": "ConsolidationItemsAxis", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "stringItemType" }, "srt_ConsolidationItemsDomain": { "auth_ref": [ "r144", "r163", "r164", "r165", "r166", "r168", "r170", "r174" ], "lang": { "en-US": { "role": { "label": "Consolidation Items [Domain]", "terseLabel": "Consolidation Items [Domain]" } } }, "localname": "ConsolidationItemsDomain", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "srt_CounterpartyNameAxis": { "auth_ref": [ "r50", "r89" ], "lang": { "en-US": { "role": { "label": "Counterparty Name [Axis]", "terseLabel": "Counterparty Name [Axis]" } } }, "localname": "CounterpartyNameAxis", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "srt_DirectorMember": { "auth_ref": [ "r183" ], "lang": { "en-US": { "role": { "label": "Director [Member]", "terseLabel": "Director [Member]" } } }, "localname": "DirectorMember", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails" ], "xbrltype": "domainItemType" }, "srt_EquityMethodInvesteeNameDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Investment, Name [Domain]", "terseLabel": "Investment, Name [Domain]" } } }, "localname": "EquityMethodInvesteeNameDomain", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "domainItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r181", "r273", "r279", "r454" ], "lang": { "en-US": { "role": { "label": "Customer [Axis]", "terseLabel": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "srt_ManagementMember": { "auth_ref": [ "r183", "r393" ], "lang": { "en-US": { "role": { "label": "Management [Member]", "terseLabel": "Management [Member]" } } }, "localname": "ManagementMember", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails" ], "xbrltype": "domainItemType" }, "srt_MaximumMember": { "auth_ref": [ "r296", "r298", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r451", "r455" ], "lang": { "en-US": { "role": { "label": "Maximum [Member]", "terseLabel": "Maximum [Member]" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [ "r296", "r298", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r451", "r455" ], "lang": { "en-US": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum [Member]" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r181", "r273", "r279", "r454" ], "lang": { "en-US": { "role": { "label": "Customer [Domain]", "terseLabel": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "srt_OwnershipAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Ownership [Axis]", "terseLabel": "Ownership [Axis]" } } }, "localname": "OwnershipAxis", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "stringItemType" }, "srt_OwnershipDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Ownership [Domain]", "terseLabel": "Ownership [Domain]" } } }, "localname": "OwnershipDomain", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "domainItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r177", "r273", "r277", "r408", "r450", "r452" ], "lang": { "en-US": { "role": { "label": "Product and Service [Axis]", "terseLabel": "Product and Service [Axis]" } } }, "localname": "ProductOrServiceAxis", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [ "r177", "r273", "r277", "r408", "r450", "r452" ], "lang": { "en-US": { "role": { "label": "Product and Service [Domain]", "terseLabel": "Product and Service [Domain]" } } }, "localname": "ProductsAndServicesDomain", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r286", "r296", "r298", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r451", "r455" ], "lang": { "en-US": { "role": { "label": "Statistical Measurement [Axis]", "terseLabel": "Statistical Measurement [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r286", "r296", "r298", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r451", "r455" ], "lang": { "en-US": { "role": { "label": "Statistical Measurement [Domain]", "terseLabel": "Statistical Measurement [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails" ], "xbrltype": "domainItemType" }, "srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis": { "auth_ref": [ "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482" ], "lang": { "en-US": { "role": { "label": "Name of Property [Axis]", "terseLabel": "Name of Property [Axis]" } } }, "localname": "RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "stringItemType" }, "srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain": { "auth_ref": [ "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482" ], "lang": { "en-US": { "role": { "label": "Name of Property [Domain]", "terseLabel": "Name of Property [Domain]" } } }, "localname": "RealEstateAndAccumulatedDepreciationNameOfPropertyDomain", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "srt_RepurchaseAgreementCounterpartyNameDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Counterparty Name [Domain]", "terseLabel": "Counterparty Name [Domain]" } } }, "localname": "RepurchaseAgreementCounterpartyNameDomain", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "srt_ScenarioForecastMember": { "auth_ref": [ "r297" ], "lang": { "en-US": { "role": { "label": "Forecast [Member]", "terseLabel": "Forecast [Member]" } } }, "localname": "ScenarioForecastMember", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "domainItemType" }, "srt_ScenarioUnspecifiedDomain": { "auth_ref": [ "r297" ], "lang": { "en-US": { "role": { "label": "Scenario [Domain]", "terseLabel": "Scenario [Domain]" } } }, "localname": "ScenarioUnspecifiedDomain", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "domainItemType" }, "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": { "auth_ref": [ "r194" ], "lang": { "en-US": { "role": { "label": "Investment, Name [Axis]", "terseLabel": "Investment, Name [Axis]" } } }, "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "stringItemType" }, "srt_SegmentGeographicalDomain": { "auth_ref": [ "r178", "r179", "r273", "r278", "r453", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482" ], "lang": { "en-US": { "role": { "label": "Geographical [Domain]", "terseLabel": "Geographical [Domain]" } } }, "localname": "SegmentGeographicalDomain", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "srt_StatementGeographicalAxis": { "auth_ref": [ "r178", "r179", "r273", "r278", "r453", "r472", "r475", "r476", "r477", "r478", "r479", "r480", "r481", "r482", "r483" ], "lang": { "en-US": { "role": { "label": "Geographical [Axis]", "terseLabel": "Geographical [Axis]", "verboseLabel": "Geographical [Axis]" } } }, "localname": "StatementGeographicalAxis", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails" ], "xbrltype": "stringItemType" }, "srt_StatementScenarioAxis": { "auth_ref": [ "r241", "r297", "r397" ], "lang": { "en-US": { "role": { "label": "Scenario [Axis]", "terseLabel": "Scenario [Axis]" } } }, "localname": "StatementScenarioAxis", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualAxis": { "auth_ref": [ "r183", "r393" ], "lang": { "en-US": { "role": { "label": "Title of Individual [Axis]", "terseLabel": "Title of Individual [Axis]" } } }, "localname": "TitleOfIndividualAxis", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Title of Individual [Domain]", "terseLabel": "Title of Individual [Domain]" } } }, "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "nsuri": "http://fasb.org/srt/2020-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Accounting Policies [Abstract]", "terseLabel": "Accounting Policies [Abstract]" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_AccountsNotesAndLoansReceivableNetCurrent": { "auth_ref": [ "r4", "r18", "r44", "r184", "r185", "r436" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount, after allowance for credit loss, of accounts and financing receivables, classified as current. Includes, but is not limited to, notes and loan receivable.", "label": "Accounts and Financing Receivable, after Allowance for Credit Loss, Current", "totalLabel": "Total Financial assets, net" } } }, "localname": "AccountsNotesAndLoansReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r34" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts Payable, Current", "verboseLabel": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableGrossCurrent": { "auth_ref": [ "r184", "r185" ], "calculation": { "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_NotesReceivableGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts Receivable, before Allowance for Credit Loss, Current", "terseLabel": "Accounts receivable", "totalLabel": "Total balance" } } }, "localname": "AccountsReceivableGrossCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Due from customers or clients for goods or services that have been delivered or sold.", "label": "Accounts Receivable [Member]", "terseLabel": "Accounts Receivable [Member]" } } }, "localname": "AccountsReceivableMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsReceivableRelatedParties": { "auth_ref": [ "r17", "r87", "r391", "r394", "r442" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "For an unclassified balance sheet, amount of receivables arising from transactions with related parties.", "label": "Accounts Receivable, Related Parties", "terseLabel": "Accounts receivable from related parties" } } }, "localname": "AccountsReceivableRelatedParties", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r37" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsOtherAccruedLiabilitiesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued Liabilities, Current", "totalLabel": "Total", "verboseLabel": "Other accrued liabilities" } } }, "localname": "AccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsOtherAccruedLiabilitiesDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedProfessionalFeesCurrentAndNoncurrent": { "auth_ref": [ "r433", "r446" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsOtherAccruedLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received.", "label": "Accrued Professional Fees", "terseLabel": "Accrued professional and outside service fees" } } }, "localname": "AccruedProfessionalFeesCurrentAndNoncurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsOtherAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "auth_ref": [ "r32", "r228" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails": { "order": 2.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "negatedTerseLabel": "Less: accumulated depreciation and amortization" } } }, "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapital": { "auth_ref": [ "r19", "r326" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders. Includes adjustments to additional paid in capital. Some examples of such adjustments include recording the issuance of debt with a beneficial conversion feature and certain tax consequences of equity instruments awarded to employees. Use this element for the aggregate amount of additional paid-in capital associated with common and preferred stock. For additional paid-in capital associated with only common stock, use the element additional paid in capital, common stock. For additional paid-in capital associated with only preferred stock, use the element additional paid in capital, preferred stock.", "label": "Additional Paid in Capital", "verboseLabel": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapital", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r92", "r93", "r94", "r323", "r324", "r325" ], "lang": { "en-US": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-in Capital [Member]", "terseLabel": "Additional Paid-in Capital [Member]" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement.", "label": "Share-based Payment Arrangement, Decrease for Tax Withholding Obligation", "negatedTerseLabel": "Taxes paid related to net share settlement of equity awards" } } }, "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r300", "r303", "r328", "r329" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.", "label": "APIC, Share-based Payment Arrangement, Increase for Cost Recognition", "verboseLabel": "Employee stock-based compensation" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "verboseLabel": "Adjustments to reconcile net loss to net cash used in operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AllocatedShareBasedCompensationExpense": { "auth_ref": [ "r303", "r315", "r327" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.", "label": "Share-based Payment Arrangement, Expense", "terseLabel": "Stock-based compensation expense" } } }, "localname": "AllocatedShareBasedCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock": { "auth_ref": [ "r188", "r208" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of allowance for credit loss on financing receivable.", "label": "Financing Receivable, Allowance for Credit Loss [Table Text Block]", "terseLabel": "Analysis of allowance for credit losses" } } }, "localname": "AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_AllowanceForNotesAndLoansReceivableCurrent": { "auth_ref": [ "r24", "r189", "r203" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_AccountsNotesAndLoansReceivableNetCurrent", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of allowance for credit loss on financing receivable, classified as current.", "label": "Financing Receivable, Allowance for Credit Loss, Current", "negatedLabel": "Less: allowances", "periodEndLabel": "Ending Balance June 30, 2020", "periodStartLabel": "Beginning Balance January 1, 2020" } } }, "localname": "AllowanceForNotesAndLoansReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesAnalysisofAllowanceforCreditLossesDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r115" ], "lang": { "en-US": { "role": { "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "terseLabel": "Total shares excluded as anti-dilutive (shares)" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "auth_ref": [ "r115" ], "lang": { "en-US": { "role": { "documentation": "Information by type of antidilutive security.", "label": "Antidilutive Securities [Axis]", "terseLabel": "Antidilutive Securities [Axis]" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]", "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "auth_ref": [ "r115" ], "lang": { "en-US": { "role": { "documentation": "Incremental common shares attributable to securities that were not included in diluted earnings per share (EPS) because to do so would increase EPS amounts or decrease loss per share amounts for the period presented.", "label": "Antidilutive Securities, Name [Domain]", "terseLabel": "Antidilutive Securities, Name [Domain]" } } }, "localname": "AntidilutiveSecuritiesNameDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AreaOfRealEstateProperty": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Area of a real estate property.", "label": "Area of Real Estate Property", "terseLabel": "Area of real estate property (square feet)" } } }, "localname": "AreaOfRealEstateProperty", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "areaItemType" }, "us-gaap_ArrangementsAndNonarrangementTransactionsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations.", "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Domain]", "terseLabel": "Collaborative Arrangement and Arrangement Other than Collaborative [Domain]" } } }, "localname": "ArrangementsAndNonarrangementTransactionsMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsEnzymeSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AssetRetirementObligation": { "auth_ref": [ "r233" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The carrying amount of a liability for an asset retirement obligation. An asset retirement obligation is a legal obligation associated with the disposal or retirement of a tangible long-lived asset that results from the acquisition, construction or development, or the normal operations of a long-lived asset, except for certain obligations of lessees.", "label": "Asset Retirement Obligation", "verboseLabel": "Asset retirement obligations" } } }, "localname": "AssetRetirementObligation", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetRetirementObligationAccretionExpense": { "auth_ref": [ "r232", "r234" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of accretion expense recognized during the period that is associated with an asset retirement obligation. Accretion expense measures and incorporates changes due to the passage of time into the carrying amount of the liability.", "label": "Asset Retirement Obligation, Accretion Expense", "terseLabel": "Accretion expense related to asset retirement obligation" } } }, "localname": "AssetRetirementObligationAccretionExpense", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Assets": { "auth_ref": [ "r85", "r152", "r165", "r172", "r196", "r351", "r353", "r363", "r430", "r437" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets", "totalLabel": "Total assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Assets [Abstract]", "verboseLabel": "Assets" } } }, "localname": "AssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r5", "r6", "r49", "r85", "r196", "r351", "r353", "r363" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Current", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Assets, Current [Abstract]", "verboseLabel": "Current assets:" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r304", "r317" ], "lang": { "en-US": { "role": { "documentation": "Information by type of award under share-based payment arrangement.", "label": "Award Type [Axis]", "terseLabel": "Award Type [Axis]" } } }, "localname": "AwardTypeAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails", "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails", "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).", "label": "Basis of Accounting, Policy [Policy Text Block]", "verboseLabel": "Basis of Presentation and Principles of Consolidation" } } }, "localname": "BasisOfAccountingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "auth_ref": [ "r78", "r79", "r80" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred.", "label": "Capital Expenditures Incurred but Not yet Paid", "terseLabel": "Purchase of property and equipment recorded in accounts payable and accrued expenses" } } }, "localname": "CapitalExpendituresIncurredButNotYetPaid", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalLeaseObligationsIncurred": { "auth_ref": [ "r78", "r79" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase in lease obligation from new lease.", "label": "Lease Obligation Incurred", "terseLabel": "Capital lease obligations incurred" } } }, "localname": "CapitalLeaseObligationsIncurred", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalizedContractCostNetCurrent": { "auth_ref": [ "r219" ], "crdr": "debit", "lang": { "en-US": { "role": { "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.", "label": "Capitalized Contract Cost, Net, Current", "terseLabel": "Contract Costs" } } }, "localname": "CapitalizedContractCostNetCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalizedCostsOfUnprovedPropertiesExcludedFromAmortizationByPropertyOrProjectAxis": { "auth_ref": [ "r412", "r413", "r414" ], "lang": { "en-US": { "role": { "documentation": "Information by project.", "label": "Project [Axis]", "terseLabel": "Project [Axis]" } } }, "localname": "CapitalizedCostsOfUnprovedPropertiesExcludedFromAmortizationByPropertyOrProjectAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r2", "r30", "r76" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 }, "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash and Cash Equivalents, at Carrying Value", "terseLabel": "Cash and cash equivalents", "verboseLabel": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesComponentsofCashEquivalentsDetails", "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets", "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Information by type of cash and cash equivalent balance.", "label": "Cash and Cash Equivalents [Axis]", "terseLabel": "Cash and Cash Equivalents [Axis]" } } }, "localname": "CashAndCashEquivalentsAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesComponentsofCashEquivalentsDetails", "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails", "http://www.codexis.com/role/FairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashAndCashEquivalentsFairValueDisclosure": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Fair value portion of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash and Cash Equivalents, Fair Value Disclosure", "terseLabel": "Cash and cash equivalents, fair value", "verboseLabel": "Money market funds" } } }, "localname": "CashAndCashEquivalentsFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesComponentsofCashEquivalentsDetails", "http://www.codexis.com/role/FairValueMeasurementsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Cash and Cash Equivalents [Line Items]", "terseLabel": "Cash and Cash Equivalents [Line Items]" } } }, "localname": "CashAndCashEquivalentsLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r68", "r76", "r81" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "periodEndLabel": "Cash, cash equivalents and restricted cash at the end of the period", "periodStartLabel": "Cash, cash equivalents and restricted cash at the beginning of the period", "totalLabel": "Total cash, cash equivalents and restricted cash at the end of the period" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r68", "r364" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "totalLabel": "Net increase (decrease) in cash, cash equivalents and restricted cash" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashMember": { "auth_ref": [ "r9" ], "lang": { "en-US": { "role": { "documentation": "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.", "label": "Cash [Member]", "terseLabel": "Cash [Member]" } } }, "localname": "CashMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ClassOfStockDomain": { "auth_ref": [ "r83", "r85", "r108", "r109", "r110", "r112", "r114", "r121", "r122", "r123", "r196", "r363" ], "lang": { "en-US": { "role": { "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock.", "label": "Class of Stock [Domain]", "terseLabel": "Class of Stock [Domain]" } } }, "localname": "ClassOfStockDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CollaborativeArrangementDisclosureTextBlock": { "auth_ref": [ "r347", "r348", "r350" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for collaborative arrangements in which the entity is a participant, including a) information about the nature and purpose of such arrangements; b) its rights and obligations thereunder; c) the accounting policy for collaborative arrangements; and d) the income statement classification and amounts attributable to transactions arising from the collaborative arrangement between participants.", "label": "Collaborative Arrangement Disclosure [Text Block]", "terseLabel": "Collaborative Arrangements" } } }, "localname": "CollaborativeArrangementDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangements" ], "xbrltype": "textBlockItemType" }, "us-gaap_CollaborativeArrangementMember": { "auth_ref": [ "r349" ], "lang": { "en-US": { "role": { "documentation": "Contractual arrangement that involves two or more parties that both: (i) actively participate in a joint operating activity and (ii) are exposed to significant risks and rewards that depend on the commercial success of the joint operating activity.", "label": "Collaborative Arrangement [Member]", "terseLabel": "Collaborative Arrangement [Member]" } } }, "localname": "CollaborativeArrangementMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CollaborativeArrangementsAndNoncollaborativeArrangementTransactionsLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]", "terseLabel": "Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]" } } }, "localname": "CollaborativeArrangementsAndNoncollaborativeArrangementTransactionsLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsEnzymeSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r41", "r240", "r434", "r445" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.", "label": "Commitments and Contingencies", "verboseLabel": "Commitments and Contingencies (Note 11)" } } }, "localname": "CommitmentsAndContingencies", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Commitments and Contingencies Disclosure [Abstract]", "terseLabel": "Commitments and Contingencies Disclosure [Abstract]" } } }, "localname": "CommitmentsAndContingenciesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r237", "r238", "r239", "r247" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for commitments and contingencies.", "label": "Commitments and Contingencies Disclosure [Text Block]", "terseLabel": "Commitments and Contingencies" } } }, "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": { "auth_ref": [ "r42" ], "lang": { "en-US": { "role": { "documentation": "Aggregate number of common shares reserved for future issuance.", "label": "Common Stock, Capital Shares Reserved for Future Issuance", "terseLabel": "Maximum number of shares to be issued upon exercise of stock options" } } }, "localname": "CommonStockCapitalSharesReservedForFutureIssuance", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationEquityIncentivePlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r92", "r93" ], "lang": { "en-US": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]", "terseLabel": "Common Stock [Member]" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r16" ], "lang": { "en-US": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common Stock, Par or Stated Value Per Share", "verboseLabel": "Common stock, par value (usd per share)" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r16" ], "lang": { "en-US": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock, shares authorized (shares)" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r16" ], "lang": { "en-US": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, shares, issued (shares)" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r16", "r252" ], "lang": { "en-US": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common Stock, Shares, Outstanding", "terseLabel": "Common stock, shares outstanding (shares)" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r16" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common Stock, Value, Issued", "verboseLabel": "Common stock, $0.0001 par value per share; 100,000 shares authorized; 59,125 shares and 58,877 shares issued and outstanding at June\u00a030, 2020 and December\u00a031, 2019, respectively" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComputerEquipmentMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems.", "label": "Computer Equipment [Member]", "terseLabel": "Computer equipment and software [Member]" } } }, "localname": "ComputerEquipmentMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "auth_ref": [ "r132", "r133", "r181", "r360", "r361" ], "lang": { "en-US": { "role": { "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.", "label": "Concentration Risk Benchmark [Domain]", "terseLabel": "Concentration Risk Benchmark [Domain]" } } }, "localname": "ConcentrationRiskBenchmarkDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "auth_ref": [ "r132", "r133", "r181", "r360", "r361", "r468" ], "lang": { "en-US": { "role": { "documentation": "Information by benchmark of concentration risk.", "label": "Concentration Risk Benchmark [Axis]", "terseLabel": "Concentration Risk Benchmark [Axis]" } } }, "localname": "ConcentrationRiskByBenchmarkAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskByTypeAxis": { "auth_ref": [ "r132", "r133", "r181", "r360", "r361", "r468" ], "lang": { "en-US": { "role": { "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.", "label": "Concentration Risk Type [Axis]", "terseLabel": "Concentration Risk Type [Axis]" } } }, "localname": "ConcentrationRiskByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Concentration Risk [Line Items]", "terseLabel": "Concentration Risk [Line Items]" } } }, "localname": "ConcentrationRiskLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskPercentage1": { "auth_ref": [ "r132", "r133", "r181", "r360", "r361" ], "lang": { "en-US": { "role": { "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.", "label": "Concentration Risk, Percentage", "terseLabel": "Concentration risk, percentage" } } }, "localname": "ConcentrationRiskPercentage1", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ConcentrationRiskTable": { "auth_ref": [ "r129", "r132", "r133", "r134", "r360", "r362" ], "lang": { "en-US": { "role": { "documentation": "Describes the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.", "label": "Concentration Risk [Table]", "terseLabel": "Concentration Risk [Table]" } } }, "localname": "ConcentrationRiskTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskTypeDomain": { "auth_ref": [ "r132", "r133", "r181", "r360", "r361" ], "lang": { "en-US": { "role": { "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration.", "label": "Concentration Risk Type [Domain]", "terseLabel": "Concentration Risk Type [Domain]" } } }, "localname": "ConcentrationRiskTypeDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConstructionInProgressMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.", "label": "Construction in Progress [Member]", "terseLabel": "Construction in progress [Member]" } } }, "localname": "ConstructionInProgressMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "auth_ref": [ "r261" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.", "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]", "terseLabel": "Contract with customer" } } }, "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ContractWithCustomerAssetCreditLossExpense": { "auth_ref": [ "r205", "r259", "r272" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of expense (reversal of expense) for expected credit loss on right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.", "label": "Contract with Customer, Asset, Credit Loss Expense (Reversal)", "terseLabel": "Impairment charges related to contract assets" } } }, "localname": "ContractWithCustomerAssetCreditLossExpense", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetGrossCurrent": { "auth_ref": [ "r255", "r257" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_NotesReceivableGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount, before allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.", "label": "Contract with Customer, Asset, before Allowance for Credit Loss, Current", "terseLabel": "Contract assets" } } }, "localname": "ContractWithCustomerAssetGrossCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets", "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiability": { "auth_ref": [ "r255", "r256", "r274" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "Contract with Customer, Liability", "terseLabel": "Contract with customer, liability", "verboseLabel": "Contract Liabilities: Deferred Revenue" } } }, "localname": "ContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsEnzymeSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized": { "auth_ref": [ "r260" ], "calculation": { "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails": { "order": 2.0, "parentTag": "us-gaap_ContractWithCustomerLiabilityRevenueRecognized", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of revenue recognized arising from contract liability from change in timeframe for performance obligation to be satisfied.", "label": "Contract with Customer, Liability, Change in Timeframe, Performance Obligation Satisfied, Revenue Recognized", "terseLabel": "Performance obligations satisfied" } } }, "localname": "ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice": { "auth_ref": [ "r258" ], "calculation": { "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails": { "order": 3.0, "parentTag": "us-gaap_ContractWithCustomerLiabilityRevenueRecognized", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in revenue recognized for cumulative catch-up adjustment from change in estimate of transaction price which (increases) decreases obligation to transfer good or service to customer for which consideration from customer has been received or is due. Includes, but is not limited to, change in assessment of whether estimate of variable consideration is constrained.", "label": "Contract with Customer, Liability, Cumulative Catch-up Adjustment to Revenue, Change in Estimate of Transaction Price", "terseLabel": "Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods" } } }, "localname": "ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInMeasureOfProgress": { "auth_ref": [ "r258" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in revenue recognized for cumulative catch-up adjustment from change in measure of progress which (increases) decreases obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "Contract with Customer, Liability, Cumulative Catch-up Adjustment to Revenue, Change in Measure of Progress", "terseLabel": "Cumulative catch-up adjustment to revenue, change in measure of progress" } } }, "localname": "ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInMeasureOfProgress", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r255", "r256", "r274" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.", "label": "Contract with Customer, Liability, Current", "terseLabel": "Deferred revenue" } } }, "localname": "ContractWithCustomerLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityNoncurrent": { "auth_ref": [ "r255", "r256", "r274" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent.", "label": "Contract with Customer, Liability, Noncurrent", "verboseLabel": "Deferred revenue, net of current portion" } } }, "localname": "ContractWithCustomerLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r275" ], "calculation": { "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "Contract with Customer, Liability, Revenue Recognized", "terseLabel": "Revenue recognized", "totalLabel": "Total revenues" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CorporateNonSegmentMember": { "auth_ref": [ "r163", "r164", "r165", "r166", "r168", "r174", "r176" ], "lang": { "en-US": { "role": { "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment.", "label": "Corporate, Non-Segment [Member]", "terseLabel": "Corporate [Member]" } } }, "localname": "CorporateNonSegmentMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r57", "r408" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations": { "order": 2.0, "parentTag": "us-gaap_CostsAndExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.", "label": "Cost of Goods and Services Sold", "terseLabel": "Cost of product revenue" } } }, "localname": "CostOfGoodsAndServicesSold", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostsAndExpenses": { "auth_ref": [ "r55" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Total costs of sales and operating expenses for the period.", "label": "Costs and Expenses", "totalLabel": "Total costs and operating expenses" } } }, "localname": "CostsAndExpenses", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CreditFacilityAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Axis]", "terseLabel": "Credit Facility [Axis]" } } }, "localname": "CreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CreditFacilityDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Domain]", "terseLabel": "Credit Facility [Domain]" } } }, "localname": "CreditFacilityDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CreditLossFinancialInstrumentTextBlock": { "auth_ref": [ "r204", "r210", "r211", "r213", "r214", "r217", "r218" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for credit loss on financial instrument measured at amortized cost basis, net investment in lease, off-balance sheet credit exposure, and available-for-sale debt security.", "label": "Credit Loss, Financial Instrument [Text Block]", "terseLabel": "Allowance for Credit Losses" } } }, "localname": "CreditLossFinancialInstrumentTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLosses" ], "xbrltype": "textBlockItemType" }, "us-gaap_CustomerConcentrationRiskMember": { "auth_ref": [ "r130", "r181" ], "lang": { "en-US": { "role": { "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.", "label": "Customer Concentration Risk [Member]", "terseLabel": "Customer Concentration Risk [Member]" } } }, "localname": "CustomerConcentrationRiskMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.", "label": "Debt Instrument, Basis Spread on Variable Rate", "terseLabel": "Basis spread on variable rate (percent)" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "auth_ref": [ "r39" ], "lang": { "en-US": { "role": { "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.", "label": "Debt Instrument, Interest Rate, Stated Percentage", "terseLabel": "Stated interest rate" } } }, "localname": "DebtInstrumentInterestRateStatedPercentage", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DemandDepositsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Accounts that may or may not bear interest and that depositor is entitled to withdraw at anytime without prior notice. Checking and negotiable order of withdrawal (NOW) accounts are the most common forms of demand deposits.", "label": "Demand Deposits [Member]", "terseLabel": "Demand Deposits [Member]" } } }, "localname": "DemandDepositsMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Depreciation": { "auth_ref": [ "r74", "r226" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.", "label": "Depreciation", "negatedTerseLabel": "Depreciation and amortization", "verboseLabel": "Depreciation" } } }, "localname": "Depreciation", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisaggregationOfRevenueLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "Disaggregation of Revenue [Line Items]" } } }, "localname": "DisaggregationOfRevenueLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [ "r273", "r277", "r278", "r279", "r280", "r281", "r282", "r283" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table]", "terseLabel": "Disaggregation of Revenue [Table]" } } }, "localname": "DisaggregationOfRevenueTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r273" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table Text Block]", "terseLabel": "Disaggregation of revenue" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r330" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "Share-based Payment Arrangement [Text Block]", "terseLabel": "Stock-based Compensation" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Share-based Payment Arrangement [Abstract]", "terseLabel": "Share-based Payment Arrangement [Abstract]" } } }, "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_EMEAMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Regions of Europe, Middle East and Africa.", "label": "EMEA [Member]", "terseLabel": "EMEA [Member]" } } }, "localname": "EMEAMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Earnings Per Share [Abstract]", "terseLabel": "Earnings Per Share [Abstract]" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasicAndDiluted": { "auth_ref": [ "r113" ], "lang": { "en-US": { "role": { "documentation": "The amount of net income or loss for the period per each share in instances when basic and diluted earnings per share are the same amount and reported as a single line item on the face of the financial statements. Basic earnings per share is the amount of net income or loss for the period per each share of common stock or unit outstanding during the reporting period. Diluted earnings per share includes the amount of net income or loss for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Earnings Per Share, Basic and Diluted", "terseLabel": "Net loss per share, basic and diluted (usd per share)" } } }, "localname": "EarningsPerShareBasicAndDiluted", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r115", "r116", "r117", "r119" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "Earnings Per Share [Text Block]", "terseLabel": "Net loss per Share" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShare" ], "xbrltype": "textBlockItemType" }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "auth_ref": [ "r37" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Employee-related Liabilities, Current", "verboseLabel": "Accrued compensation" } } }, "localname": "EmployeeRelatedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": { "auth_ref": [ "r316" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options.", "label": "Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount", "terseLabel": "Compensation not yet recognized, share-based awards other than options" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": { "auth_ref": [ "r316" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cost to be recognized for option under share-based payment arrangement.", "label": "Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount", "terseLabel": "Compensation not yet recognized, stock options" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeStockOptionMember": { "auth_ref": [ "r313" ], "lang": { "en-US": { "role": { "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.", "label": "Share-based Payment Arrangement, Option [Member]", "verboseLabel": "Stock Options [Member]" } } }, "localname": "EmployeeStockOptionMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_EquityAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Equity [Abstract]", "terseLabel": "Equity [Abstract]" } } }, "localname": "EquityAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r92", "r93", "r94", "r97", "r105", "r107", "r120", "r200", "r252", "r253", "r323", "r324", "r325", "r343", "r344", "r365", "r366", "r367", "r368", "r369", "r370", "r458", "r459", "r460" ], "lang": { "en-US": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.", "label": "Equity Component [Domain]", "terseLabel": "Equity Component [Domain]" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "terseLabel": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "auth_ref": [ "r355", "r356", "r357", "r358" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis.", "label": "Fair Value, Recurring and Nonrecurring [Table]", "terseLabel": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Table]" } } }, "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": { "auth_ref": [ "r355", "r356" ], "lang": { "en-US": { "role": { "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).", "label": "Fair Value, Assets Measured on Recurring Basis [Table Text Block]", "verboseLabel": "Summary of financial instruments measured at fair value on a recurring basis" } } }, "localname": "FairValueAssetsMeasuredOnRecurringBasisTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "auth_ref": [ "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r295", "r356", "r398", "r399", "r400" ], "lang": { "en-US": { "role": { "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.", "label": "Fair Value Hierarchy and NAV [Axis]", "terseLabel": "Fair Value Hierarchy and NAV [Axis]" } } }, "localname": "FairValueByFairValueHierarchyLevelAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Fair Value Disclosures [Abstract]", "terseLabel": "Fair Value Disclosures [Abstract]" } } }, "localname": "FairValueDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_FairValueInputsLevel1Member": { "auth_ref": [ "r287", "r288", "r293", "r295", "r356", "r398" ], "lang": { "en-US": { "role": { "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.", "label": "Fair Value, Inputs, Level 1 [Member]", "terseLabel": "Level 1 [Member]" } } }, "localname": "FairValueInputsLevel1Member", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementInputsDisclosureTextBlock": { "auth_ref": [ "r359" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure of the fair value measurement of assets and liabilities, which includes financial instruments measured at fair value that are classified in shareholders' equity, which may be measured on a recurring or nonrecurring basis.", "label": "Fair Value Measurement and Measurement Inputs, Recurring and Nonrecurring [Text Block]", "verboseLabel": "Fair Value Measurements" } } }, "localname": "FairValueMeasurementInputsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurements" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [ "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r295", "r398", "r399", "r400" ], "lang": { "en-US": { "role": { "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.", "label": "Fair Value Hierarchy and NAV [Domain]", "terseLabel": "Fair Value, Measurements, Fair Value Hierarchy [Domain]" } } }, "localname": "FairValueMeasurementsFairValueHierarchyDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinanceLeaseInterestExpense": { "auth_ref": [ "r373", "r378", "r387" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails": { "order": 2.0, "parentTag": "cdxs_FinanceLeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of interest expense on finance lease liability.", "label": "Finance Lease, Interest Expense", "terseLabel": "Interest on lease obligations" } } }, "localname": "FinanceLeaseInterestExpense", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseInterestPaymentOnLiability": { "auth_ref": [ "r375", "r382" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of interest paid on finance lease liability.", "label": "Finance Lease, Interest Payment on Liability", "terseLabel": "Operating cash flows from finance leases" } } }, "localname": "FinanceLeaseInterestPaymentOnLiability", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesCashPaidforLeaseObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityCurrent": { "auth_ref": [ "r372" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.", "label": "Finance Lease, Liability, Current", "terseLabel": "Current portion of lease obligations - Finance leases" } } }, "localname": "FinanceLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r386" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of undiscounted cash flows of finance lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to finance lease liability recognized in statement of financial position.", "label": "Finance Lease, Liability, Fiscal Year Maturity [Table Text Block]", "terseLabel": "Finance lease liability" } } }, "localname": "FinanceLeaseLiabilityMaturityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FinanceLeasePrincipalPayments": { "auth_ref": [ "r374", "r382" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of cash outflow for principal payment on finance lease.", "label": "Finance Lease, Principal Payments", "negatedLabel": "Payments of lease obligations - Finance leases", "terseLabel": "Finance Lease, Principal Payments" } } }, "localname": "FinanceLeasePrincipalPayments", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesCashPaidforLeaseObligationsDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAsset": { "auth_ref": [ "r371" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount, after accumulated amortization, of right-of-use asset from finance lease.", "label": "Finance Lease, Right-of-Use Asset, after Accumulated Amortization", "terseLabel": "Right-of-use assets - Finance leases, net" } } }, "localname": "FinanceLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAssetAmortization": { "auth_ref": [ "r373", "r378", "r387" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails": { "order": 1.0, "parentTag": "cdxs_FinanceLeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease.", "label": "Finance Lease, Right-of-Use Asset, Amortization", "terseLabel": "Amortization of right-of-use assets" } } }, "localname": "FinanceLeaseRightOfUseAssetAmortization", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Financial Instruments, Financial Assets, Balance Sheet Groupings [Abstract]", "verboseLabel": "Summary of financial instruments measured at fair value on a recurring basis" } } }, "localname": "FinancialInstrumentsFinancialAssetsBalanceSheetGroupingsAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Financing Receivable, Allowance for Credit Loss [Line Items]", "terseLabel": "Financing Receivable, Allowance for Credit Loss [Line Items]" } } }, "localname": "FinancingReceivableAllowanceForCreditLossesLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery": { "auth_ref": [ "r187", "r207", "r215" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase in allowance for credit loss on financing receivable from recovery.", "label": "Financing Receivable, Allowance for Credit Loss, Recovery", "terseLabel": "Recoveries of amounts previously written off" } } }, "localname": "FinancingReceivableAllowanceForCreditLossesRecovery", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesAnalysisofAllowanceforCreditLossesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinancingReceivableAllowanceForCreditLossesRollForward": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Financing Receivable, Allowance for Credit Loss [Roll Forward]", "terseLabel": "Financing Receivable, Allowance for Credit Loss [Roll Forward]" } } }, "localname": "FinancingReceivableAllowanceForCreditLossesRollForward", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesAnalysisofAllowanceforCreditLossesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs": { "auth_ref": [ "r186", "r206", "r215" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of writeoff of financing receivable, charged against allowance for credit loss.", "label": "Financing Receivable, Allowance for Credit Loss, Writeoff", "terseLabel": "Write-offs charged against the allowance" } } }, "localname": "FinancingReceivableAllowanceForCreditLossesWriteOffs", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesAnalysisofAllowanceforCreditLossesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinancingReceivableBeforeAllowanceForCreditLossAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Financing Receivable, before Allowance for Credit Loss [Abstract]", "terseLabel": "Financial assets:" } } }, "localname": "FinancingReceivableBeforeAllowanceForCreditLossAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_FinancingReceivableRecordedInvestmentCurrent": { "auth_ref": [ "r191", "r209", "r216" ], "calculation": { "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails": { "order": 2.0, "parentTag": "us-gaap_AccountsReceivableGrossCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of financing receivable not past due.", "label": "Financing Receivable, Not Past Due", "terseLabel": "Current" } } }, "localname": "FinancingReceivableRecordedInvestmentCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinancingReceivableRecordedInvestmentPastDue": { "auth_ref": [ "r191", "r209", "r216" ], "calculation": { "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails": { "order": 1.0, "parentTag": "us-gaap_AccountsReceivableGrossCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of financing receivable past due.", "label": "Financing Receivable, Past Due", "terseLabel": "Past due" } } }, "localname": "FinancingReceivableRecordedInvestmentPastDue", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinancingReceivables30To59DaysPastDueMember": { "auth_ref": [ "r216" ], "lang": { "en-US": { "role": { "documentation": "Financial asset more than 29 days past due but fewer than 60 days past due.", "label": "Financial Asset, 30 to 59 Days Past Due [Member]", "terseLabel": "31-60 Days [Member]" } } }, "localname": "FinancingReceivables30To59DaysPastDueMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinancingReceivables60To89DaysPastDueMember": { "auth_ref": [ "r216" ], "lang": { "en-US": { "role": { "documentation": "Financial asset more than 59 days past due but fewer than 90 days past due.", "label": "Financial Asset, 60 to 89 Days Past Due [Member]", "terseLabel": "61-90 Days [Member]" } } }, "localname": "FinancingReceivables60To89DaysPastDueMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember": { "auth_ref": [ "r216" ], "lang": { "en-US": { "role": { "documentation": "Financial asset equal to or greater than 90 days past due.", "label": "Financial Asset, Equal to or Greater than 90 Days Past Due [Member]", "terseLabel": "91 Days and Over [Member]" } } }, "localname": "FinancingReceivablesEqualToGreaterThan90DaysPastDueMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinancingReceivablesPeriodPastDueAxis": { "auth_ref": [ "r209", "r216" ], "lang": { "en-US": { "role": { "documentation": "Information by time period financial asset is past due.", "label": "Financial Asset, Period Past Due [Axis]", "terseLabel": "Financial Asset, Period Past Due [Axis]" } } }, "localname": "FinancingReceivablesPeriodPastDueAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinancingReceivablesPeriodPastDueDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Period in which financial asset is past due. Element name and standard label in Financial Asset, [numeric lower end] to [numeric higher end] [date measure] Past Due [Member] or Financial Asset, Greater Than [low end numeric value] [date measure] Past Due [Member] or Financial Asset, Less Than [high end numeric value] [date measure] Past Due [Member] formats.", "label": "Financial Asset, Period Past Due [Domain]", "terseLabel": "Financial Asset, Period Past Due [Domain]" } } }, "localname": "FinancingReceivablesPeriodPastDueDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "domainItemType" }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "auth_ref": [ "r74" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 15.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.", "label": "Gain (Loss) on Disposition of Property Plant Equipment", "negatedLabel": "Gain on disposal of property and equipment" } } }, "localname": "GainLossOnSaleOfPropertyPlantEquipment", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_GeographicAreasLongLivedAssetsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Geographic Areas, Long-Lived Assets [Abstract]", "verboseLabel": "Schedule of long-lived assets by geographical area" } } }, "localname": "GeographicAreasLongLivedAssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "xbrltype": "stringItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r220", "r222", "r429" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 7.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill", "terseLabel": "Goodwill", "verboseLabel": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsGoodwillDetails", "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": { "auth_ref": [ "r82", "r224" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined.", "label": "Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]", "terseLabel": "Goodwill" } } }, "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillImpairmentLoss": { "auth_ref": [ "r74", "r221", "r223", "r225" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill, Impairment Loss", "terseLabel": "Goodwill impairment" } } }, "localname": "GoodwillImpairmentLoss", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GranteeStatusAxis": { "auth_ref": [ "r299", "r301", "r313" ], "lang": { "en-US": { "role": { "documentation": "Information by status of recipient to whom award is granted.", "label": "Grantee Status [Axis]", "terseLabel": "Grantee Status [Axis]" } } }, "localname": "GranteeStatusAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GranteeStatusDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Status of recipient to whom award is granted.", "label": "Grantee Status [Domain]", "terseLabel": "Grantee Status [Domain]" } } }, "localname": "GranteeStatusDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments": { "auth_ref": [ "r90", "r152", "r164", "r168", "r171", "r174" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of income (loss) from continuing operations before deduction of income tax expense (benefit) and income (loss) attributable to noncontrolling interest, and addition of income (loss) from equity method investments.", "label": "Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest", "totalLabel": "Loss before income taxes", "verboseLabel": "Income (loss) before income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Income Statement [Abstract]", "terseLabel": "Income Statement [Abstract]" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r230" ], "lang": { "en-US": { "role": { "documentation": "Information by location in the income statement.", "label": "Income Statement Location [Axis]", "terseLabel": "Income Statement Location [Axis]" } } }, "localname": "IncomeStatementLocationAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Location in the income statement.", "label": "Income Statement Location [Domain]", "terseLabel": "Income Statement Location [Domain]" } } }, "localname": "IncomeStatementLocationDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r86", "r106", "r107", "r150", "r336", "r345", "r346", "r449" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income Tax Expense (Benefit)", "verboseLabel": "Provision for income taxes" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxPolicyTextBlock": { "auth_ref": [ "r53", "r82", "r334", "r335", "r337", "r338", "r339", "r340", "r474" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.", "label": "Income Tax, Policy [Policy Text Block]", "terseLabel": "Income Taxes" } } }, "localname": "IncomeTaxPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxesPaid": { "auth_ref": [ "r71", "r77" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income.", "label": "Income Taxes Paid", "terseLabel": "Income taxes paid" } } }, "localname": "IncomeTaxesPaid", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r73" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.", "label": "Increase (Decrease) in Accounts Payable", "verboseLabel": "Accounts payable" } } }, "localname": "IncreaseDecreaseInAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r73" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "Accounts receivable, net" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "auth_ref": [ "r73" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 17.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.", "label": "Increase (Decrease) in Contract with Customer, Asset", "negatedLabel": "Contract assets" } } }, "localname": "IncreaseDecreaseInContractWithCustomerAsset", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "auth_ref": [ "r73" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "Increase (Decrease) in Contract with Customer, Liability", "verboseLabel": "Deferred revenue" } } }, "localname": "IncreaseDecreaseInContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": { "auth_ref": [ "r73" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits.", "label": "Increase (Decrease) in Employee Related Liabilities", "verboseLabel": "Accrued compensation" } } }, "localname": "IncreaseDecreaseInEmployeeRelatedLiabilities", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInFinanceReceivables": { "auth_ref": [ "r73" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in outstanding loans including accrued interest.", "label": "Increase (Decrease) in Finance Receivables", "negatedLabel": "Unbilled receivables" } } }, "localname": "IncreaseDecreaseInFinanceReceivables", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r73" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.", "label": "Increase (Decrease) in Inventories", "negatedLabel": "Inventories" } } }, "localname": "IncreaseDecreaseInInventories", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "verboseLabel": "Changes in operating assets and liabilities:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": { "auth_ref": [ "r73" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The increase (decrease) during the reporting period in other expenses incurred but not yet paid.", "label": "Increase (Decrease) in Other Accrued Liabilities", "verboseLabel": "Other accrued liabilities" } } }, "localname": "IncreaseDecreaseInOtherAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in noncurrent operating liabilities classified as other.", "label": "Increase (Decrease) in Other Noncurrent Liabilities", "terseLabel": "Other long-term liabilities" } } }, "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherOperatingAssets": { "auth_ref": [ "r73" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 16.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in operating assets classified as other.", "label": "Increase (Decrease) in Other Operating Assets", "negatedTerseLabel": "Other non-current assets" } } }, "localname": "IncreaseDecreaseInOtherOperatingAssets", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "auth_ref": [ "r73" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "negatedLabel": "Prepaid expenses and other current assets" } } }, "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]" } } }, "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_IndemnificationGuaranteeMember": { "auth_ref": [ "r248", "r251" ], "lang": { "en-US": { "role": { "documentation": "An agreement (contract) that contingently requires the guarantor to make payments to the guaranteed party in compensation for that party's or parties' loss or injury attributable to specified events or actions, such as a patent infringement action against an entity that relied on certain representations as to ownership rights made by a software vendor.", "label": "Indemnification Agreement [Member]", "terseLabel": "Indemnification Agreement [Member]" } } }, "localname": "IndemnificationGuaranteeMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_InterestPaidNet": { "auth_ref": [ "r67", "r70", "r77" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.", "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities", "terseLabel": "Interest paid" } } }, "localname": "InterestPaidNet", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryFinishedGoods": { "auth_ref": [ "r45" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails": { "order": 3.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.", "label": "Inventory, Finished Goods, Gross", "terseLabel": "Finished goods" } } }, "localname": "InventoryFinishedGoods", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r3", "r48" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventory, Net", "totalLabel": "Inventories", "verboseLabel": "Inventories" } } }, "localname": "InventoryNet", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNetAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Inventory, Net [Abstract]", "verboseLabel": "Schedule of Inventory Components" } } }, "localname": "InventoryNetAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_InventoryRawMaterials": { "auth_ref": [ "r47" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails": { "order": 1.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventory, Raw Materials, Gross", "terseLabel": "Raw materials" } } }, "localname": "InventoryRawMaterials", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryWorkInProcess": { "auth_ref": [ "r46" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails": { "order": 2.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.", "label": "Inventory, Work in Process, Gross", "terseLabel": "Work-in-process" } } }, "localname": "InventoryWorkInProcess", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InvestmentIncomeInterest": { "auth_ref": [ "r59", "r145" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities.", "label": "Investment Income, Interest", "verboseLabel": "Interest income" } } }, "localname": "InvestmentIncomeInterest", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_InvestmentOwnedBalanceShares": { "auth_ref": [ "r469", "r471" ], "lang": { "en-US": { "role": { "documentation": "Balance held at close of period in number of shares.", "label": "Investment Owned, Balance, Shares", "terseLabel": "Number of shares acquired in an equity method investment" } } }, "localname": "InvestmentOwnedBalanceShares", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_InvestmentPolicyTextBlock": { "auth_ref": [ "r195", "r448" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for investment in financial asset.", "label": "Investment, Policy [Policy Text Block]", "terseLabel": "Investment in Equity Securities" } } }, "localname": "InvestmentPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_InvestmentsAndOtherNoncurrentAssets": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of investments, and noncurrent assets classified as other.", "label": "Investments and Other Noncurrent Assets", "terseLabel": "Investment at cost basis", "verboseLabel": "Investment in Equity Securities" } } }, "localname": "InvestmentsAndOtherNoncurrentAssets", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseCost": { "auth_ref": [ "r385", "r387" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of lease cost recognized by lessee for lease contract.", "label": "Lease, Cost", "totalLabel": "Total lease cost" } } }, "localname": "LeaseCost", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseCostAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Lease, Cost [Abstract]", "terseLabel": "Finance lease costs:" } } }, "localname": "LeaseCostAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LeaseCostTableTextBlock": { "auth_ref": [ "r385" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income.", "label": "Lease, Cost [Table Text Block]", "terseLabel": "Lease cost" } } }, "localname": "LeaseCostTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LeaseholdImprovementsMember": { "auth_ref": [ "r227" ], "lang": { "en-US": { "role": { "documentation": "Additions or improvements to assets held under a lease arrangement.", "label": "Leasehold Improvements [Member]", "terseLabel": "Leasehold improvements [Member]" } } }, "localname": "LeaseholdImprovementsMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LesseeFinanceLeaseTermOfContract1": { "auth_ref": [ "r377" ], "lang": { "en-US": { "role": { "documentation": "Term of lessee's finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Lessee, Finance Lease, Term of Contract", "terseLabel": "Term of contract" } } }, "localname": "LesseeFinanceLeaseTermOfContract1", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "durationItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r386" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.", "label": "Lessee, Operating Lease, Liability, Maturity [Table Text Block]", "verboseLabel": "Operating lease maturity" } } }, "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "auth_ref": [ "r386" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.", "label": "Lessee, Operating Lease, Liability, to be Paid", "totalLabel": "Total minimum lease payments" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r386" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 4.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "terseLabel": "2021" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r386" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four", "terseLabel": "2024" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r386" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three", "terseLabel": "2023" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r386" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 3.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "terseLabel": "2022" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r386" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 6.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.", "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year", "terseLabel": "2020 (remaining 6 months)" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r386" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.", "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount", "negatedTerseLabel": "Less: imputed interest" } } }, "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseRenewalTerm": { "auth_ref": [ "r377" ], "lang": { "en-US": { "role": { "documentation": "Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Lessee, Operating Lease, Renewal Term", "terseLabel": "Renewal term" } } }, "localname": "LesseeOperatingLeaseRenewalTerm", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "durationItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r36", "r85", "r166", "r196", "r352", "r353", "r354", "r363" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.", "label": "Liabilities", "totalLabel": "Total liabilities" } } }, "localname": "Liabilities", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r23", "r85", "r196", "r363", "r432", "r441" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "Liabilities and Equity", "totalLabel": "Total liabilities and stockholders' equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Liabilities and Equity [Abstract]", "verboseLabel": "Liabilities and Stockholders' Equity" } } }, "localname": "LiabilitiesAndStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r38", "r85", "r196", "r352", "r353", "r354", "r363" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "Liabilities, Current", "totalLabel": "Total current liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Liabilities, Current [Abstract]", "verboseLabel": "Current liabilities:" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity": { "auth_ref": [ "r35" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of current borrowing capacity under the credit facility considering any current restrictions on the amount that could be borrowed (for example, borrowings may be limited by the amount of current assets), but without considering any amounts currently outstanding under the facility.", "label": "Line of Credit Facility, Current Borrowing Capacity", "terseLabel": "Borrowing capacity" } } }, "localname": "LineOfCreditFacilityCurrentBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LondonInterbankOfferedRateLIBORMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Interest rate at which a bank borrows funds from other banks in the London interbank market.", "label": "London Interbank Offered Rate (LIBOR) [Member]", "terseLabel": "LIBOR [Member]" } } }, "localname": "LondonInterbankOfferedRateLIBORMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LossContingenciesByNatureOfContingencyAxis": { "auth_ref": [ "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r249", "r250" ], "lang": { "en-US": { "role": { "documentation": "Information by type of existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur.", "label": "Loss Contingency Nature [Axis]", "terseLabel": "Loss Contingency Nature [Axis]" } } }, "localname": "LossContingenciesByNatureOfContingencyAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingencyAccrualCarryingValueCurrent": { "auth_ref": [ "r240" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of loss contingency liability expected to be resolved within one year or the normal operating cycle, if longer.", "label": "Loss Contingency, Accrual, Current", "terseLabel": "Loss contingency accrual" } } }, "localname": "LossContingencyAccrualCarryingValueCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LossContingencyNatureDomain": { "auth_ref": [ "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r249", "r250" ], "lang": { "en-US": { "role": { "documentation": "An existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur. Resolution of the uncertainty may confirm the incurrence of a loss or impairment of an asset or the incurrence of a liability.", "label": "Loss Contingency, Nature [Domain]", "terseLabel": "Loss Contingency, Nature [Domain]" } } }, "localname": "LossContingencyNatureDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_MaintenanceMember": { "auth_ref": [ "r277" ], "lang": { "en-US": { "role": { "documentation": "Process of preserving asset, including, but not limited to, building, machinery and software.", "label": "Maintenance [Member]", "terseLabel": "Maintenance [Member]" } } }, "localname": "MaintenanceMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails" ], "xbrltype": "domainItemType" }, "us-gaap_MinorityInterestOwnershipPercentageByParent": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The parent entity's interest in net assets of the subsidiary, expressed as a percentage.", "label": "Noncontrolling Interest, Ownership Percentage by Parent", "terseLabel": "Ownership percentage" } } }, "localname": "MinorityInterestOwnershipPercentageByParent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails" ], "xbrltype": "percentItemType" }, "us-gaap_MoneyMarketFundsMember": { "auth_ref": [ "r287" ], "lang": { "en-US": { "role": { "documentation": "Fund that invests in short-term money-market instruments, for example, but not limited to, commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and other highly liquid securities.", "label": "Money Market Funds [Member]", "terseLabel": "Money Market Funds [Member]" } } }, "localname": "MoneyMarketFundsMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesComponentsofCashEquivalentsDetails", "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails", "http://www.codexis.com/role/FairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NatureOfOperations": { "auth_ref": [ "r124", "r138" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.", "label": "Nature of Operations [Text Block]", "verboseLabel": "Description of Business" } } }, "localname": "NatureOfOperations", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/DescriptionofBusiness" ], "xbrltype": "textBlockItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r68" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 3.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash provided by (used in) financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "verboseLabel": "Financing activities:" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r68" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "verboseLabel": "Investing activities:" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r68", "r72", "r75" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash used in operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "verboseLabel": "Operating activities:" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r1", "r51", "r52", "r54", "r75", "r85", "r96", "r101", "r102", "r103", "r104", "r106", "r107", "r111", "r152", "r164", "r168", "r171", "r174", "r196", "r363", "r435", "r447" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss) Attributable to Parent", "terseLabel": "Net loss", "totalLabel": "Net loss", "verboseLabel": "Net loss" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows", "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "New Accounting Pronouncements or Change in Accounting Principle [Line Items]", "terseLabel": "New Accounting Pronouncements or Change in Accounting Principle [Line Items]" } } }, "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable": { "auth_ref": [ "r95", "r96", "r97", "r98", "r99", "r100", "r103", "r118", "r197", "r198", "r199", "r200", "r201", "r202", "r319", "r320", "r321", "r322", "r323", "r324", "r325", "r326", "r341", "r342", "r343", "r344", "r409", "r410", "r411", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r463", "r464", "r465", "r466", "r467" ], "lang": { "en-US": { "role": { "documentation": "Summarization of the changes in an accounting principle or a new accounting pronouncement, including the line items affected by the change and the financial effects of the change on those particular line items.", "label": "Accounting Standards Update and Change in Accounting Principle [Table]", "terseLabel": "New Accounting Pronouncements or Change in Accounting Principle [Table]" } } }, "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "verboseLabel": "Accounting Pronouncements" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NotesReceivableGross": { "auth_ref": [ "r212", "r215", "r216" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AccountsNotesAndLoansReceivableNetCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount, before allowance for credit loss, of financing receivable.", "label": "Financing Receivable, before Allowance for Credit Loss", "totalLabel": "Total Financial assets" } } }, "localname": "NotesReceivableGross", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_NumberOfOperatingSegments": { "auth_ref": [ "r140" ], "lang": { "en-US": { "role": { "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.", "label": "Number of Operating Segments", "terseLabel": "Number of operating segments" } } }, "localname": "NumberOfOperatingSegments", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTextualDetails" ], "xbrltype": "integerItemType" }, "us-gaap_NumberOfPropertiesSubjectToGroundLeases": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Number of separate real estate development properties located on land subject to ground leases.", "label": "Number of Properties Subject to Ground Leases", "terseLabel": "Number of buildings leased" } } }, "localname": "NumberOfPropertiesSubjectToGroundLeases", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "integerItemType" }, "us-gaap_NumberOfReportableSegments": { "auth_ref": [ "r140" ], "lang": { "en-US": { "role": { "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements.", "label": "Number of Reportable Segments", "terseLabel": "Number of reportable segments" } } }, "localname": "NumberOfReportableSegments", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTextualDetails" ], "xbrltype": "integerItemType" }, "us-gaap_NumberOfReportingUnits": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Number of reporting units tested for impairment of goodwill. A reporting unit is an operating segment or one level below an operating segment.", "label": "Number of Reporting Units", "terseLabel": "Number of reporting units" } } }, "localname": "NumberOfReportingUnits", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails" ], "xbrltype": "integerItemType" }, "us-gaap_OperatingCostsAndExpensesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Operating Costs and Expenses [Abstract]", "verboseLabel": "Costs and operating expenses:" } } }, "localname": "OperatingCostsAndExpensesAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r152", "r164", "r168", "r171", "r174" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating Income (Loss)", "totalLabel": "Loss from operations", "verboseLabel": "Income (loss) from operations" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseCost": { "auth_ref": [ "r379", "r387" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails": { "order": 1.0, "parentTag": "us-gaap_LeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.", "label": "Operating Lease, Cost", "terseLabel": "Operating lease cost" } } }, "localname": "OperatingLeaseCost", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r372" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.", "label": "Operating Lease, Liability", "terseLabel": "Lease Obligations" } } }, "localname": "OperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r372" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Operating Lease, Liability, Current", "terseLabel": "Current portion of lease obligations - Operating leases" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r372" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.", "label": "Operating Lease, Liability, Noncurrent", "terseLabel": "Long-term lease obligations - Operating leases" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasePayments": { "auth_ref": [ "r376", "r382" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.", "label": "Operating Lease, Payments", "terseLabel": "Operating cash flows from operating leases" } } }, "localname": "OperatingLeasePayments", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesCashPaidforLeaseObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r371" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "Operating Lease, Right-of-Use Asset", "terseLabel": "Right-of-use assets - Operating leases, net" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r384", "r387" ], "lang": { "en-US": { "role": { "documentation": "Weighted average discount rate for operating lease calculated at point in time.", "label": "Operating Lease, Weighted Average Discount Rate, Percent", "verboseLabel": "Weighted-average discount rate" } } }, "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "auth_ref": [ "r383", "r387" ], "lang": { "en-US": { "role": { "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Operating Lease, Weighted Average Remaining Lease Term", "terseLabel": "Weighted-average remaining lease term (in years)" } } }, "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_OperatingLeasesFutureMinimumPaymentsDueAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Operating Leases, Future Minimum Payments Due, Fiscal Year Maturity [Abstract]", "terseLabel": "Operating Leases" } } }, "localname": "OperatingLeasesFutureMinimumPaymentsDueAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingSegmentsMember": { "auth_ref": [ "r163", "r164", "r165", "r166", "r168", "r174" ], "lang": { "en-US": { "role": { "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.", "label": "Operating Segments [Member]", "terseLabel": "Operating Segments [Member]" } } }, "localname": "OperatingSegmentsMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]", "terseLabel": "Organization, Consolidation and Presentation of Financial Statements [Abstract]" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent": { "auth_ref": [ "r433", "r446" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsOtherAccruedLiabilitiesDetails": { "order": 3.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of expenses incurred but not yet paid classified as other.", "label": "Other Accrued Liabilities", "terseLabel": "Other" } } }, "localname": "OtherAccruedLiabilitiesCurrentAndNoncurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsOtherAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r33" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 8.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of noncurrent assets classified as other.", "label": "Other Assets, Noncurrent", "verboseLabel": "Other non-current assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherCommitmentsLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Other Commitments [Line Items]", "terseLabel": "Other Commitments [Line Items]" } } }, "localname": "OtherCommitmentsLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OtherCommitmentsTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about obligations resulting from other commitments.", "label": "Other Commitments [Table]", "terseLabel": "Other Commitments [Table]" } } }, "localname": "OtherCommitmentsTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r40" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.", "label": "Other Liabilities, Noncurrent", "verboseLabel": "Other long-term liabilities" } } }, "localname": "OtherLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r60" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations": { "order": 3.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.", "label": "Other Nonoperating Income (Expense)", "terseLabel": "Other income (expenses), net" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_PastDueFinancingReceivablesTableTextBlock": { "auth_ref": [ "r190", "r191", "r209", "r216" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of aging analysis for financing receivable.", "label": "Financing Receivable, Past Due [Table Text Block]", "terseLabel": "Summary of accounts receivable by aging" } } }, "localname": "PastDueFinancingReceivablesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PaymentsOfStockIssuanceCosts": { "auth_ref": [ "r66" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow for cost incurred directly with the issuance of an equity security.", "label": "Payments of Stock Issuance Costs", "negatedLabel": "Costs incurred in connection with private placement", "terseLabel": "Costs incurred in connection with private placement", "verboseLabel": "Issuance costs" } } }, "localname": "PaymentsOfStockIssuanceCosts", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockPrivateOfferingDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "auth_ref": [ "r65" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.", "label": "Payment, Tax Withholding, Share-based Payment Arrangement", "negatedTerseLabel": "Taxes paid related to net share settlement of equity awards" } } }, "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireOtherInvestments": { "auth_ref": [ "r63" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of cash outflow to acquire investments classified as other.", "label": "Payments to Acquire Other Investments", "negatedLabel": "Investment in equity securities", "terseLabel": "Payments to acquire other investments" } } }, "localname": "PaymentsToAcquireOtherInvestments", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r62" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchase of property and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PerformanceSharesMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Share-based payment arrangement awarded for meeting performance target.", "label": "Performance Shares [Member]", "terseLabel": "Performance Shares [Member]" } } }, "localname": "PerformanceSharesMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PlanNameAxis": { "auth_ref": [ "r304", "r317" ], "lang": { "en-US": { "role": { "documentation": "Information by plan name for share-based payment arrangement.", "label": "Plan Name [Axis]", "terseLabel": "Plan Name [Axis]" } } }, "localname": "PlanNameAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationEquityIncentivePlansDetails", "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PlanNameDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Plan name for share-based payment arrangement.", "label": "Plan Name [Domain]", "terseLabel": "Plan Name [Domain]" } } }, "localname": "PlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationEquityIncentivePlansDetails", "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r15" ], "lang": { "en-US": { "role": { "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.", "label": "Preferred Stock, Par or Stated Value Per Share", "terseLabel": "Preferred stock, par value (usd per share)" } } }, "localname": "PreferredStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r15" ], "lang": { "en-US": { "role": { "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.", "label": "Preferred Stock, Shares Authorized", "terseLabel": "Preferred stock, shares authorized (shares)" } } }, "localname": "PreferredStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesIssued": { "auth_ref": [ "r15" ], "lang": { "en-US": { "role": { "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.", "label": "Preferred Stock, Shares Issued", "terseLabel": "Preferred stock, shares issued (shares)" } } }, "localname": "PreferredStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesOutstanding": { "auth_ref": [ "r15" ], "lang": { "en-US": { "role": { "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.", "label": "Preferred Stock, Shares Outstanding", "terseLabel": "Preferred stock, shares outstanding (shares)" } } }, "localname": "PreferredStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r15" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Preferred Stock, Value, Issued", "terseLabel": "Preferred stock, $0.0001 par value per share; 5,000 shares authorized, none issued and outstanding" } } }, "localname": "PreferredStockValue", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "auth_ref": [ "r5", "r28", "r29" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.", "label": "Prepaid Expense and Other Assets, Current", "verboseLabel": "Prepaid expenses and other current assets" } } }, "localname": "PrepaidExpenseAndOtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrimeRateMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers.", "label": "Prime Rate [Member]", "terseLabel": "Prime Rate [Member]" } } }, "localname": "PrimeRateMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PrivatePlacementMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "A private placement is a direct offering of securities to a limited number of sophisticated investors such as insurance companies, pension funds, mezzanine funds, stock funds and trusts.", "label": "Private Placement [Member]", "terseLabel": "Private Offering [Member]" } } }, "localname": "PrivatePlacementMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockPrivateOfferingDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ProceedsFromCollaborators": { "auth_ref": [ "r69" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Cash received from collaborators during the current period.", "label": "Proceeds from Collaborators", "terseLabel": "One-time, non-refundable cash payment" } } }, "localname": "ProceedsFromCollaborators", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromIssuanceInitialPublicOffering": { "auth_ref": [ "r64" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The cash inflow associated with the amount received from entity's first offering of stock to the public.", "label": "Proceeds from Issuance Initial Public Offering", "terseLabel": "Proceeds from issuance of common stock in connection with private placement" } } }, "localname": "ProceedsFromIssuanceInitialPublicOffering", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "auth_ref": [ "r61" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.", "label": "Proceeds from Sale of Property, Plant, and Equipment", "terseLabel": "Proceeds from disposal of property and equipment" } } }, "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromStockOptionsExercised": { "auth_ref": [ "r64", "r318" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.", "label": "Proceeds from Stock Options Exercised", "terseLabel": "Proceeds from exercises of stock options", "verboseLabel": "Proceeds from exercises of stock options" } } }, "localname": "ProceedsFromStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockExerciseofOptionsDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProjectMember": { "auth_ref": [ "r417" ], "lang": { "en-US": { "role": { "documentation": "Planned program of work.", "label": "Project [Domain]", "terseLabel": "Project [Domain]" } } }, "localname": "ProjectMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "auth_ref": [ "r32", "r229" ], "lang": { "en-US": { "role": { "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.", "label": "Long-Lived Tangible Asset [Axis]", "terseLabel": "Property, Plant and Equipment, Type [Axis]" } } }, "localname": "PropertyPlantAndEquipmentByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentGross": { "auth_ref": [ "r31", "r227" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails": { "order": 1.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Gross", "terseLabel": "Property and equipment" } } }, "localname": "PropertyPlantAndEquipmentGross", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Property, Plant and Equipment [Line Items]", "terseLabel": "Property, Plant and Equipment [Line Items]" } } }, "localname": "PropertyPlantAndEquipmentLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r10", "r11", "r229", "r443" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Net", "terseLabel": "Long-lived assets", "totalLabel": "Property and equipment, net", "verboseLabel": "Property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "auth_ref": [ "r10", "r229" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table Text Block]", "terseLabel": "Schedule of property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "auth_ref": [ "r10", "r227" ], "lang": { "en-US": { "role": { "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.", "label": "Long-Lived Tangible Asset [Domain]", "terseLabel": "Property, Plant and Equipment, Type [Domain]" } } }, "localname": "PropertyPlantAndEquipmentTypeDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PurchaseObligation": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsOtherAccruedLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Minimum amount of purchase arrangement in which the entity has agreed to expend funds to procure goods or services from a supplier.", "label": "Purchase Obligation", "terseLabel": "Accrued purchases" } } }, "localname": "PurchaseObligation", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsOtherAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReceivablesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Receivables [Abstract]" } } }, "localname": "ReceivablesAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy": { "auth_ref": [ "r24", "r82", "r192" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for determining the allowance for doubtful accounts for trade and other accounts receivable balances, and when impairments, charge-offs or recoveries are recognized.", "label": "Receivables, Trade and Other Accounts Receivable, Allowance for Doubtful Accounts, Policy [Policy Text Block]", "terseLabel": "Financing assets and Allowances" } } }, "localname": "ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock": { "auth_ref": [ "r163", "r168" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues.", "label": "Reconciliation of Revenue from Segments to Consolidated [Table Text Block]", "verboseLabel": "Schedule of revenues by geographical area" } } }, "localname": "ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_RelatedPartyDomain": { "auth_ref": [ "r294", "r390", "r391" ], "lang": { "en-US": { "role": { "documentation": "Related parties include affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.", "label": "Related Party [Domain]", "terseLabel": "Related Party [Domain]" } } }, "localname": "RelatedPartyDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RelatedPartyTransactionAxis": { "auth_ref": [ "r294", "r390", "r391", "r394" ], "lang": { "en-US": { "role": { "documentation": "Information by type of related party transaction.", "label": "Related Party Transaction [Axis]", "terseLabel": "Related Party Transaction [Axis]" } } }, "localname": "RelatedPartyTransactionAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RelatedPartyTransactionDomain": { "auth_ref": [ "r294" ], "lang": { "en-US": { "role": { "documentation": "Transaction between related party.", "label": "Related Party Transaction [Domain]", "terseLabel": "Related Party Transaction [Domain]" } } }, "localname": "RelatedPartyTransactionDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RelatedPartyTransactionLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Related Party Transaction [Line Items]", "terseLabel": "Related Party Transaction [Line Items]" } } }, "localname": "RelatedPartyTransactionLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RelatedPartyTransactionsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Related Party Transactions [Abstract]" } } }, "localname": "RelatedPartyTransactionsAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": { "auth_ref": [ "r294", "r390", "r394", "r415", "r416", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r425", "r426", "r427" ], "lang": { "en-US": { "role": { "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.", "label": "Related Party [Axis]", "terseLabel": "Related Party [Axis]" } } }, "localname": "RelatedPartyTransactionsByRelatedPartyAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": { "auth_ref": [ "r388", "r389", "r391", "r395", "r396" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.", "label": "Related Party Transactions Disclosure [Text Block]", "verboseLabel": "Related Party" } } }, "localname": "RelatedPartyTransactionsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RelatedParty" ], "xbrltype": "textBlockItemType" }, "us-gaap_ResearchAndDevelopmentAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Research and Development [Abstract]", "terseLabel": "Research and Development [Abstract]" } } }, "localname": "ResearchAndDevelopmentAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_ResearchAndDevelopmentArrangementContractToPerformForOthersByTypeAxis": { "auth_ref": [ "r332", "r333" ], "lang": { "en-US": { "role": { "documentation": "Information by form of arrangement related to research and development.", "label": "Research and Development Arrangement, Contract to Perform for Others, Type [Axis]", "terseLabel": "Research and Development Arrangement, Contract to Perform for Others, Type [Axis]" } } }, "localname": "ResearchAndDevelopmentArrangementContractToPerformForOthersByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ResearchAndDevelopmentArrangementContractToPerformForOthersTypeDomain": { "auth_ref": [ "r332", "r333" ], "lang": { "en-US": { "role": { "documentation": "Listing of significant agreements under research and development arrangements accounted for as a contract to perform research and development for others.", "label": "Research and Development Arrangement, Contract to Perform for Others, Type [Domain]", "terseLabel": "Research and Development Arrangement, Contract to Perform for Others, Type [Domain]" } } }, "localname": "ResearchAndDevelopmentArrangementContractToPerformForOthersTypeDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ResearchAndDevelopmentExpense": { "auth_ref": [ "r331", "r484" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations": { "order": 3.0, "parentTag": "us-gaap_CostsAndExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.", "label": "Research and Development Expense", "verboseLabel": "Research and development" } } }, "localname": "ResearchAndDevelopmentExpense", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ResearchAndDevelopmentExpenseMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included.", "label": "Research and Development Expense [Member]", "verboseLabel": "Research and Development [Member]" } } }, "localname": "ResearchAndDevelopmentExpenseMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RestrictedCash": { "auth_ref": [ "r81", "r428", "r439" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash restricted as to withdrawal or usage. 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.", "label": "Restricted Cash", "terseLabel": "Restricted cash, current" } } }, "localname": "RestrictedCash", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedCashAndCashEquivalents": { "auth_ref": [ "r9", "r76", "r81", "r428", "r439" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of cash and cash equivalents restricted as to withdrawal or usage. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Restricted Cash and Cash Equivalents", "terseLabel": "Restricted cash, current and non-current" } } }, "localname": "RestrictedCashAndCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis": { "auth_ref": [ "r30" ], "lang": { "en-US": { "role": { "documentation": "Information by category of cash or cash equivalent items which are restricted as to withdrawal or usage.", "label": "Restricted Cash and Cash Equivalents [Axis]", "terseLabel": "Restricted Cash and Cash Equivalents [Axis]" } } }, "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Type of cash and cash equivalent. Cash is currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash and Cash Equivalents [Domain]", "terseLabel": "Cash and Cash Equivalents [Domain]" } } }, "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesComponentsofCashEquivalentsDetails", "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails", "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails", "http://www.codexis.com/role/FairValueMeasurementsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RestrictedCashAndCashEquivalentsNoncurrent": { "auth_ref": [ "r7", "r12", "r76", "r81", "r473" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "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.", "label": "Restricted Cash and Cash Equivalents, Noncurrent", "terseLabel": "Restricted cash" } } }, "localname": "RestrictedCashAndCashEquivalentsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedCashAndInvestmentsNoncurrent": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The noncurrent cash, cash equivalents and investments that is restricted as to withdrawal or usage. Restrictions may include legally restricted deposits held as compensating balances against borrowing arrangements, contracts entered into with others, or entity statements of intention with regard to particular deposits classified as long-term; that is not expected to be released from such existing restrictions within one year of the balance sheet date or operating cycle, whichever is longer. Excludes compensating balance arrangements that are not agreements which legally restrict the use of cash amounts shown on the balance sheet. Includes noncurrent cash equivalents and investments that are similarly restricted as to withdrawal, usage or disposal.", "label": "Restricted Cash and Investments, Noncurrent", "terseLabel": "Non-current restricted cash" } } }, "localname": "RestrictedCashAndInvestmentsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedStockUnitsRSUMember": { "auth_ref": [], "lang": { "en-US": { "role": { "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.", "label": "Restricted Stock Units (RSUs) [Member]", "terseLabel": "RSUs [Member]" } } }, "localname": "RestrictedStockUnitsRSUMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r20", "r253", "r326", "r440", "r462", "r467" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings (Accumulated Deficit)", "verboseLabel": "Accumulated deficit" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r92", "r93", "r94", "r97", "r105", "r107", "r200", "r323", "r324", "r325", "r343", "r344", "r458", "r460" ], "lang": { "en-US": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings [Member]", "terseLabel": "Accumulated Deficit [Member]" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Revenue from Contract with Customer [Abstract]", "terseLabel": "Revenue from Contract with Customer [Abstract]" } } }, "localname": "RevenueFromContractWithCustomerAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "auth_ref": [ "r143", "r144", "r163", "r169", "r170", "r177", "r178", "r181", "r271", "r273", "r408" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "netLabel": "Revenues", "terseLabel": "Total revenues", "verboseLabel": "Total revenues" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails", "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r261", "r262", "r263", "r264", "r265", "r266", "r269", "r270", "r276", "r285" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "Revenue Recognition" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognition" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueFromRelatedParties": { "auth_ref": [ "r56", "r470" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of revenue, fees and commissions earned from transactions between (a) a parent company and its subsidiaries; (b) subsidiaries of a common parent; (c) an entity and trusts for the benefit of employees, for example, but not limited to, pension and profit-sharing trusts that are managed by or under the trusteeship of the entity's management; (d) an entity and its principal, owners, management, or members of their immediate families; and (e) affiliates.", "label": "Revenue from Related Parties", "terseLabel": "Revenue from related parties" } } }, "localname": "RevenueFromRelatedParties", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Revenue, Initial Application Period Cumulative Effect Transition [Line Items]", "terseLabel": "Revenue, Initial Application Period Cumulative Effect Transition [Line Items]" } } }, "localname": "RevenueInitialApplicationPeriodCumulativeEffectTransitionLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable": { "auth_ref": [ "r284" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information when using transition method for cumulative effect in initial period of application for revenue from contract with customer.", "label": "Revenue, Initial Application Period Cumulative Effect Transition [Table]", "terseLabel": "Revenue, Initial Application Period Cumulative Effect Transition [Table]" } } }, "localname": "RevenueInitialApplicationPeriodCumulativeEffectTransitionTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r267" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.", "label": "Revenue, Remaining Performance Obligation, Amount", "terseLabel": "Performance obligation" } } }, "localname": "RevenueRemainingPerformanceObligation", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "auth_ref": [ "r268" ], "lang": { "en-US": { "role": { "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "terseLabel": "Expected timing of satisfaction, period" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails", "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r268" ], "lang": { "en-US": { "role": { "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in CCYY-MM-DD format.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails", "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsPerformancePeriodDetails", "http://www.codexis.com/role/RelatedPartyPerformancePeriodDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock": { "auth_ref": [ "r268" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of expected timing for satisfying remaining performance obligation.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block]", "terseLabel": "Performance obligation, expected timing of satisfaction" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenuesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Revenues [Abstract]", "verboseLabel": "Revenues:" } } }, "localname": "RevenuesAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "stringItemType" }, "us-gaap_RevolvingCreditFacilityMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.", "label": "Revolving Credit Facility [Member]", "terseLabel": "Revolving Credit Facility [Member]" } } }, "localname": "RevolvingCreditFacilityMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RoyaltyMember": { "auth_ref": [ "r277" ], "lang": { "en-US": { "role": { "documentation": "Money for usage-based right to asset.", "label": "Royalty [Member]", "terseLabel": "Royalty [Member]" } } }, "localname": "RoyaltyMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SaleOfStockConsiderationReceivedOnTransaction": { "auth_ref": [], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Cash received on stock transaction after deduction of issuance costs.", "label": "Sale of Stock, Consideration Received on Transaction", "terseLabel": "Net proceeds received" } } }, "localname": "SaleOfStockConsiderationReceivedOnTransaction", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockPrivateOfferingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SaleOfStockNameOfTransactionDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement.", "label": "Sale of Stock [Domain]", "terseLabel": "Sale of Stock [Domain]" } } }, "localname": "SaleOfStockNameOfTransactionDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockPrivateOfferingDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "The number of shares issued or sold by the subsidiary or equity method investee per stock transaction.", "label": "Sale of Stock, Number of Shares Issued in Transaction", "terseLabel": "Number of shares issued and sold" } } }, "localname": "SaleOfStockNumberOfSharesIssuedInTransaction", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockPrivateOfferingDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_SaleOfStockPricePerShare": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Per share amount received by subsidiary or equity investee for each share of common stock issued or sold in the stock transaction.", "label": "Sale of Stock, Price Per Share", "terseLabel": "Purchase price (usd per share)" } } }, "localname": "SaleOfStockPricePerShare", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockPrivateOfferingDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_SalesRevenueProductLineMember": { "auth_ref": [ "r131" ], "lang": { "en-US": { "role": { "documentation": "Revenue from specified product or service, when it serves as benchmark in concentration of risk calculation. Includes, but is not limited to, revenue from contract with customer and other sources.", "label": "Revenue, Product and Service Benchmark [Member]", "terseLabel": "Revenue, Product and Service Benchmark [Member]" } } }, "localname": "SalesRevenueProductLineMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the components of accrued liabilities.", "label": "Schedule of Accrued Liabilities [Table Text Block]", "terseLabel": "Schedule of other accrued liabilities" } } }, "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "auth_ref": [ "r115" ], "lang": { "en-US": { "role": { "documentation": "Schedule for securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by Antidilutive Securities.", "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]", "terseLabel": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]" } } }, "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": { "auth_ref": [ "r115" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) in the future that were not included in the computation of diluted EPS because to do so would increase EPS amounts or decrease loss per share amounts for the period presented, by antidilutive securities.", "label": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block]", "verboseLabel": "Securities not included in the net loss per common share calculations" } } }, "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfCashAndCashEquivalentsTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Schedule of cash and cash equivalent balances. This table excludes restricted cash balances.", "label": "Schedule of Cash and Cash Equivalents [Table]", "terseLabel": "Schedule of Cash and Cash Equivalents [Table]" } } }, "localname": "ScheduleOfCashAndCashEquivalentsTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the components of cash, cash equivalents, and investments.", "label": "Cash, Cash Equivalents and Investments [Table Text Block]", "terseLabel": "Schedule of cash equivalents" } } }, "localname": "ScheduleOfCashCashEquivalentsAndShortTermInvestmentsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsandEquitySecuritiesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfCollaborativeArrangementsAndNoncollaborativeArrangementTransactionsTable": { "auth_ref": [ "r349" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations.", "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Table]", "terseLabel": "Collaborative Arrangement and Arrangement Other than Collaborative [Table]" } } }, "localname": "ScheduleOfCollaborativeArrangementsAndNoncollaborativeArrangementTransactionsTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsEnzymeSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGSKPlatformTechnologyTransferCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsStrategicCollaborationandLicenseAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": { "auth_ref": [ "r303", "r314", "r327" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about amount recognized for award under share-based payment arrangement. Includes, but is not limited to, amount expensed in statement of income or comprehensive income, amount capitalized in statement of financial position, and corresponding reporting line item in financial statements.", "label": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]", "terseLabel": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]" } } }, "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "auth_ref": [ "r303", "r314", "r327" ], "lang": { "en-US": { "role": { "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.", "label": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]", "verboseLabel": "Schedule of stock-based compensation expense" } } }, "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock": { "auth_ref": [ "r179" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the names of foreign countries in which material 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 are located, and amount of such long-lived assets located in that country or foreign geographic area.", "label": "Schedule of Disclosure on Geographic Areas, Long-Lived Assets in Individual Foreign Countries by Country [Table Text Block]", "verboseLabel": "Schedule of long-lived assets by geographical area" } } }, "localname": "ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable": { "auth_ref": [ "r208" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about allowance for credit loss on financing receivable.", "label": "Financing Receivable, Allowance for Credit Loss [Table]", "terseLabel": "Financing Receivable, Allowance for Credit Loss [Table]" } } }, "localname": "ScheduleOfFinancingReceivableAllowanceForCreditLossesTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock": { "auth_ref": [ "r224" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of goodwill and intangible assets, which may be broken down by segment or major class.", "label": "Schedule of Intangible Assets and Goodwill [Table Text Block]", "terseLabel": "Schedule of intangible assets and goodwill" } } }, "localname": "ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "auth_ref": [ "r8", "r25", "r26", "r27" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.", "label": "Schedule of Inventory, Current [Table Text Block]", "verboseLabel": "Schedule of inventory components" } } }, "localname": "ScheduleOfInventoryCurrentTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "auth_ref": [ "r32", "r229" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table]", "terseLabel": "Schedule of Property, Plant and Equipment [Table]" } } }, "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfRelatedPartyTransactionsByRelatedPartyTable": { "auth_ref": [ "r88", "r392", "r394" ], "lang": { "en-US": { "role": { "documentation": "Schedule of quantitative and qualitative information pertaining to related party transactions. Examples of related party transactions include transactions between (a) a parent company and its subsidiary; (b) subsidiaries of a common parent; (c) and entity and its principal owners; and (d) affiliates.", "label": "Schedule of Related Party Transactions, by Related Party [Table]", "terseLabel": "Schedule of Related Party Transactions, by Related Party [Table]" } } }, "localname": "ScheduleOfRelatedPartyTransactionsByRelatedPartyTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyAstraZenecaPLCDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "auth_ref": [ "r152", "r155", "r167", "r224" ], "lang": { "en-US": { "role": { "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.", "label": "Schedule of Segment Reporting Information, by Segment [Table]", "terseLabel": "Schedule of Segment Reporting Information, by Segment [Table]" } } }, "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "auth_ref": [ "r152", "r155", "r167", "r224" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.", "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "terseLabel": "Schedule of segment reporting" } } }, "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "auth_ref": [ "r304", "r317" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of information about share-based payment arrangement.", "label": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]", "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]" } } }, "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationEquityIncentivePlansDetails", "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails", "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails", "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "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.", "label": "Share-based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block]", "terseLabel": "Schedule of stock-based compensation expense by security types" } } }, "localname": "ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock": { "auth_ref": [ "r129", "r132", "r133", "r134", "r360", "r362" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark.", "label": "Schedules of Concentration of Risk, by Risk Factor [Table Text Block]", "terseLabel": "Schedule of customers that contributed 10% or more of total accounts receivable" } } }, "localname": "SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [ "r139", "r143", "r144", "r145", "r146", "r147", "r148", "r149", "r150", "r151", "r152", "r153", "r154", "r163", "r164", "r165", "r166", "r168", "r169", "r170", "r171", "r172", "r174", "r181", "r450" ], "lang": { "en-US": { "role": { "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.", "label": "Segments [Domain]", "terseLabel": "Segments [Domain]" } } }, "localname": "SegmentDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails", "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentReportingAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Segment Reporting [Abstract]", "terseLabel": "Segment Reporting [Abstract]" } } }, "localname": "SegmentReportingAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingDisclosureTextBlock": { "auth_ref": [ "r139", "r141", "r142", "r152", "r156", "r168", "r172", "r173", "r174", "r175", "r177", "r180", "r181", "r182" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.", "label": "Segment Reporting Disclosure [Text Block]", "verboseLabel": "Segment, Geographical and Other Revenue Information" } } }, "localname": "SegmentReportingDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformation" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentReportingInformationLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Segment Reporting Information [Line Items]", "terseLabel": "Segment Reporting Information [Line Items]" } } }, "localname": "SegmentReportingInformationLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingPolicyPolicyTextBlock": { "auth_ref": [ "r82", "r157", "r158", "r159", "r160", "r161", "r162", "r178" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for segment reporting.", "label": "Segment Reporting, Policy [Policy Text Block]", "terseLabel": "Segment Reporting" } } }, "localname": "SegmentReportingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r58" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_CostsAndExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.", "label": "Selling, General and Administrative Expense", "terseLabel": "Selling, general and administrative" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpensesMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Primary financial statement caption encompassing selling, general and administrative expense.", "label": "Selling, General and Administrative Expenses [Member]", "terseLabel": "Selling, General and Administrative Expenses [Member]" } } }, "localname": "SellingGeneralAndAdministrativeExpensesMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SeriesAPreferredStockMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Outstanding nonredeemable series A preferred stock or outstanding series A preferred stock. Classified within stockholders' equity if nonredeemable or redeemable solely at the option of the issuer. Classified within temporary equity if redemption is outside the control of the issuer.", "label": "Series A Preferred Stock [Member]", "terseLabel": "Series A Preferred Stock [Member]" } } }, "localname": "SeriesAPreferredStockMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r73" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of noncash expense for share-based payment arrangement.", "label": "Share-based Payment Arrangement, Noncash Expense", "verboseLabel": "Stock-based compensation" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "auth_ref": [ "r305" ], "lang": { "en-US": { "role": { "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period", "terseLabel": "Award vesting period" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails", "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails", "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": { "auth_ref": [ "r311" ], "lang": { "en-US": { "role": { "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate", "terseLabel": "Expected dividend yield" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": { "auth_ref": [ "r310" ], "lang": { "en-US": { "role": { "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate", "terseLabel": "Expected volatility rate" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": { "auth_ref": [ "r312" ], "lang": { "en-US": { "role": { "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate", "terseLabel": "Risk free interest rate" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "verboseLabel": "Schedule of stock-based compensation expense" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationEquityIncentivePlansDetails", "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails", "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails", "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "auth_ref": [ "r307" ], "lang": { "en-US": { "role": { "documentation": "Number of shares authorized for issuance under share-based payment arrangement.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized", "terseLabel": "Number of shares authorized" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationEquityIncentivePlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "auth_ref": [ "r317" ], "lang": { "en-US": { "role": { "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant", "terseLabel": "Number of shares available for grant" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationEquityIncentivePlansDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Gross number of share options (or share units) granted during the period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross", "terseLabel": "Number of options granted (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r302", "r308" ], "lang": { "en-US": { "role": { "documentation": "Award under share-based payment arrangement.", "label": "Award Type [Domain]", "terseLabel": "Award Type [Domain]" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails", "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails", "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.", "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price", "terseLabel": "Weighted average exercise price of stock options exercised (usd per share)" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockExerciseofOptionsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationAwardTrancheOneMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "First portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.", "label": "Share-based Payment Arrangement, Tranche One [Member]", "terseLabel": "Tranche One [Member]" } } }, "localname": "ShareBasedCompensationAwardTrancheOneMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails", "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails", "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationAwardTrancheTwoMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Second portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period.", "label": "Share-based Payment Arrangement, Tranche Two [Member]", "terseLabel": "Tranche Two [Member]" } } }, "localname": "ShareBasedCompensationAwardTrancheTwoMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails", "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails", "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedPaymentArrangementNonemployeeMember": { "auth_ref": [ "r299", "r313" ], "lang": { "en-US": { "role": { "documentation": "Recipient, of award granted under share-based payment arrangement, over whom grantor does not exercise nor has right to exercise sufficient control to establish employer-employee relationship based on law of pertinent jurisdiction. Excludes nonemployee director treated as employee when acting as member of board of directors, if elected by grantor's shareholders or appointed to board position to be filled by shareholder election when existing term expires.", "label": "Share-based Payment Arrangement, Nonemployee [Member]", "terseLabel": "Nonemployee [Member]" } } }, "localname": "ShareBasedPaymentArrangementNonemployeeMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": { "auth_ref": [ "r305" ], "lang": { "en-US": { "role": { "documentation": "Percentage of vesting of award under share-based payment arrangement.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage", "terseLabel": "Award vesting rights (percent)" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails", "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails", "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "percentItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": { "auth_ref": [ "r306" ], "lang": { "en-US": { "role": { "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.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period", "terseLabel": "Expiration period" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails" ], "xbrltype": "durationItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Purchase price of common stock expressed as a percentage of its fair value.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Percent", "terseLabel": "Purchase price of common stock" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails" ], "xbrltype": "percentItemType" }, "us-gaap_SharesOutstanding": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.", "label": "Shares, Outstanding", "periodEndLabel": "Ending balance (shares)", "periodStartLabel": "Beginning balance (shares)" } } }, "localname": "SharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.", "label": "Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation", "negatedTerseLabel": "Taxes paid related to net share settlement of equity awards (in shares)" } } }, "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_ShortTermLeaseCost": { "auth_ref": [ "r380", "r387" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails": { "order": 3.0, "parentTag": "us-gaap_LeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less.", "label": "Short-term Lease, Cost", "terseLabel": "Short-term lease cost" } } }, "localname": "ShortTermLeaseCost", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "auth_ref": [ "r91" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.", "label": "Significant Accounting Policies [Text Block]", "verboseLabel": "Basis of Presentation and Summary of Significant Accounting Policies" } } }, "localname": "SignificantAccountingPoliciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_SignificantSupplyCommitmentRemainingMinimumAmountCommitted": { "auth_ref": [ "r41", "r434", "r444" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The floor amount as of the balance sheet date that the entity must expend to satisfy the terms of disclosed arrangements (excluding long-term commitments) in which the entity must commit resources to supply goods or services to one or more customers.", "label": "Supply Commitment, Remaining Minimum Amount Committed", "terseLabel": "Future Minimum Payment" } } }, "localname": "SignificantSupplyCommitmentRemainingMinimumAmountCommitted", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_StatementBusinessSegmentsAxis": { "auth_ref": [ "r0", "r139", "r143", "r144", "r145", "r146", "r147", "r148", "r149", "r150", "r151", "r152", "r153", "r154", "r163", "r164", "r165", "r166", "r168", "r169", "r170", "r171", "r172", "r174", "r181", "r224", "r231", "r235", "r236", "r450" ], "lang": { "en-US": { "role": { "documentation": "Information by business segments.", "label": "Segments [Axis]", "terseLabel": "Segments [Axis]" } } }, "localname": "StatementBusinessSegmentsAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesDetails", "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementClassOfStockAxis": { "auth_ref": [ "r14", "r15", "r16", "r83", "r85", "r108", "r109", "r110", "r112", "r114", "r121", "r122", "r123", "r196", "r252", "r363" ], "lang": { "en-US": { "role": { "documentation": "Information by the different classes of stock of the entity.", "label": "Class of Stock [Axis]", "terseLabel": "Class of Stock [Axis]" } } }, "localname": "StatementClassOfStockAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsMasterCollaborationandResearchAgreementandStockPurchaseAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/RelatedPartyMolecularAssembliesIncDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r43", "r92", "r93", "r94", "r97", "r105", "r107", "r120", "r200", "r252", "r253", "r323", "r324", "r325", "r343", "r344", "r365", "r366", "r367", "r368", "r369", "r370", "r458", "r459", "r460" ], "lang": { "en-US": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]", "terseLabel": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]", "terseLabel": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Statement of Cash Flows [Abstract]", "terseLabel": "Statement of Cash Flows [Abstract]" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Statement of Financial Position [Abstract]", "terseLabel": "Statement of Financial Position [Abstract]" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Statement of Stockholders' Equity [Abstract]", "terseLabel": "Statement of Stockholders' Equity [Abstract]" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r92", "r93", "r94", "r120", "r408" ], "lang": { "en-US": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]", "terseLabel": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StockCompensationPlanMember": { "auth_ref": [ "r115" ], "lang": { "en-US": { "role": { "documentation": "Share-based payment arrangement in which award of equity shares are granted. Arrangement includes, but is not limited to, grantor incurring liability for product and service based on price of its shares.", "label": "Share-based Payment Arrangement [Member]", "terseLabel": "Shares Issuable Under the Equity Incentive Plan [Member]", "verboseLabel": "Non-Employee Stock Options [Member]" } } }, "localname": "StockCompensationPlanMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "auth_ref": [ "r15", "r16", "r252", "r253" ], "lang": { "en-US": { "role": { "documentation": "Number of new stock issued during the period.", "label": "Stock Issued During Period, Shares, New Issues", "terseLabel": "Issuance of common stock, net of issuance costs (shares)" } } }, "localname": "StockIssuedDuringPeriodSharesNewIssues", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesOther": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Number of shares of stock issued attributable to transactions classified as other.", "label": "Stock Issued During Period, Shares, Other", "terseLabel": "Release of stock awards (shares)" } } }, "localname": "StockIssuedDuringPeriodSharesOther", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "auth_ref": [ "r15", "r16", "r252", "r253", "r309" ], "lang": { "en-US": { "role": { "documentation": "Number of share options (or share units) exercised during the current period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period", "terseLabel": "Stock options exercised (shares)", "verboseLabel": "Exercise of stock options (shares)" } } }, "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockExerciseofOptionsDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "auth_ref": [ "r15", "r16", "r252", "r253" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.", "label": "Stock Issued During Period, Value, New Issues", "verboseLabel": "Issuance of common stock, net of issuance costs of $74" } } }, "localname": "StockIssuedDuringPeriodValueNewIssues", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "auth_ref": [ "r43", "r252", "r253" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Value of stock issued as a result of the exercise of stock options.", "label": "Stock Issued During Period, Value, Stock Options Exercised", "verboseLabel": "Exercise of stock options" } } }, "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockTransactionsParentheticalDisclosuresAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Stock Transactions, Parenthetical Disclosures [Abstract]", "terseLabel": "Increase (Decrease) in Stockholders' Equity Common Shares" } } }, "localname": "StockTransactionsParentheticalDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r16", "r21", "r22", "r85", "r193", "r196", "r363" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.", "label": "Stockholders' Equity Attributable to Parent", "periodEndLabel": "Ending balance", "periodStartLabel": "Beginning balance", "totalLabel": "Total stockholders' equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "verboseLabel": "Stockholders' equity:" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "auth_ref": [ "r84", "r253", "r254" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.", "label": "Stockholders' Equity Note Disclosure [Text Block]", "terseLabel": "Capital Stock" } } }, "localname": "StockholdersEquityNoteDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStock" ], "xbrltype": "textBlockItemType" }, "us-gaap_SubleaseIncome": { "auth_ref": [ "r381", "r387" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails": { "order": 4.0, "parentTag": "us-gaap_LeaseCost", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of sublease income excluding finance and operating lease expense.", "label": "Sublease Income", "negatedTerseLabel": "Sublease income" } } }, "localname": "SubleaseIncome", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SubsidiaryOrEquityMethodInvesteeSaleOfStockBySubsidiaryOrEquityInvesteeTable": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Different names of stock transactions and the different attributes of each transaction.", "label": "Subsidiary or Equity Method Investee, Sale of Stock by Subsidiary or Equity Investee [Table]", "terseLabel": "Subsidiary or Equity Method Investee, Sale of Stock by Subsidiary or Equity Investee [Table]" } } }, "localname": "SubsidiaryOrEquityMethodInvesteeSaleOfStockBySubsidiaryOrEquityInvesteeTable", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockPrivateOfferingDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsidiarySaleOfStockAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Information by type of sale of the entity's stock.", "label": "Sale of Stock [Axis]", "terseLabel": "Sale of Stock [Axis]" } } }, "localname": "SubsidiarySaleOfStockAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockPrivateOfferingDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsidiarySaleOfStockLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Subsidiary, Sale of Stock [Line Items]", "terseLabel": "Subsidiary, Sale of Stock [Line Items]" } } }, "localname": "SubsidiarySaleOfStockLineItems", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockPrivateOfferingDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SupplementalCashFlowInformationAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "Supplemental disclosure of cash flow information" } } }, "localname": "SupplementalCashFlowInformationAbstract", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_SupplyCommitmentArrangementMember": { "auth_ref": [ "r13", "r431", "r438" ], "lang": { "en-US": { "role": { "documentation": "This item is intended to be populated, by the entity, with Members identifying each supply commitment about which information required or determined to be disclosed is being provided. If only one such commitment exists, this item may be used to capture such information; if multiple commitments exist, this item is the dimensional default, which will aggregate such information, as appropriate.", "label": "Supply Commitment Arrangement [Domain]", "terseLabel": "Supply Commitment Arrangement [Domain]" } } }, "localname": "SupplyCommitmentArrangementMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SupplyCommitmentAxis": { "auth_ref": [ "r13", "r431", "r438" ], "lang": { "en-US": { "role": { "documentation": "Information by arrangements in which the entity has committed resources to supply goods or services to a customer.", "label": "Supply Commitment [Axis]", "terseLabel": "Supply Commitment [Axis]" } } }, "localname": "SupplyCommitmentAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SupplyCommitmentMember": { "auth_ref": [ "r13", "r431", "r438" ], "lang": { "en-US": { "role": { "documentation": "Supply arrangement in which the entity has agreed to commit resources to supply goods or services to a customer. Excludes long-term commitments.", "label": "Supply Commitment [Member]", "terseLabel": "Supply Commitment [Member]" } } }, "localname": "SupplyCommitmentMember", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SupplyCommitmentTableTextBlock": { "auth_ref": [ "r13" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of arrangements in which the entity has committed resources to supply goods or services to a customer. May include identification of the goods or services to be furnished, identity of the purchasing party, pricing, effects on pricing for failing to deliver the [minimum] quantities required to be furnished, cancellation rights, and termination provisions.", "label": "Supply Commitment [Table Text Block]", "terseLabel": "Schedule of supply and service commitments" } } }, "localname": "SupplyCommitmentTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_TypeOfArrangementAxis": { "auth_ref": [ "r349" ], "lang": { "en-US": { "role": { "documentation": "Information by collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations.", "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Axis]", "terseLabel": "Collaborative Arrangement and Arrangement Other than Collaborative [Axis]" } } }, "localname": "TypeOfArrangementAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsEnzymeSupplyAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsGlobalDevelopmentOptionandLicenseAgreementStrategicCollaborationAgreementandDevelopmentAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckPlatformTechnologyTransferandLicenseAgreementDetails", "http://www.codexis.com/role/CollaborativeArrangementsMerckSitagliptinCatalystSupplyAgreementDetails", "http://www.codexis.com/role/DescriptionofBusinessDetails" ], "xbrltype": "stringItemType" }, "us-gaap_UnbilledReceivablesCurrent": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_NotesReceivableGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer.", "label": "Unbilled Receivables, Current", "terseLabel": "Unbilled receivables" } } }, "localname": "UnbilledReceivablesCurrent", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets", "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_UnrealizedGainLossOnInvestments": { "auth_ref": [ "r74" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of unrealized gain (loss) on investment.", "label": "Unrealized Gain (Loss) on Investments", "negatedTerseLabel": "Unrealized loss on investment in equity securities" } } }, "localname": "UnrealizedGainLossOnInvestments", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_UseOfEstimates": { "auth_ref": [ "r125", "r126", "r127", "r128", "r135", "r136", "r137" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.", "label": "Use of Estimates, Policy [Policy Text Block]", "terseLabel": "Use of Estimates" } } }, "localname": "UseOfEstimates", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_VariableRateAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Information by type of variable rate.", "label": "Variable Rate [Axis]", "terseLabel": "Variable Rate [Axis]" } } }, "localname": "VariableRateAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VariableRateDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.", "label": "Variable Rate [Domain]", "terseLabel": "Variable Rate [Domain]" } } }, "localname": "VariableRateDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_VestingAxis": { "auth_ref": [ "r317" ], "lang": { "en-US": { "role": { "documentation": "Information by vesting schedule of award under share-based payment arrangement.", "label": "Vesting [Axis]", "terseLabel": "Vesting [Axis]" } } }, "localname": "VestingAxis", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails", "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails", "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VestingDomain": { "auth_ref": [ "r317" ], "lang": { "en-US": { "role": { "documentation": "Vesting schedule of award under share-based payment arrangement.", "label": "Vesting [Domain]", "terseLabel": "Vesting [Domain]" } } }, "localname": "VestingDomain", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationPSUsandPBOsDetails", "http://www.codexis.com/role/StockbasedCompensationRestrictedStockUnitsDetails", "http://www.codexis.com/role/StockbasedCompensationStockOptionsDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Average number of shares or units issued and outstanding that are used in calculating basic and diluted earnings per share (EPS).", "label": "Weighted Average Number of Shares Outstanding, Basic and Diluted", "terseLabel": "Weighted average common stock shares used in computing net loss per share, basic and diluted (shares)" } } }, "localname": "WeightedAverageNumberOfShareOutstandingBasicAndDiluted", "nsuri": "http://fasb.org/us-gaap/2020-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "sharesItemType" } }, "unitCount": 10 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(13))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22694-107794" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22583-107794" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22595-107794" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22644-107794" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22658-107794" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22663-107794" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1252-109256" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1278-109256" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(14))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "55", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e2626-109256" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=SL5780133-109256" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=SL5780133-109256" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=121326447&loc=d3e1337-109256" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3630-109257" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=120380238&loc=d3e3842-109258" }, "r119": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "http://asc.fasb.org/topic&trid=2144383" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(17))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "http://asc.fasb.org/extlink&oid=6828210&loc=d3e70191-108054" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "http://asc.fasb.org/extlink&oid=6828210&loc=d3e70229-108054" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "272", "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70434-108055" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "272", "URI": "http://asc.fasb.org/extlink&oid=6373374&loc=d3e70478-108055" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6327-108592" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(25))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6442-108592" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592" }, "r138": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "275", "URI": "http://asc.fasb.org/topic&trid=2134479" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8657-108599" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(27))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8672-108599" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8721-108599" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8721-108599" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(j)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8736-108599" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8813-108599" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8813-108599" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8813-108599" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "26", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8844-108599" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "29", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8864-108599" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "29", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8864-108599" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "29", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8864-108599" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "29", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8864-108599" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "29", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8864-108599" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "29", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8864-108599" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8906-108599" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8924-108599" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(a)(2))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8933-108599" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "34", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8981-108599" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e8475-108599" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9031-108599" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9038-108599" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9038-108599" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9038-108599" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=120311839&loc=d3e9054-108599" }, "r182": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "http://asc.fasb.org/topic&trid=2134510" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=121593590&loc=d3e4647-111522" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=121593590&loc=d3e4428-111522" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=121593590&loc=d3e4531-111522" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "11B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(3)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=121611835&loc=SL6953423-111524" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "11B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(4)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=121611835&loc=SL6953423-111524" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "11B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=121611835&loc=SL6953423-111524" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=121611835&loc=d3e5074-111524" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=121611835&loc=d3e5111-111524" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=121611835&loc=SL6953401-111524" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=121611835&loc=d3e5144-111524" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=27010918&loc=d3e74512-122707" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "323", "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "323", "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(4)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121646688&loc=SL121648383-210437" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599878&loc=SL82895884-210446" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919244-210447" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919249-210447" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919249-210447" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919249-210447" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919249-210447" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919253-210447" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919269-210447" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919272-210447" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919230-210447" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919230-210447" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121599337&loc=SL82919236-210447" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "79", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121647567&loc=SL82922352-210448" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "80", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121647567&loc=SL82922355-210448" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121582814&loc=SL82922888-210455" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=121582814&loc=SL82922895-210455" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "340", "URI": "http://asc.fasb.org/extlink&oid=68051541&loc=SL49131252-203054" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13777-109266" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=120320667&loc=SL49117168-202975" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "410", "URI": "http://asc.fasb.org/extlink&oid=6392676&loc=d3e7480-110848" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "410", "URI": "http://asc.fasb.org/extlink&oid=6392692&loc=d3e7535-110849" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "410", "URI": "http://asc.fasb.org/extlink&oid=6392692&loc=d3e7535-110849" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "420", "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.P.4(d))", "Topic": "420", "URI": "http://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "440", "URI": "http://asc.fasb.org/extlink&oid=121559207&loc=d3e25336-109308" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "440", "URI": "http://asc.fasb.org/extlink&oid=121559207&loc=d3e25336-109308" }, "r239": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "http://asc.fasb.org/topic&trid=2144648" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14394-108349" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14453-108349" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14472-108349" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349" }, "r247": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "http://asc.fasb.org/topic&trid=2127136" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "15", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=121548805&loc=d3e10037-110241" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=121555522&loc=d3e12021-110248" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=121555522&loc=d3e12053-110248" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=121596127&loc=d3e13051-110250" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=109259400&loc=d3e21463-112644" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770" }, "r254": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "505", "URI": "http://asc.fasb.org/topic&trid=2208762" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121556615&loc=SL49130531-203044" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121556615&loc=SL49130532-203044" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121556615&loc=SL49130533-203044" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130551-203045" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130551-203045" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130551-203045" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130551-203045" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130554-203045" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130556-203045" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130556-203045" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130556-203045" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(c))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130558-203045" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130543-203045" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130543-203045" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130545-203045" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130549-203045" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130549-203045" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121604090&loc=SL49130550-203045" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(7))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=121551570&loc=SL49130690-203046-203046" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(i)(1)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=113356391&loc=SL49131195-203048" }, "r285": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "http://asc.fasb.org/topic&trid=49130388" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(8))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(A)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(B)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(C)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(03)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(n)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118255775&loc=d3e1928-114920" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=118257860&loc=d3e4179-114921" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(d)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(f)(3)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "80", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121326096&loc=SL116886442-113899" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.1)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121326096&loc=d3e4534-113899" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121326096&loc=d3e4549-113899" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a),(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.13)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)(i)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "2A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=SL79508275-113901" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.14)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(g)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 14.F)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=115993241&loc=d3e301413-122809" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120383193&loc=d3e11149-113907" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120383193&loc=d3e11178-113907" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.17)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r330": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "http://asc.fasb.org/topic&trid=2228938" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "730", "URI": "http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "730", "URI": "http://asc.fasb.org/extlink&oid=6420387&loc=d3e23199-108380" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "730", "URI": "http://asc.fasb.org/extlink&oid=6420387&loc=d3e23221-108380" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=120406818&loc=d3e32247-109318" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=120406818&loc=d3e32280-109318" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32672-109319" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32809-109319" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32840-109319" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32847-109319" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=84230637&loc=d3e32639-109319" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "740" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=116825942&loc=d3e330036-122817" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=120385591&loc=d3e38679-109324" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "808", "URI": "http://asc.fasb.org/extlink&oid=6931272&loc=SL5834143-161434" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "808", "URI": "http://asc.fasb.org/extlink&oid=6931272&loc=SL5834143-161434" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "808", "URI": "http://asc.fasb.org/extlink&oid=6931272&loc=SL5834143-161434" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r350": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "808", "URI": "http://asc.fasb.org/topic&trid=5833765" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=121559654&loc=d3e5710-111685" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=121559654&loc=d3e5710-111685" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19207-110258" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=117815213&loc=d3e19279-110258" }, "r359": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "820", "URI": "http://asc.fasb.org/topic&trid=2155941" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13531-108611" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13537-108611" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=121572278&loc=d3e13537-108611" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=75031198&loc=d3e14064-108612" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=98513438&loc=d3e33268-110906" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918627-209977" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918627-209977" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918638-209977" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918643-209977" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918643-209977" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121603541&loc=SL77918643-209977" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918673-209980" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980" }, "r381": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980" }, "r382": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(1)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(3)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(4)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918686-209980" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121609121&loc=SL77918701-209980" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=121568110&loc=SL77918982-209971" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39691-107864" }, "r396": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "850", "URI": "http://asc.fasb.org/topic&trid=2122745" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "855", "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.24)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "910", "URI": "http://asc.fasb.org/extlink&oid=119991564&loc=SL119991595-234733" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.25)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-10(a)(32))", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=120398226&loc=d3e511914-122862" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-10(c)(3)(ii)(A))", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=120398226&loc=d3e511914-122862" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-10(c)(7)(ii))", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=120398226&loc=d3e511914-122862" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e61929-109447" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e61929-109447" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=SL6806780-109447" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62059-109447" }, "r419": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62059-109447" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r420": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62395-109447" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62395-109447" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "33", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62479-109447" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "33", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e62479-109447" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "35A", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=SL6807758-109447" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "35A", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=SL6807758-109447" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(c)(1)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e61872-109447" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(c)(2)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=68064819&loc=d3e61872-109447" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(1)(a))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r429": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(1))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(17))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r432": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.15(5))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.17)", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(5))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(19))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(2))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.3,4)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r440": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r441": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r442": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(3))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r443": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r444": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.(a)(19))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r445": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.(a),19)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r446": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.15(a))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r447": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r448": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(3)(b))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r449": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.6(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r450": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438" }, "r451": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121643868&loc=SL117782755-158439" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117783719-158441" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117783719-158441" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117783719-158441" }, "r455": { "Name": "Accounting Standards Codification", "Paragraph": "29F", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121639165&loc=SL117819544-158441" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.6(a)(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(1)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r463": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iii)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iv)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(1)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r467": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=121370832&loc=SL117420844-207641" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=99380617&loc=SL75241803-196195" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(c)", "Topic": "946", "URI": "http://asc.fasb.org/extlink&oid=99383244&loc=d3e12121-115841" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.6(a)(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r470": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07.1(c))", "Topic": "946", "URI": "http://asc.fasb.org/extlink&oid=120401555&loc=SL114874292-224272" }, "r471": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column B))", "Topic": "946", "URI": "http://asc.fasb.org/extlink&oid=120401592&loc=d3e611197-123010" }, "r472": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "310", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Topic": "948", "URI": "http://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014" }, "r473": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "954", "URI": "http://asc.fasb.org/extlink&oid=120413173&loc=SL116631458-115580" }, "r474": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "740", "Topic": "954", "URI": "http://asc.fasb.org/extlink&oid=6491622&loc=d3e9504-115650" }, "r475": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column B))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r476": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column C))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r477": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column D))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r478": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column E))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r479": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column F))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.6(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r480": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column G))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r481": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column H))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r482": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Column I))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r483": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r484": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "985", "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756" }, "r485": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r486": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r487": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-13" }, "r488": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1-" }, "r489": { "Name": "Regulation 12B", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.9)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r490": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6676-107765" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=99393222&loc=SL20226024-175313" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669619-108580" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=121641772&loc=SL7669625-108580" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116657188&loc=SL116659661-227067" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1(e))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.7(b))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6801-107765" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.9)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=120395209&loc=SL114868664-224227" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3179-108585" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3213-108585" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3213-108585" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3255-108585" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3291-108585" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3291-108585" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3367-108585" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3521-108585" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3536-108585" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=121566466&loc=d3e6812-107765" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3536-108585" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3536-108585" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3536-108585" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3602-108585" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3602-108585" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3602-108585" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121586364&loc=d3e3044-108585" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=d3e4297-108586" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=d3e4304-108586" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=d3e4313-108586" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=d3e4332-108586" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=121583591&loc=SL98516268-108586" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=84158767&loc=d3e18780-107790" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(d))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(e)(1))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(k)(1))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(k))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(m)(1)(iii))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08.(h)(1)(i))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r91": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "235", "URI": "http://asc.fasb.org/topic&trid=2122369" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21914-107793" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21930-107793" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21711-107793" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=115929471&loc=d3e21728-107793" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(4)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=109234566&loc=d3e22499-107794" } }, "version": "2.1" } ZIP 100 0001200375-20-000033-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001200375-20-000033-xbrl.zip M4$L#!!0 ( /:I!U%\7= (L14# )N'*P 1 8V1X2+?I]?H6O3MPX]T8,K7IDO33>/J'W:(](RB)EC_1E1U96%@D) M#PX 2J)^_/G\ATCHY.QKV#P^D/1AEUY>#XG@,3*3NW%;.&+=#) M;T5MZE8H%KRRQ97D_OW@7M0NLE6TI:OS6\!@M[*O>2N8C"E1"26'?R_W5+", M,:ED4H94,!FYAG79%67!6=]N>SB57R>_<#BY-QE/_W'G<#H]NG?W;L5)_G$T M/K@K']YMC[JE]);5=\Y._3CI?3[UPX>24RX_ MV>Q+9\]F[UY]HMYD!$:'/_O&Z1F?O_#QC\[5[>K]WI ;+2X^3[GR"\XN[>^> M'OQRY>G7+_WEJG>G8QQ.ZF@\P*F0L=W4;2FS9?SY16AT/)R.3[[>9&<'O]+* MO2_<^_]5>WCQ>N2[/VGT=CCCY#-,5#Y.+IU. MH\(?>Q/Y=S#[.+CU M:N^.]!;&\O-/ Y[B#^VK6_P_Q[WW_[CS<#2FTW?_N#/EC].[ MLTO=_?G?_NW??IKVIGW^N?V8K?.'_NGNZ8<_W3V]=!Z5DY]_*KWW/TRF)WW^ MQYW2FQSU\>3><#1D>8#>QWOM1!Z?ONR5PL/92SF^(X9HW*/3^W^M]OFU\/= M1^\^[.X_/'WLMM^^_K#]:5N_?OOKN^U'VVIG?]L\MSO]UY]&'W8^ MR;_[!V[[T;N3W=^>J=W?7A[*=XV<]VGGMV?ZS:/[GW8>O9*SHGINWIR\_HW\ MSMM7G][\]L^W;]Z^@IU'O^B=IX_M]OX[L_.VW>L WKSM][:?_G+RYM&[]^7I MDUY^^LJ_'KS2._O//KTV_SS=7N9<;OMD_ZKW9?Z6WW^Z\?3UX_'';R#,^W?ZX^_09O#:O8'O_Y=N= M=DWSRP=YQI/G^X^GVWOJX_/]^__2C)Z4*ELAA"Q&W?BM9*S=2J48YT%IK>R= MGY6 T,@?W$]W+^%YD_#>%]=5FOMZTL>##:Q_!>NGB["&E!VZ8+=L";0%)>BM M"*9L:?&M2?LB?P36BOT)+Q#1=M>CT M%BE=FL""+23OMQQ+I[7>* !SY^?6_DN#]H5TIE;Q%355@X4MPC0:X7>"P'N_*S-7:N_ M"?:2HK8273D=P!:570S"K$@A6HID__7LJV@WL7VO'(]G@)^C?18$W7O)[WEX MS"\E@NH->\,#Z>BSKTK8LIO[O8.9^'[\\8A)PLW]WD!.V:U[\NFD(K5CIY9! M+Y?AF\ IV'QU\VMG_Y>/. MVR<#^3Z\$:2?VY>'KPWN/Q;4=PY?OWW0EV>SVX\>'+YY].#MSOZK MCSN?W@S>//JUM_/IUW?GWY%[';\QK_S.IU_<]OX_#U^;)\(\.><1?=A^^N3= M]M-M8=UCNS-X\TZ>U>[\]K*>LF/&D@__LDIC*B3^G"6RAL1U*QN5Q)\K5%BT M=I#N_.R_B1X&BTT@^L]H4,DEJX&9(+CDE=?X%_0XD>Z^8<@LRNZWD MHM\BU.RU3Q0A?*,_P5JR\8;;&#&PMIE\A>@"Y%0-9K?Q)RO.CB_^Q%BQ'6(D MMHH8^RT J[!$5T$?1'%"%(S'7E$!;1QEAXT]6 MDA/Z@L4PHD 3;P5*112HB,^<*VRY)!T\5UU\MM_F3XRR.5C%)9 $H1AB"D[4 M:*T2IA83XL:?K#8[3B[XD^2TDAC32@CKQ)] Q*VLP&V);E3&@9?($[[5GP0* M05E5$ QD;!XI".%"D# H90P;?[+B[+@0GU#1F'794M:*[9 .OA5-J%MHLH0H M\,MMWK_6_N5?CJ5C6^ M$Y7;@C9!$:N(!L69JBTAHL,[/[_0 M:OL/D'TR/FW1'XZ'O5-#S.,[5V+1""H"I) 00"F($K( >7+B'&J.ZJM# MVH6I-\#^Y!]WX"H#]@YQS&U6OSP<#8YX.)E!?G\\QN$!MWF-!R=?3GF!)^VC M^Q]P7&9__E&+,2^].*GO[[=?O0,M@>_R#.\,E^LPQNQ"OW#UY]VWF[_]FM_ M^]'+_IO]9_!Z\-KM_O;+IS=O#S[N_O9/.?;ZP^^LP^!);_>W)V^WS?;'-[^] M^K#S5+[_]K G['-O'NT,=A\]=J\'(*4#JFJV5"V-1]9MQ535 M%I8HKL2!B%!SYV=KSUET3IN-@?@3&I@O3N(7^_K3=IOX^+@]>"R=]^5@Y^TK MM_W;]LG.X)5T_FOS<[^NX^O/STS M0@LQ&L\^O/[MGX/7GYY<,!"O3[8?R?5_^1>)H+,UQBT3D@C%*"H@EDI;$E." MLR P^O<7K_+S<]>X;)Z'@\>S=;W77OC&^G,/^= M>;?S"_%L;)XVF;Q?CY?BZ7T^?>^'/O\F.7"J7ZK+1JZ?.3\_?E-[EYJJ//K-&L_:[1) ML[*3S\TP8)P>\EZ <%-6G'XH55DD]S]?F"%5VUUKS(SV]KS4LM8)*&:&M*T@H0G$]"*0V@ M:F'7\H/3EZND1Z,I[>VYNV]0QR_E,>'8SQZ+ G M,NW^QYZ8G;-EJ-(Q?KK[U6M];I[/MUP6"RL'0(.1H'8@ 1=1;2V>2\=\[#F:Z!!>J:OT/!%^-1 M.:;I[GB/Q^][Q&?L$REX?FA/HK?)Z9?G2<6K"@L6H; N(:B<=I650E<*S%:0 MY$RJM D[]BF&AJ!.9PC*BPV"?XQ@V^9Q303;J?-",&55H\"(R@"0!%(JL '% MB;.O6)<06W06P85%.9<0! =!UZB\*P:TK[$65U2THJA"= AG?5!O^N#U^N U M$9QC'T2RQAN%WH4(3MOL2M7$:+#:'#EUWP^^Y GCF Y1&HG?6Y#H-B=?;+%6^U24EN"V\XYQB9 NQU-R6SB/IA2N!>2>^GB?6G" MHD)0(F;%NEH7HT0AJF9KC;1X]GX)OK03#@LL6 PU1[%M;;M(3M:1"1@BFF#5 M,AQ6)[R"P^ =8D7C+*B@HK>A6NM5B5GB*K\$$]*-?@I>J6J#KR1^U5,J%$D[ MD);,UO'Y(G"[>J..GZ?ZST<>'__/<=L^/AH=$3O MYF]O+P\(V_D,RI,.RH2H;=4!BC,Y@D0C.3DOC*ZFK TT]TOIM4EU[+_ 7GDV M?(A'O2GV.P*3D8@_!B/!?EMS$#A%HJ1CRC'$PJ37!J:7/,7>D,MC'+A2; ?&-5;)V"]?)%8)=;/8EV1,@A)4*BR^0FL!5%QWUNL'Z,)$S[*5@@2GFH,!KAP3"*X@RXVZ6I+S:?KE]8@ M#EJ0A6N#//,*4=N,=/,^U;2<() XN6BR^"+G02M:&VB68.'F"%/4C%RC3IH( M3,9,@:Q1Q1F27I3MVL"T2 LW1WRR]>)>G*;J M@@\73(Q41#B(K8F\7ALS1# M$ASH7!B<3> A(!N#!M&%(LU2= >FTU?)V"]_VL1D+@%J DM:M&] 56+;VJLH MAA2B73] ES*2L*0UA:I:IIQ5R15<,"EQ1AU"RD5GR+A^X"YV)&$YJ%(JHJJ5 M8U'5X*U@ZVJ.D+2UH$/%,R_4?3 7J+/G% )AH.1:8A5="@1OI;-A\%Y[M-Z[ MH-<&FB7I['E%JL0N6*V+;DE(L"!DT\;C4MOZA2:N#4R+UMESPT=7D=EBRR1H M%9V9Q%V%B*F6F BB6AP^RVJ!J#!D1"_&!*&&FHJ-Q*$D5[4S*:[N7K"5M?'S MVBI)GD!S%+\[FX-Q*2*R8@Q3S;\&T2 RL;1<94I>0=ML0/ISXRKH&/7)3*C'-SC\X; M4RVSR>1!)8TIH$"E/*/3$-/:0+,,E3D_F'QQI7C%F&T&E76,QI)15B?2;5'P MVL"T4)4Y/WPRU&*L\BV7#W IL=I*60=M0"MWFJ5Z,?@LJP6B549#,#&"!Q,E M<.4*-@5.A0!I&?MBNFSLE[]A)QA'QE-TE !RC(DK4E04J+ R=@T!7=J,W>+! M9:PA0:$8*$)JN]EB];7HK)V2@*H+.216SK$L'U7Q0KY@U=YG"S[:2!FU=%L; MHA=G--NQWKS0*:HK*1?:]N:'+8\7CX^DR4YV<'!Q>_,.3Z9,SZ?EQ_:JS__) MV)\>[E%OEEKS+S"]-J5:Q=O=>B&)[U7#W^]C'HUQVGO/%\Z:U^W/[$[O4TLJ M/)E.=NNKX=%X])[+B_%(Z##M\>3Q1^H?%RY/QJ/!_<%(/OLTRR7[X.3LG)/= ML;QZRS2]T'P/'_VWUQINF/LS47$][E_1'W\S]Z7X[XXN5/1M,W3PY$HWO?B5+](J8N?,E]AV_:H MSW3+G]6YN'K5LP>4E]\L?2(H<(E: M@8,*"!21*J$JJ=C*/F*'C.N#XXE$?9/)WNDE)A>S#'ZIQ?!X^.EDF5-SN@8@H<*V5JQ7P*,T0$%'1/C>L"S(P%/_T%O-#WD,1[-]$Q7 *HE4J#, M$!-#3I30H"8(WJ70D@5U<6?UGR#U<#3FLX_GX556(C'H0@<6>-!14EF^R& M2%V^ZL$NU*YQ:F'5:CI_SQ$KGBJR" MA: QL1;'%VS)%FPH:U %9V68M 3KM!Q.E92K"JYF@P4L8&2)VC1#Y:JLREWP M>"MI(9:46U$K;;UVUJ)H7T68RERXI7LT5$@9N.U, 7 MNI P?T6)SV]U_.@0N1J M6!G +DQZS F^KON-Y?!'.8E8212J+AK A%2*\K6P%S62R,3;PY].PI<=4*@8 M4%D/+NF$XC4LZ1A4,39W03G>:J>QI"46)NKD?*F9,TB?1EM%*U8TD*-+5G6 M-1NGL43^(!71'"F*U#"05,XQ>5(U!K:*2TVWAS^=A"]HYXKV II18*V+(6?P M12F#,=1ZOLJA4WFZ;]DNT^6D H\.;>&""C!!YH0J%_2%HR*5@[-K1ISUWF6Z M' H%#1*99I?;4GI6A%:UM GR$HRS*7N: M?1 N,7$"M6;$66_;LQP*0:F5HZ58)&P6G9."<_+*.-W2\BO3 ??5E9U_"UWN ML7@O!L6I6CU8DPQ@@=2V_+$NT5L3D=V&25T.JI=59R:J MHRG9?,[]L\H.KBN<6NAR@B7XN50=!!63UJ*QJT-J^UB-1FVR 5TW3.JR=5H. MITJ-HKLCE@JBPZ..WD$DQ1%!Q>)B!SS>2EJ()47AG(S$X-%[0P FYA"S\YB8 M"3/F3E;J6ZU>NB1=&MKJ=:=5+@Y<-DF 4[XX^ER;*[SK"-3 M3)40R*L42JK<-BI994SE-4/SUOA2%!\32+':C9L MKJ6Q7J!+!FUG<= M]R@NQ[QK=,J1+I:P;3#S,>;DM 6(I=8:<,V(L]Y[%)>D_&P&*DG%:BT0542E M#(>B2RU"KZZ,@=YB!"U45+G:U%+[5F,Q&&+C:Y"8+%BT:Z8*UM%[+$=VH"_" M#VX\E122*O?>I)M]*';B<"A?P2JP/1N5 M=X!"MQS!E$.*Y#F;5CM6KER,B$<6H"#7Y+HR<[6"6\W6?,C0JD+@17F !*V6 M-/IL1,H*4FP!(U?4QJL:D]%=6+VWHD9@S8>R/4*-R@I]8I*@52>CK)%. M3\EB*S:R(4Z'O,=R*!0P)NU"S"HE",!8J9H0?10B";-NE^WI)((.(8G;KU!1 M\#,!LRM&S$%J*B#;+OC_U1RY6N 6UR5H#J[,T:;*A0&M2F JB&+DTM0D&)T2N*/@"&9C"EV8:[L-G?_5%(4GY_!Z0"VJ.QB* 8BA;;]B^R_ MGBW7U4]/CKC\<5<\6\C^D@?8&_:&!R]X7$?C 0Z)=W._=X!3.?WQQR.F*9?] MWD!.V:U[\NFD(K5C>^>M?(KU3S=SX1_+J%WGS-^'&Z?/++W0@-?L"DO; M]]@;"N?EW-^KHO,C?X?@!HM-P.B-!I5#ZW(QM"+X0 M@F=KBJG$(!$:,.FH).B/+.)-(G\5>$/P.1/<; B^4()31@#-15GR4 B2(U(I M4V5G0JIIV02_35A$1\&(9G2A(J1H% M\5A+-MYPI.R M6+350!<(04W",OE;VH9@0EPW.VIF$C>QKLB]0",JJ@F @(T4(K8QZ M"(5LRA@VK%LGV;8SH>]Z8]GCS^2/WCPN7) M>#1X.!H<'4]G,.[6QSAN($\$Y;U#'/.#DZ]?X/*JT[WIB-ZUZ\C=9Q=ZTO.S&65$,M)\C6 ^:8P/H< M44PI:W3,25QYZ,!*P74GQI+6( 9MLX\6B1VT32M&PK2J5-2)VK$.K 9:=V(L M9YV1U294J :+R> ;,9P$](E%>%0O!YJRU:""U:O&AS;$\G!T++]E?"0M=;*# M@XM#+$_W_FL>RT]?XO" OVRLWQ;Q.3@>W.00C886Y]O///@. >E:DD2#!JS3 MD*!&#B&F"J9X-B;3:H-[M>GQXS6:_N9ILRK@!I-S-A2J21&2AV2=R\@<40*& ML^WL%TRZ-JN)\J*Q^/LF5YL+P'V'R27"RD9A '3@5=XCN2#?/Q@S+V8/[.()5;TN+@>; MB^BFX.5O;8.8[V#)@$E=R#B\(=0JN1:OP%&.&3%KR,6B2[7]S1).9?6YQ$B' MQ=RM)=1R1*;UJ61@*W8J D676ZXPE!@ONU#9=F7#[H90JQ)N5D48<@FV)FH; M/Y%-A5;^+S5354Y'[YQHXJZ-Z]PJ'ET8^W-;*LYG[(]*-B6TN1PGE,@:E<:4 ME4?F0&3"QGDMCR/7^N5_LC;T['9/^ 86@B[?2[(K25@KNHL">-^6LDMH[UST MQ:?*:S#XN6'N(IB[>'=,.DJ7E9\/9D';E2'LS>YY\JS2*%%6U$+)*(:&*I!V8FJ&:64C> MQ:46&Q[>/ ^O+B'Y#A[:MN#'$RM6$K-^/J&F,L9/H^HN#)ZB3@BE!2R+2%E%9V/6)/N2OG"#3'7;73< M>J-*<^(F5?#"Q> 92LB%0K)*K7@RP T?.S#X N2]J09"Q@)1)P34SD3A7;*^ M4KW=@R^WEV)S'%0O3/$.3Z9,SZ?EQ_:JS__)V)\>[E&/AS0_P_D0CWI3[/<^<7DXFDPGN_75 M\&@\>L]%S+3 <'5#^_W!2#[[-!LA?W!R=L[)[EA>O66Z2*>G_5'&_H6<> & \ MAURML1&24R)Z2ZM?;'T*-N>XNCUAP[0Y367>J$G9_S#J2$] -%F#(LT>P&4? ML;"KH@TM8,'/]1 [/)^UZ1)=GM:J*7,--E(&!&%I#,;DI"V;&!RZ+F3AVO!S MC6>W4G&%FH+F;,#;*/:35'0F@='9?TX&UN'9K0T_NSS)57TDH6'+6DA D%'G MDLDI3SZ@*-_N3W)M^-GEN2Z58LHY6!ML M0:%:JHC&.,NI9XE9^K.%R\YOQ\ M^.B_O=:P2N2;UV*^HG156H<2$""ID)$<%(]8:I6XB#?# %^]^6FQX'.K="4& M_GHYCKFN0+Z99(;K;>EO9/ @^,@VE6J,9BB.8B:C16#8Y(,I-6SZSX;#-V-E M9G/O#W#"Y?.86T?ZC&5?8S494B70F5(K20!%5:M5]7!:2U[ZS*G@V72>#<5O MDN*7--B,Y-?38%?ZP_=L!0]*Y:RM;TD,JC=)%]:(.F83G'-XYD,VNO]OK(>8 MC@64@QY=VA:V,)$QIS4KKKJ: 6MU*D#3Z>2-B3J[9&JT>+I/,*JT&;CH%$'B MEDISJN5I8HHQNNR]@:I*--SRLB=M@HE9XRV?PNKDM ]74U6H+6=M 9]"9B:M MR5GOP83$MWS:IY-3)6! !UN<32I!]"6)EX!<-!+8:B'=\JF23DXOF*+%WMH* MH,3DYIQM=1Z1H>I$*?(MGU[HY) \*XL2F/H"HLB#\FA"9%T 6PI.I>%,<,'J M0=GQ98(O)$(=W4!EI,NJ"^:CNCSH8HK558(U($]9[#F6XJLFJ\3$SWI^/+?F M&[ITARZ7+%"\OE>YPJWOF12L465G.%L,H )F5:Q+/B>RM<3@5]<"S0.RY?+V MIIK5N&]-Z;+8^&Y./5S0TCDGFVJ2 MJ,#G[$VA(KHQH!:G8E>WA]]LYSL<_V7"SU4EU8WT\43&V"C*,P&#QIR5KZ%& MZYWU.D5WJC+.9TMB!X>)%^3%KSVR'^>VNH*Y&K'/ :6K@R6%-I$*-5@+H2BW M!G5K5M ^SRMIB]?.IPCLYU1 M9('8))>"E0Z8D=J:^=#],9F%V,SEU*GPMK!#*(X9G-A,X*(EU+:!'7%=@[*( MB\)N"4NMQ5J*)E$*'4#FD-DH)]+6>HECG3XO6N/.L7.=TRH[H_?R:6\!HY[N M^NBY^:@5'6MP@:EJ$H^78E+)^YR20')U!.%[> +9$(<$5JRM MC1:]LLEZC+YP\"6M>W]=+D]N>I1P?O;$FI@R:W#R@(=T.,#QNXO;04:#HV-YI,?_<]P[9=*P[(WJ M] ..;SKC][PH83(!5R6T\%&46JN"6N4&%,#D &AOC5"[UFW^/-_[R]$)]J@\ M0_)1%*7HA.Z/8"T.O<6/8=E2K!7D$,&+U*^1O T)34"50BFY^V-8BXNEE["" MR"OO'_6]\X+HJSDENR.K^QY.9+6NG%J7;MZROPV7.NB)4;74(R.$("S$AN. MUE5-OBWTZ0"UY@#= MSUF 55B.5% MBLLE&I!@BR(9GU,\&ZVWG;/C^_B."[XXQ/$ B8^G/<+^P]'S:5E%V_[JZ,E8 MSGZ!)S>];:]1Q\YG%"Y1" 0:E4H.8A&]B1&L]D15HO3/N<@WU+E1ZGS]6B^Y M-\C'X\E"\JC/B4]72X1S"?4$K2E%M[D9S;-\E@ZE8V:ME9C\-K"_ MLC5,5@?%&RED4A1%7S4K<@0^J4Q,;98=Q68: W[9P$S%0Y8_\[[O>7C,+WF MO6%O>'#F8ELEZ]W<[QW,YL4??SQBFG+9[PWDE-VZ)Y].JKAD.;9W3O]33'^Z MF0O_6$;M.F?0A5GWN]D[?2;>A0;\?K9OC_I,QWTQY9K4!ZB\"D'5MB4=)?U5R,,O_ ( M0WN@I$+R!:5C*)U3<1I=\%0!V,<.=)'U9]:J6HD'H^'QY.D(^]N\EIV#*GOC M;';9.H@)ZVN78@]61=&H)):Z5;+VED&IA$%9'3A7*CZ'8#M@KE>4FBO F.4;/$4N MI)J4BA8A)$@I< M5U-U)?RLQ5=]+N[K3OY/"J:<<7X5J;%:<4 GIR1)62:PIG@1T5@@DHW:AS:F M"K4FTY$IR0VK5YC5BY^9+3& B=8EIQ54+CF 5>A;54Q-UO"RE=(U]L#BI,7V M[9^VO_4]]N7[D\L1V?9HR"?;.'['TR?'PW*C>17FZ$A]23H)*FS$D183$MF2 MK#6NU%K+^7[Y55QQOZK@7%V\_CV#\C8YM"IJ$PIH:O5/1. 0,\5@G5UZC#$? M<-K!CO06$[,C:GL*/ *!RL6:P#;X6%&""EJ/WG+3@,RQA]A80P3I 5PB>&CE M@8J+IS)*94VKVT.:6-G],.3QY+!WM"YAF0\Z>IO!963(9+/-SB32F0PI[>WJ MPG&#WN3:]WZ"O?&OV#_F!R>?7_ZG_)JF$$^>-[E\^3D^G_1L>'0\G6J;,T<2[6()MH_C59?"6Q.)KIVPI MOH401J^^33FO*OBBC[.\.)]SY/QN(O'Y:60X&I]\/JE*)BI96ISGF *HJBQ)A,!*+<$JRM26^:*8G=6GO$%W,F M/CD>#WO3XYM-FCA/W2(5U< MA"!JPB9YEPT;>]Z8C>[1ZUCK*623Y+J*9-LHD_0J@*8O!%E*!RQ7#.L0M% MOO\,QYW9PL/I<1L_6G23"EH5BJ(-5>E"CH4_@/+\X\># MH_[HA"]VRG4$LK)(D.A,KB)&*+8L.E"TYN1R\2%2AX#\E2?3WO#@,HQ[ASCF M!SAI._D&1_*5TY6Y,\S'.)0'G4-ZSPV59EI)5RT!O2U9.R $L0Z)B74"JEIW MRKS_32K]=:K-#96N1:48046 %!**/A"ET-:!DR=7R-8G5L#>=O-Q[M8YT4H&@&,L^E@P>)8I+BITW4>1*-3:M/YUNWC*M-YV. MY>><]K/%!DP3H['?!H%7#CA_%KGQ\_?MXM]E:JJJ)U8?5'\?Z '!=V<,VX.K?U,LL:W9CC<*#3NB IAX(XZ&J3P"\2 M"APSA9!N@7&Z>5^W)OQ;OB?5JK)145?QHD Z9E65IY!9NT#5=&$CT\I[T@U9 MYS7>R#%6C-JPRL!*(SC%N;KL0O&:ND36.5&EDS!&'Y28EB36AB!5&ZU(=O&2 M-G*K&QLWJNAZ'=VH%WNO[@_+BP>['9)'P;F 6><0LH,076Q;IBH$;[/%FM+J MI_G^0[.[]PJOBT8'#,6-I.8&*"I K61\ HH#])97L^2=/1F,FG'QW!I<5ZR3Z^IU$SZV3U( V '@JA<6DQ\PH!*X^ MHB*+VIXMK5GAOK$:LD[';^F+W^78VYJ>.3EV$[E4JL2Q:$!=LT,A H:$!"9C MO%KP=85IL#:^=M6)^!V%;N=DLQ25V<):KX,%0PDS8M0(51=VR=@.R='-\-<2 M6+L<.:I)U^"#UXWY?Y&6K/CG&OL!\OPQZ MP]YDVO(CON$9)]6'"]:!BP$U5:D!#5:PXZ+Y4KKYHU7 NKE^.6, M5ED,%<1P@U=M]Y[65;>JV!Z*U>OFEU<"ZN5X:&N22QBR0@V *:6(53JSSJ:H M M:OFX=>":B7XZLU8TB$.J.$4]"BY$*Z,%,V*M:8.^2K5VD;P>(]L7$U6)\= M1@ P*6!T)9!T7-?J.RC7(4^\*D NQ\]2\4I")*H-K61TJTOI?$85:JY458>, M[RH!N8PPB%*DK))-(IIBR8CHJ]A5D@]MZM)0Y->V +_D,V 115_95^B!JA?YT,7,W7>#B^][B_9[T+]1! M.2(,(((E0TW15YV3#]KKTG&_=W'.]O/NOW7T@,4[LC;H%+,"9L!9L5@)):J! M%"%TW ,N )DAD#962P!7L4JZ"%<%Q2>E+4+"2DO?)0$E8K;&V4RFB5@K-)<61E!!2\,%(!R2,D94EHSA \+Y67A^/ MN?B^N7B_2<61C@%:BA P'")IV\K)E2#R5O#M4"WTIV.4'S:;ECR>_-&RY!=X MTBY[?RPG'\QF+W=&0SX;.[_Y[KKX:N024ZJ@Q/96%<&1RX94SHH=&5W0Q0W M\UMY/I/8%Q>^+V9!^.))550&DYU#BUK"72<&)!6J1"453)0Z1*KE;[[9T'I5 M:%V=+RG7DD.6P!$08](V,-96"C>F+MG*Y>_.V=!Z56B-QF:7;J>Z$5"8HXD1"[F$0$3H740?LBX.N$ 'JC4M? G'C>" Q)!J MCF"#!^\I,KGL8JH5.29.W<1A09.&-X)(LMIF(ILY$[ W,0>OK%))E]+R@W0> MD9L?E+Z9GF+ JV@31:M!>DERV0>;BS/&43Q=O]0F"SHP:[!WG">]TL/QR1[V M>;?.^LB5%!3CWGN10.)1:"85;W[FX)I1Y3QG];)RKB:YI@I@'4?E1:X1E:C1 M)I-6O[+92@ YKX)GGQ/,3_ZG_CZS_/%T?*\=./_RGV64_W(EIN.Q//C7\]2? M'[W.)2_OCL)((1L"E,C15(W!(AO68+4BE5=84;9,;B\9^X\G;>M;V])&=#PX M[LN;\HB/QDR]F9)\Q!,:]V8V>K>>USJ\G#5&&:->\'"4)S2Z45;-LTQRT%X5 M8P0Z"[4MY'>410&AY5:1TMT"X$#-4.L0: YU,*4JY="!-BZ+%PXAD*]%XCK( MMP TI_3#0Y[@$>.[KE1/IF -AFIS:HD?Q*$RD2ID)+CP(6 ]@TVO7GZPN<&F ME=[#@]X0/]PT9GH^*0EKFPN%:#B$+-&@SLRJU):"15,^JWB]WIB)HNJ+#+CQ M3C8OP*+80AV2K>+%7 34EB1$8;9$TN?,&6"POK9Q48#!G*)[3\X+/B85B2=3 M2-S2X3CDZ NFBE?6GBVB!/;?B-6NO\KK4A7J[]DU2TRABB=11F1V$1%0B[2: MHQ0M*E]75P3\OCK80YRTK$_MGU8V_+V$;L/IY.N?7@[F'O$ 6[JHH]&D.P-: ME4S2JMC 0 K1\BDC4_RB7;HW>H7>^\6='.L_>XQZAJ!+$$&AI1,B)D%+*VM MB7"ZXS((66;62EZ8N&K6*FPIT72:B16OQ"G4,12 M 0'-*+\JS76!.5=:X#N8H]DY#S4V-P>%4PXZ9K$"&()&\O&L!18@3+ZY!>;D MZ;555;J+*_)DX !BM9I,CDIEJM[5L[X#YWUG-9KB:M^Y[EZ+*^WV/9Z^:%TR M&0^Z@A?:6)+0$4T)[!0JM;J>_C3H.QCS;*"U_?Z+P>#1N->7AO+S6FFQ=WQT MU#]Y.!H,>M/9NH[+<\-7CG9$*Q@K(:?3CK0SD(I*D5#^URI#MEH)*SQ ]Z?@ M[_'1=/:-YITW!/@SSUERCBB B^L 3Q+?EL(1O76YLL0 '27 =LOTVIY\ _Z? M!<)08P3J7G8ZU[?7P*F6K5WBD=ZUAP:J3LQFS( /6,D)R;6%;U"A1 M')ZKV16&Y>&82V_Z!*G7[UT:/=KG\>#YZ(9+QH3Y64=J[K"8*N$%(-57#ZI(]ADSC%I$:HQ2JSL8L1,Q2D'SE/*!<[T MOF"SM0'I;T0B%V'ZBTAD;AF+M/?H8PZ%(I5SL+J+?8@"O M?:-?<=S#W.>7G_7/^9'GHV$9#9])^XXS#M_MULKR4.V\Y\\>[+Y<1P(I=(E, MU!PK0?$^J8P470JYM!W+N>,$^CZ3, =*O1C+V>WC=20/ E?D4BL$@J!**DD< MB;605+3.Z]47P\]'D\E#^4G"#!Y2CRCSFW?KEXRM<>C8L/!C*C4\3 M>Z[?>]/!^RZS_AH=, M^.+YPW7<'>8*)S!1\I=RDYYX9@?Z%*EY()33F+6KD"'!0P^&0C*Y6%=L6CXZOKES8$ MZS;!%I_.*^1DP7$%JR1"CD(M74W;M*L]JA17>&_%AE>+7F$NT;!+K<:<]A!S M1,"8W'+\:C MC]_WZ-)&X=-#;3_C=Y<];[=Z*+0=]7ME-IST3'[HE769N\(B;&-1 MY[]Z'>-.K(2V+:!(/D-P%36F2)5JU!8#< ?8NJ'-XFF32D1VW#:X!ZBNYAJ# M>%.C$H&*G2KCNC%R"V3K-YY7F\5*E^9?R(HF;9)$&LH)*^TWQ!YPZ/KS;$&3S[$K#U!JV2F3=$QD0N<0SBM MK]MM&;@R!G&]_?ERY*AN3+*0N6@%FC@5Y\ 8I 0(J.R&OAM_W@DBBP8-4;5: M]:J*8P\Y!ETI6Z-R9FLV=GC#H^OYE$.O%!*N-2E-.T; MG[H<2:@,Z0J@0D(%@22H@.AM3^+55(5/ $HMUD5/+4^X@>5M0 M!8DN#&05:P?(M,'RLT:QH&Q61>4"@1E="-JJXKQ6&1UT0*-L?,MRY8EA#J[4 MG(0^$.7?JDU2UN=:G,IDUHQ"M\6W+(=,+54:!N4B) #6,9-FH56I1(H NA(S M;;!L>8R84LZE;2)*0,[D8EQ1)>8V2Z/2NN@$\2E'(T&3=T;#ZYF#3BJ%:D-B MZQ'!ME1>+.8=BDU)%P^N0E>&Y58.S24Y;2PM%7PF9P4^B,E:JT%Q=*5@-:%# M^[ V"YL6'*4L?E.7*6V*WVG%9 %C:$F>7:&:?=0:JN\ 6S>T63QM8N9BM4LM MX30HFN7AEW WA<+4LH9W:*O6QL@M6"XO?M]7;/.=-1O;IHNP*ISM6RTID%.J ME"ZP=4.;Q=.&F'5M"?5S:C6A$9733KG"2<)HS[K[OG%EILO7>_1P23Z:BZN& M$K81'[:82W**:D+CV475A8007:'O;1FY7%+JG!*]B8044X"()MJ4JC&EED(M M(<6&R!L>78='F90U)9C4JJPZ;N8PNY!*!-;6US60@2MC$-?;GR]'CB9-;8!? M^8P5*F%$+,4$4TNLS*9NZ+OQYYT@,F:?(7D-!C2 IL3@@E:D8PB$?F.'-SRZ MGD$D2\HESV0< &'F5+.)CKT@;1-T0!=N?.IR)6%*)H)W:!(S5!,2!1V+1!JA M989R79C^V/BU52&3$^_59?.Z"S-WX MEE4A4U#9:A-;34<$;UVJ4+TOR&*H%+LND&F#Y?G$3#+&!B]HYMQV!D27D@0R MP25MLJ]E373"4E9O+F%4.4L'])5,5@K890R4O(." G(;5EZ3GKF4U9M+<-J* MHDTA6$\>O%$H7=15\=N>'4N_[<#*ZB^(#4F^,9XA^K(W>??@Y $/Z7" XW=7 M:@>V92-GHU-GHUK/Q].GH>$V,:WH_'Y M'2[IWK//[J_CNO)$)=M2?=*V@,6224)1K;4#K=F[+JPKWW!YY;B\I!TOQEF/ M)"%5<,!@4B7-R(JM*.#D30M'\K!%DB M0>Z 8MQP>>6XO!R]S*@T9X(B-(44.3M2.@:V*@C%ZT8OKR>7'ZRC7L84:J3L M+2A1&!JS+EF$,P1RND;#&[V\X7)7]+)U9%U"*@$SH*FH@L+D6ITV4GG#Y2[H9:&QY>A4KC&"+2FQQ]S&6U.V"31L]/*&RUW1RPE]5HX@)5V!#6*M M+@$4U"(YBNI2V9,-EZ_/Y;6LURD17D@IIJI# J]\A""" R-9':RV79C'W'#Y MV[G\:!TU1B#V@4U-5:RQSR%KAT0J6^\"VN@Z,(YQ+? >WR!1U[#'='(+G.HPEB,4#*"R(I4@VB87&HA M5F1C![C<(=?^5U,4-]"C[A.-CH=3Z53$O?>8^W_5F3I)XY19L08)]DP!$U*T MV6CB7"BU[ SVRA#&*M>5WM!X%6C\;:,7ETI=?T\=+>N511^B@PHQ ++R+EDC M;Z(QGC;6>'4(-I^NM)8#RM(E?%+D%94*WN6D4_+D&:MB41EI8XTW-.Z -;85 ML)0V.V(18@ZQNB8S7- A&J:.S_&MFJCXJV&O5>@LG;3&*:FJ,"M?DP(63GMT M3*X Y.H4=V$/]K4(]*03HP0;&O_=$>3JVCQ(6YV<(!>1#3G66+S2$NMQ\?]Z MMJKL_99=GB]X7$?C 0KVCX>?3@9KDVZT-Q2:R+F_Y\3YD;\C-!6F8H+*%1WH M:#(%JYA1)0-5:UX/3NR,WG/_\O;?#2O^K-Y#]1FRKD9'B39\1*M0"QMB5 0& MPNJR8IU104*4"XJMUBQJVD>/VF()%5)0A?3JHG+>\D]Z0['+TO)?'.WDQ:P! M7N!D^NCXBD+XVNE6[8]<>H0GD[.O= 6\5A$VVYJB-A"-S12YS1B0(N>*[8#S MG0-X7L"+'02O^FBB=ZYM'@#+,:5@'3E3O1RQI=X*\![_SS'V]T=/QRP.=[Q_ MB,.DN@>E4?*+(+($N;;4'U+IF1*^.)WT'>)'!%DR4 MK&%@':(+I" C)908G>VM &^A1G2.X'$J*6GEB8(#E#]>*ZNU8A,PD\=; =X2 MC>C?A?)N[^.],4]&QV/BR>G;0\8R>Y[2>__S3_+763 9+&-,$CNF#$DZJO'* M6I==41:<:)R&[)?O3*8G?<%PT!MN'7+OX'!Z#\R/P1U-_^-#KTP/[VFE_M__ MN#,[]^>?)D'0_+%HWZH_&]\4'^_XQS_W[^_Q_4C^K__X_38_]+S?[\1Y76V*HXZ/5/ M[OWO?:'&Y(<=_O##R]$ A__[WR^I[W\DMG;#Z>_+LAU M^A*BGO]:86C[?:]VGNT_?O3#WO[]_?)Y MSI;G?+C]<,O\6!^V7G__V_&\VW6\7KG49C^\.'[9WF M$CPK?MRS?M;]H[C/!]U.O=A<>[U68,BHFN#Y3G3O2]P&@^[I*Q*_LN)+^V9G MM_'__@MQ^.>_(QATNIWFV4F\E2U&F+'K0UG< T:="EONN:!*.NTT@C1R=7(O M!7IO*+[HZ 3KSK=>;7;M64*YY#BNC4K?D$^79K/[[1^\^VV?-,[<\=:W@[?J M>.=X@S3PIZ.=S:_G.WO;;/_X/3MXN\4:Q_OGC>\-M'_\Z6MCLP&;>PW\#VFV M][]WSYO?X[][7UAC\^OESN=MN/-Y]RA>B^/GOC<_;Z.#S8WOS^M[$N\<'FY^.&GM;I/&Y M\[%_\OZ\^?GC^?[>FZ/&R58-S?<7A]1#E0@2.,$8H%(*H&2P@$7FI-AI$K78VCJ"X'T) MR3>KL%X\*'AC8L86)V;R!RFC]TO9;PW=^UKL=/SOOWH>TQT,NB>O^/"1!HEH MKY^IVXM,E9ZGK4_[_M75+W^Z5O^TK2\C"Y9?75[TYS??&[2L;H\V9YRG$14I MM289*=EH$'EOX*[N/V*JM2%3_3%P=]\D\5+^\-L_O?:G;RJ\ABA]Y,5_E.,> MCCU.0IK0_ZF1VM45I]JYB&"E:.#3BS^O_AY-;7KID>(Q!FYM'P8_SNGPAM?W M3Q]YA>+"7;W0&XK 7>D<@REXCP#=DL.-7DNWBX^=ENTZ7S0^W!+$V_+[R*>* M@YDVU)51BD&\.LY75%[CS'3;1K?;W8'I7MR'A._/="^21?MRUY]V>X.E!,4W M+?/V(S\X_H)VWGZ$!Y_W+_8_OV?-MV^.&]^_T/V]O[XV]G;;C^[VP>'37>OK]HOOUXWMC< M(OLG;[XVW\CS?_8V!HT/\"+^>YB*/3@E#=!.(A!720/%+ 2(:N0,-X:Z4%O_ M?_^E!.5__@BIUP@TVF>+W$$)E9ZS?=0])/]H%'_BYGG_<6-W;VOWG_UB=^O= MSNY>\>[C[H>/&\V]8F^GB)KB7E0'AQH%(L7.;H'8;^[WX0L[;XJ]_]TJQM3) M:U5RX_5>$=]&BM!;"U1BW1\EI$^J?2V0%N_ VD/:5[=7#(Y\\9\K."B&EEOA M.\Z[8I8X]]WSG/J :VL1;PTCU4L+4TW6WYO?WM/G=QK'9 MBSCF\T.IHK%LN0".F0 H(01H81D(0@0MJ/6$X]KZWV<=/Y1W NM%FOP'(6C5 MY+G;R_I=UN^R?C?8Z\6':)7)2LNNX#4_'QPUCX_B=0='!\?QL_'U@[VCUO[Q M%QJ_[_)@KWG<.&Z@J #^H.!UT<')%MYY&Q'WY,U)_&Q4\/YN[[S]N[6S&<=] M_'>[@1N7C>^?V@?MVPJ>=Q1%-'4 *HT!Q1("91$"0D".@X X4#-2\&A6\*:L MX.WM;C0_;"35])?N&#;;*8,Z;^&W-\LN6D@6>X_MLH$,6 MI$*81^/<.A%U9@:!<5X!'P(2C*04&IR"? @0*B![O .T.I&%^W2<>P3P\.'_ MEN A'QE/F/ENVO5?6OT$IX-F?.?E[2A\Z!'%1/J17D2%0$ 9K0!"2%$#?8#8 M)KAS_J+5KP]!?;MCUY9P:ST2VG_;NM!V4(I*T0U%[UI$"MTO^J?>IF0!5[0Z M16O0+^Q1Z6QY.!11F<>? K),@#5+8:%3L<8)>:(5#M?0PV_B-29_\O9/K_WY MD%F\\V.]"HNP_4="/F73Y5Z?T:QMEYE;_OUT1.&TU_V6P.:VRW3(3Q%I1\UK MHJ99'FAXGOE_&Z>,]/\;JO=/^D>;3S M>9\=''_YOO_Y(]P__OACG.>HL;G[]>#DX#B.*])<'/_G+;B37 AX*U[7/MG9 M;!X=[.VVFI]NNP&0@D1XR(#$G@#JD07:T*@[(A&\]X8KSVOKF[ZMSW7/5]D/ M, 57VGVA]EEOIQ\LPCE/9,:EQZO%>_IB>Y06:4OH66*+<]Z LWT#.)XP!Z.Q MJKR,QBJ"&$@O-&"*>>0H2G_4UJ/"#:7 2JF?0DYUJ'P&Z#./3?-;29]%MU>4 MI_V*X[->J^]:MG2C13V_-4ZUY<=Z7W2G];W\^_<,_RL)_\LJR]MKNVL?UHJM MD]-V]S(*\VVT+IK=M=^?Y1:O/9Q7_1@?[ERL/@'%TZP^%"U&*F81F$5HC4HU MDSOC-8SQK"Q5-B-+E;/'3O,BZ*W'Y6Y-ZW&R9MV8[/9/O@/]R^:/P2AH?,":J: 4"P JC &J3@S MP,Q::Y0P 4?K,\Y_\N_C):*0MM=MS;EOIQ@M!-2=6>@@\H090:!$P@G@@ MD7",>>&$20&^**AQ?3HM7>5]E"W?S-OSX.UWW8A-[8/6Z;*'6>:&-^^O\<88 M1:R#<2E%A!J*(0/:2P<:AFWRD(\1"-)3I[-TUZD MS=:I;A?^PMNS030JXLNA97W_,7[-*\=,7"@_;LP_[Z.9,UX>9RQD(T04+Q*, M/\8A^D2OYU.]I55)!'H@$>HF.>Z_^\7 M_WI4=S7HU37>@J8M,_2TA>ZYW61 M3ER\*GZ;(44G,V\C?M72DO*34_5@X_O70V:@-$9"$!1,F7I$ $,T \0@JP0) MP;M(K)S=.2#V^RRSDO_I1GQXEP1CB6/$3U^8YF;C$'E#".0<*&PHH 1)H#D6 M0"%"F<2>.BQJZQ2C:'/!.ZOSA,3)50.:#U$KZ;4&K7C+8;:E[WE7G)[U^F(GRL 6PK^9WY-.DXY!;-C!JZE/WBU^@VLB%7I98)PK"LP:')4[FCR] M$:]A)6<2CN)KDLTDT$7HFJ2/3NU*;Q MMY9-I=IK#=IE:O26MD?%Z[;N]ZNEI[ZHQ>CI-+P57H#19Z_G_[X/5W1QFJ,S M!.5&V;JP1[KS);[0*3X?M>(KN]=D-TFJUU3-XF?OA"H*W"KLZP^7)Z;;_NU1 M'IJ%2<3$6W-)67OTU8MAD7EXFV9H((Z4^TN$3:DX+*6!.'2G[VSNH\9QO,_Q MQXO&]X^L^?;]]_WO1ZW&R>YQ? \??-Z'!YOI^WY,(N[2>,UE&G-S+]Y_[VO\ M7/-XY^WVY<';1GSOH'UPO/NU$9^M^4E>WCJU0+0G5B#@XIR#U( 3*!C-3,DH MLXJHH#P9'D>.M/)AT+5?Z\6I[A7?=/O,%_\JK0>4CHD7_:,*'6O(^W%1^W&D M, [Y)6_&1VS&K;%*(EH&REA<>N\ ]5X %80!BDI!D+(X,!XWX^;_?]36]27IA6'DJ%@> 2 RI\Y,Q4)4(K MBN,61H0$'"WG(U\T==_I_Q1OVUVCV\4'W_9V4*3RLG[PZ^#T@_GTU:AD\MCS MWML=E\X-^,)<%O;(VZ]%ZH-7G!_Y\IQ,\K3>G(%_5?R&1M5YCG2_K'WB"MUN MQX^DRE3)@?N?LU9RWPZZA?&C#\0[CSRXUY5^NKWQ2C\CC^Z8(_C:6MZ(*Q+? M3I5^"A??[7PI/WK:\]:7T2>$A_-.*_IGT<+N'W73Z?RK,CF# M(STHK[X);17G^O:@RW(NY<6C1_J]7NB.*W[#8\]MXJ:-'S+'25[B1>7GXY5I M/*.;E0VDRI&4P]7]0:'@\ Y.7_;7'JR8,^LWOAUA&*/"! 5<6!J,H59-! D#( L)$$@Q%;7W?]W_$@OLJ'$UWB_^T MD-WD>_RZ>NTLQCI=.+J[(YK=Y9QO^G#UJQ5FB"+A8X3&D]9@$!&UI-1>MY.T MS_9EX:,F>EEL)Z54VS(3:5,/=)&J6OU('3?W&(\$[IZU1_50*62)&"*4G[7U M#;=\ 'O%;^E7\2&WTJ<%1JZS5( 5XJ6 XD)9K0&V<-L4D Y!SPQ#E5@J?(7_AD)^!OQ(+,QGP M1X3513L^H"^TM1'X>SJA=P*_7M*A[WVUB'L,W/M&_R0R1OR6WI6B&H'Q)$[6 M93T9#_%V4<5.D_FEB%-V/CBZ>GLMFA&^')OSH=4IZV26>;"UA\96*VKWO5C4 M'AQ"K30):@^,H):*@]T0%<(&X*NDE7&[9FVYJV=AN*8>78IJPC<)G\D!;;%389X[+4OJMCW4OK\2GVL1)@$K%^ZOO2!I=33KLI] MQ[\W_VHWXKWVC],]=]M13RL]@OO'[>.=O??G\?.T>;)UI]SW_IX];[S]>-[< M:[;*\;_]>+F_ESR"S=;.YP9K;FY<['__@O=_J//E(P$'JA600A- I99 (LX MDD$@[7C\B6OK_]S/!57QVR_J),,L"NC_H(G.*Y&AFODKJX26&S>[9ZCIC+90 MWC)3V3+TSTG2PI9I3A M/TM@=#S88&AH;)3+_-=9O]7Q_>6, \[5V+@8/^V.C C$&0Z$13X5JJ% !68 MXM@&Z3"SBCZNM] \L[Z?#9UY-*N!=PNAE:W[O::92I:?2JZ6]FVYLJ^OW>&9 M4GY**9?CE"(D4YC+ (PQ"E",,# "Q]^$0HY01#!U$U#*8[+4^!*$HL)/0CZI M&,&]D:I6N"\[H&9$=W;-K,T;Q,[1G2A_L#W7&ZY_I%JG#6<@\=:":_Z=_OC0T5"XUW MWH=>SPMW5JGA[/3"G?TCWVY?B6'Q6Q2N,N@X[ _TB!#@PTDA^[Z_=-'O1=// MA[0:R\PZSTIH/#]4 FLHK 3&20,H%P%(B3$(BED-N?52R%]21Y5WZ*IEBO!5 MR139*#,L_CYK7XZ:E:-AL_)Z0KR>+\[3CQ$\O"E3T2+YG75:0W HCZ;U:[_>/2QQ7K1O5F6>])FRM6)HN"U5%!A9:AR.FK1D!!FF(.$,L(/16V2 M)@972LOM7)PQ->97E62Z0V7R5<^G_-1O_J:DR__WYVCW4+PF1G>\[TIM^MWV MV<#_.?IR.'Z+VB]*EHW_/.K=F-!?/# ]K[\"'>+3OM+M$0^F!+X6&/S6+87O/1L[;LS_W^K.R@V;XLAD=24GV, M-Q' "P3!^Q+M50D_S8^.OK=U)BG-?06+"ZVH% MYYY;S'IUJI(OI(#_NXW=O6)[K7BSW=QHOM[>^*>(]OK.;F-C;WNG.8=:Y+\( MLE=7;O/(?C:RJJ1&3GU/SH-]M_>V&J,HQ=K2QN"O/2%/MPM"F(V#=.0QT=4< M6;D(SMM1X]M7Q1 OBZ->?N=; N]__ M_8?^T9]3O6R>I4K RKLP[\(?=^'K;L?Y3LI(B+^5MD>9Y_Z7;L?-Z8L/1]X/ M^A-MQY[UV2R)LY)$D2$V0VS%1O9LP<8L%1L9 MQ $-NL4#6'M?Q"3C;!;'&8FC>AK.YL#YXP+G. ?.\[Z<=%^*J/\T=$=_*='_ MO_O%9JMOS_K]=#(J59?=Z.CV9;]5*N,W=)'X9'A&.7UFU_?/VMG_7!VI6'%Y M)3(3R2R)A&0BR1MS\M@[+$]1I?.LY4'#DAKB"^VKOQ.SM+O]LW0:4YONV56/ MJV*WU?^:Z2)+Y:RDDF7#8Z9\03-?Y)TY^\ZW6M=XD>,AED MD9N5R'$X"1GP2ITP>?9QI"H\Q"(.KSV/=,>+8MRZ(!V(?+" 1/7.AC]_>\]R M9%/8WNKJ;-_V6K&S][];N[VA MI5#V2\VF0A:VF0D;1]EO-%,:V,@\D+?FY%N3U=93R*!XH^V@V\L4D.5L9G*6 M*2#G+&4&J-S.E+7UCYUA*5_?2X<&='M8XG=X'"LU-CCKM08M/XPL?.S[].;( M;,B$D<5R9F+)<2:,G)N4":-:.Q.CVOJF#_JL/2@^GJ9B[[[3ZO;&>")S0I:\ M64E>YH2)DN.S)"U(DDAM_4-<+3V8V&FQZ!Y6&=JJ-[+I""3_ M:77@/\KV?E>O_[1S[-R;V-XC3S]MB;CP8S0/=,'&#W?@?7R7XE1*__EM>[$X MK4S/WL4LFOK5T:?AFEVU)$O__;PMV:,V3J6?=7O@3PJT]D#UN4G7O*(/^=0^ MRE5_JD[[8.(E# M'?0G>>#Y]?Z5:U"II_7^96*-(SR+%KU(K$F,GG@Q7/O)E7"-T9_T*_[IM;\> M\F,G(U?!_6G#W>?X2._;L[-VD:96[L55%_='^$CS^B[7^FYZZT],Q'."TAHC M]>N6R<^;WO^RUOMHE\XXGK"(N=SH]\?UF0DVR2,GY7;3[C3KZ(D=NV0337I_U>A$9"UWN@E=/V@8SF*#\_0O%\7O'*I= MFE,GD708R*9?_'_.6M]T^Y;+X;8F/.\IK-I\_6NV\S+TU/]\8H:2-#1%JC,Q M_VY=I+#)FYZV907LLTYKL)L\Y&=]5XN;L9.>LGRAY;#T#'+.34 4TJ 0\TI3 MJ.*K)G!SN)V4<,@)K!7.V]:);O?_IP;B/A[F(,5;7 Q>=K]6=/2) M3U\&OFA]^BJ)]4;'I7^V;F1Z8_!:]WJ7<1(_Z?:9C[@0)]F7"%&Z?QWY=&DV MN]_^P;O?]DGCS!UO?3MXJXYWCC=( W\ZVMG\>KZSM\WVC]^S@[=;K'&\?][X MWD#[QY^^-C8;L+G7P/^09GO_>_>\^3W^N_>%-3:_7NY\WH8[GW>/XK4X?NY[ M\_,V.MC<^-[<_!@_)2\:K]6)/7G3V3G9/=[Y_/Y\_WC_^S[>(CM[[^G.YC9K M?O_4;FP>M/9Q\ZBYN0T/WNY?_D-VC_9/+MH[)V]:\7N^[Q]OLX.]HY.=O=V3 M>#V+UU_N[\7O.7;M?;Q[?+#W\>+JFOA=9P?X(]___'=\IF:K<=QN[[S=9\VW M!ZWF/'/WM:@\0&>'PK%A$.0 L2U M )1 #B0."%!I Q440T]H;5VP.J=1T;XM&>O#3)2J[*/*(:P 9YP1[K16UM74%ZU3)#/_/AO^*F>A+8-7L^OZ@U[(I")?LFGIA MAT;[@ZR*ISV;CY' !YAWB:']Z9K];?R^6;\$X1FH)P#JYNLQ/=U"KJSA D#G M Z!Q#8!14@$A(6*.<,E,*LZ YJ&D/VV/5!1@GJ&DS\/WEN%LP9IJAK/IP=F- MWNDYUH9B! @F E"G%)#$B*A\2H*P43!8%>$L52?+<%9!I7.U7>DWB7O/"0TM M51!RB;Z_6D84@=67YPUKRZ2WHN>M;WU+26C9?JJJ_?1HU]C5JNY>+^K;7K?? M'T6ULVXRB6[2&C.U*&36&BR QDP"BJ@'TDH.H++!$N2DX;BVCF@=$I;5DVQM M9?!;0%P@@]\TP6_,,/,J6(X(0$%!0+VT0$IN@2*66>&4\YC4UE4=IA.^&?M6 MRC1;!E6V;*@8Y6UDF]&_/-SDRKS?Z)N3EGKY;UQC^1H?P)4+XSG@/CA:+8 MN*C "BD 988#:60 4",>G/3:IP;)"-MM]D=^!]#X.2PX)Y@0*F%0*9C M.A@Y"Z'&R(<(^YC7*:V>[^)1FZS2<)9]NR\8+.>@*6>P?#Y8WNC(3&B/)58 MAOB#!J*!HEP#*@WR,%AJ!(Q@">M(5N\@^XJ!9?8"/U^!_OG/?WR__ZK0[7;W M/!4FS1[CITSZ;PLX#[EQM61ONKV2 #8Z[I]N?)0;(LCNDB<<:M_;2#0PU)TW M#KTRFB!H "8, 6H9!4;+ QQ)&@&H^8L:NN$WB&"W[.?)#N(7S+.3>N@9,:Y MV>'!QL 8"PI6)2B_E0"KC 8ZXQSV.:\=XQKDJJK.K?8!R4G7V?F]Q MO>CXF17ZF)*!MFQ<4"U_\=4IC@<8HND'F22>0A);X\HPL<9YGUA!60JBD$%@ M@J/ &XJTU,%#'X9N9#2/,QW3WGB5AL#L0WZIZ#G',W 9/:>.GC24JPQJZT3 MD/]71L/ 7IZEW:K_L0M,='/G>5;7F2J7_KBYLS\%C.UKK MK>%2;W3<3EKG81^Y[&UX"M W;NFMU'LFK03>89_:L7A@!!/ PP"=4RZP8"+0 MUQ&9!]2O^FGE%^N075T(G(/;-4/@#"#P1M?U4$)F"0>0A&BZ'@@;/)T$-\JO4"H8;!#P MCA) <4# FR7N7\7U;J!]Z.3( #\1P.]?J[H[>PW8>'^80GL> M4P^X, '0P#G0PCE %$=80"9$"N]%D(?S"._-+)EM(9LI>WJSOOM8??>AGCP9 M F< @5W+3=\$N@&<]?THQ:$ Q(P,"]]$!PBE.['@24X090[R*'6:N]YA'] M2%V2ZI4O7S[TR_[P+7E@&H6$T! I95%\-L1@9QU/!:*VF4D0A8]_TL&_L M !F7. A+0>"I1WKJA::=,2!JL10C+Y"5.&$?EAG[JJG0KK3/]6VWZ\Y;[79V MJ5;5I?IH!+]:RHS6$Z'UUUMGOZQ15@D("#,$4.@"4.E/#364"#D28.I35L8($':$.DIXUR5 MM=*53G$<300P)"P@!KL M@7%: 00--0PQ'2B,>*UR$=KL/\VX-K.0?\:UJ>#:F!Y*J1>""VXAN4J54IGD$^U<=UZKE&UV>RK+WJYYSF[4':[C!^XHD5FK^_E7! MRG?CL[;TO#:W8KN9XR;BN%OM?GV03""* 4(6 ,!)!>2$TIU<&G>F(4 MU86<1[_?F6VDRN%/-5W.F3DR96@S@SQZ3,<6,=88-H8-:!=+ #4!0- M(\F@ G&%I+)*$Q=2:1ZJZE!DYEA"\VEAN=)B#G/X3TN;5KLLQ5:F2W\8=.W7 MHVX["D7_OT?EVF;O>!N30A*ET'7/3-L_S(*/<\LMVBU8O=FIEG-A"4)*D\Q9VZUFXIFBR)46Z E8H"J8($,W@#)#1-*2D0) M3HT$>2X_LAIA[ SX&?"7R%^5 7\J@#]6<(I;C8V7@%(< .7! ..A )IH@H-A M&FM; C[.>4O5=% ]P[A:#H.E=Y;:8W5/4NMHG00O'X1:>LU]Z^2TW;WT?M>W M]<"[,3]DQO2G8/JM[E@B<$J=M B$I5X20G0Z804QMS+=!9905E;IW4EYE%! M==5/#BS:"98!A"DQX#&M0+:V0"L\8IPCS!#+@O""Q"$=/)$,>X!5-0!RI0%1AL+>, &:BU9 M0"B5ZE'T+K-G_]4J!"PR)2Z=K9.1<&I(.'8LCT'BF5*I3",%U#,&-#.J#-?Z M5'7309B0D-%YU!A?=>#+CONG)L^==GLE!'7#L#U$T37QN4H__GW]T;)O?^DM MH-O-@:Y0_S)C_E,P_U97"4BPM32D0D \ *H%!LI*!2 ,%@:%D2>I-UJ=SJ50 MY:K[M;)C?^70;^ZMT3+Z/1?];C1>JTD(.J (=R1Y]84!$HNH\1H:/(%$2)<. MZ=81G$=NXJJC7\7.4JV.QGN[65KV^"^#OOM0X_?Q_D(9ZI\%];>Z40B%"162 M VIL_"$Y X9*#7!D;V@Q(BKP>39[7W7W1O;KKASPS:*%6H:XYT+<6.)UT%XH MD@H'8!QM>0N!%$H ;"SAR$GIM:ZM\^R\K:8JN]K.VTT??-SAKNCY;[YS=N>8 M:/9+5%%+_:E?XG7\OC22SZW!T>NS?IQ/W\MX_BP\O]66@CA&I? "."-5.DVC M@:2I.V9P7!"&N72=4SCG,OMF,@;-36#/0S0+HQA(/'-.4*0P@Y:GBE0A M$2L!\5IXS16+ZFMMG64?;#45UZ?[8)>G'+"]6[BG&G[6R@6+&BAB_6 M-_M"P7(..0H9+)\/EF,E8'%40AFW !/G %6$ P.A D0PR(@*R&H9P9+5B:Q> MCXP5 \N*N7JKKS#_Z.FM%QT_2*D+]G8V0_8 +[V*_%/'2.Z5]$0JN-5'0GB/ MO8P$$) .@,J@@?%4 XJP(=!80VW9LQ/1G*";G< 9!A>A_&88G!$,WFC$3DBC M)(* :96JB&(,=%Q%H(706$-JF(=E+$QF+W$U==Z5;EW\3S=-A^^=+/1$6DY4 M6_2)M SV3P3[[7&=5W&?4ME,5'=]!/M $#"8.F"08Y:*5(J)U]8QJ7/.*N?^ MJ#A297?P2T# Q9U*RPCX= 0<[P$F9."2 ,\U M3" *2F @@+J8>1R8P6$0%I M7;%<1'GF^JYK]4_;^C)-LO]%IYHY?C0[IB=<^&&-O/:-JC[[7([LA)F?1IY6 M=RP,F8GHB41TJWL+1%8$;3D(CJ0<9$4B$3$/'/),&\,I)B3Y73#EV>^2W<\9 M^1:AB6?DFQKRW:C@E O+B0H .6L!C?HO4*GD/0V"("RB.(10(A^9QX&Z54>^ M:GFK.?YA:+D?!.1,TI.BI(WVB]T"AJ$$1 P8B/U" '- MN0"<"1&PPP1;$U&2U!F;A^'_HE'R%[KQT7!PJ0;$HONT3V\HSP'(>8ZS0D.9 MUI15RQ1;@KC"Z^[)26MPXCN#?J$[KDCI@'&XOF,C"16_-;L#7R#T>U4TG]D8 M-1?]UJM.J_T_M4'OS-]-D+R>H8V.NS4_F9H?0+_O[9J*E9[F"("26,"UP^*/T6QT/1BHW@J4GY5WOZKQB/XE\O?C7SYCBG>]] M.-(]/Q7W[W;SS8^,<3V:D0CKQ4\^+\C:$\^=?1G=;9SW#C?/_D(#TX^7NX?-_#!YOO+@^-V'.O'R_B] MY\V3+;BSUR!QC)?_]WW[XA!AKC6R!CB.RT;8D82X)T C1CC$6*!48_,)$O0T MUUB6H*63H!!T7%]G .8D *J, 5H&"+B0G'@4-1P::NL1 B&\F]IYYX7B5/>* M;VEEBU/?*_II;?\L'I2_\OW^],#KT6[9VU)9BF!_XVQPU.U%J';94[L0:7R/ M#E$((D"D@<:I-CK' 4@NXF\4)JC#2%/^$SR[5YZ> 659GI9;?G M^K[S&%G<[O?/QN0PL^P\Y7"?'%(C+.0" \PT!-1I#13$'BA&H2=!4,K@8G#M M"<*T:5 MX6GIA$DR2X2$$E"OHQG)+09&& R4B\!%J+?"LJ41I@Q/%9 HI[G$R9A4AD6S MT@H)##46("*Q5D9YKTAM/1T@^[7>]0C-K%4"2!GN[-XL_[5_N'3ZY<.]5T=7CJ-LCDUZ:Z^B=8&BY"$P0.I H[[4ONX+Z$"DBBFO=/(>97[CN64 MTHQW,\X:S7@W0[P;2QP5S$+I%-#.NM3+(>*=\!IH;CD.WCN,3<:[:A^Z[]?]^WZ*'B@7.++("&4$"=5-%FQQIX(ATT5&AO M?^97G$/\-XM/A<4G6(J(B.*#/8SL*#$&DB$'M'5.X;CHAO'Y!G_G$:P;$\D< MJ:N$*+Z_/+1.6029&&JH#!YH13V MA@(;+$G) U&.*$( .N)D7$@CB:NM1UWKJ8'?"&NW?(M5UR='FOH<=L^$E:I_ MV#P_!(+RQIGGQMG'AXQ29Z%+J80D*@106B"#B-8SE%Y[2#5V$^??+$*.[HL! M96&:LS!%)9)"+#S@Q-M4-U<"93@'@FGEC85><%9;9ZJ.\-VZN0^#<,?-1:?, M0+:TLO?E_%!!955WWS[!1B! MSR<=UE$$M+44$(\5U=I@0G0$/BKJ"L^C;OVJ ]^2I%]69PXWK#T[.6NGG+0( M&Z%E6X/F_CT%5*OAK'VAS4?FX,D=+YJ[5:YXQOB),+XQKNS&!8)8B "" MI"PJNX$#:;@#R'/%D15(0UM;5[0N9.Y!4A%M>.4NX3O-3,O\V\>H MT'.;TI^*Z.C-T;>1^+[KGIFV?Y@I*C7]_UJ"U3;UI)%!86$ L4TH1S9#'D7TIBK8*J5P"X33W8.6PK9JN M_4Q;F;96@+;FV] WT]94:.O&:&2<2"2@35T$&: P*""-=( ;(N-:"F0Q3[2E MZE!DVEHT;956Y1\#'9]BK S&U7#')LWZN$5[5\^S_F_3^V/]3OF,AZ\[T;TO MK4XYK^3NM%2FT 8N<[_>%OI:B4*4BAU=$=VRKC-?&%LE7C@U-UVNV7^8JO>KZMT_'//\];;G T MK/DQ&A86UP7O[ERF3?SBLX'_?_7"EU3 \GH<4#Y_IM/_#?/EZ!ZN^3D\H(^62% M$.RAQ]SN%'M'W;-X$Q>%?NO"^JA$O/.]HBP446R%U MI1YP/7E#;2=.3EN?]OVKJU_^=*W^:5M?OFIURD42[CGK1:FG$;SGJ%UM1 MC7!E!9J"P/HC_)17D)YZN?RB&?4$'UV ;&<9>DY_]M;%PB0H(^E\(A+SWP7/ MR7:JW!9)$=.GQ'V>(XM3F, L$+,3"*3F+1!YS1>]YDL) O=/X+W>UYF' ZLT MEJN5S-PY9ZAUYW90=$;JBT+.V?Q^)33A4S3 G-. M'Y\UNIA].,EI!V6YS:W#T^JP?Y]3WMBYL^RQ-ZT:_[^/_W)Z^J$Y*Z>552FF#-H\; MEP=O&]_WCX]:S2.FF\#JE-'UW&M_;@^/X M'5\;WW=/]D]V6P722:L.T%,]R/", D#5FYE*C>5^A3+39Z;/J=$G M9(@%#Z%FJ>&7AMH98Z'C@4K/E12)/I$:T6?\)=-GI>GS^S5](F.,4L$"APF/ M],DIT"Q0H*@2C$D9EUG7UGD=T[LUK3)]SI$^E^\<8.:%%\ +RL @(SEHB"FU M5 HH/*;0*V]XT&%D5J%L5BT%+Z 1+UPTOV_@0RJEXXI10 E2Z8@Y!H9I"Q#D MUEJ*J-6FMJ[J/)M62\X-%9J82HTE6U:906?,H)11@8*$/,(K13S(X)B#DF!- MA62:CBPKE"VKI6!0>&@Z84ZE;,=- !PYP+ M8XD61J7ZF'7*YU'I9&9]D:H"_D]/HLFAJ07E.F4.F0Z'$ N95)HAS@FED!K% M'7&$(*X<1-SD\,Q2< ;+$!SV!)A@!*"*,6"<4 !KSP5C4%I"4W@&BJ5N MK;?\%++D->=7&!N]HTII[)P/CEH.)160>(.4\)YCP7*(8JFP\7:(@CM-E0D4 M&*DPH%@1H"D24<>VA 3J')8J'2VJ0Y)U[.4&R I-3*7&DE7LN= ((PI%ZYT( MQ15E6!E/J;*86,VUL(%D/_U2TN/$ MA@Y[S3P$"#L!*%<02!%A-4!&M"0V0JZ+L(KK!%7OD$&&U0RK2PVKRD+&#;;< M.>A1SG,M.-,Z:,P(A0+*"$:!$ Y= MQ"O)>':>+Q4'D1\XR# ,K:,$:!4B!WDL@:2( 2:UB304?]4A=KNN;*;N>]]:UO<_ M=-LN6]V36-WC-2^Q5!@3(H%U*C515P(8BA%@+DBBM-">I#R%.E?5BZ=5'9-R MR.Q%0. \DPTR!$X+ F]R"D)POCSX@7QR.09L@?(4 VFX0U @PVUR.=:%P!D" M,P1F"%QL8D"&P&E!X/CY-WK(K>#8:AYQS]I4_5P#)24$$G)A.>7&!Y2JGV,Z MC_/!&09?Q%F$2HVE2N']%2:+>4;P,UE,BRS(+;* A A(J0<,X0"H5P%(*1#@ MW$55P ;#C*^MBSJ:2SVBE2>+B@7BE\$A_% QNGRZ>84\PE>+'+%]\V:)MX8) M%QGA)T#XG?%R<\YB*Z$7$=VY3^CN@!&: >V-AMYIS[ MR\U)EDMAS-$6R+6" ME@<&YWL$+)3::"OG',Z$,47"N.T?%IARS'V*'GH,J* AJ)5_Q:+W?#E<[8O[&K;7.L/\$V!^O>"8AI0&2 &RD9T"1(\ 0Y@#T1'!M MM>)0)6\)PSF-;KGS1S(7 ,,^ YU)# MC"%EW*0,":ERN[X,AQD.%^P\SG X"SB\[466FH=@+0:2:)W2"A#0##'@& N" M4\>#2RU,19VAK"(N%!/S:>_E="-GZEB &SE3QRRHX[8_&7-A'*8I]IA*4_(@ M@"$V $((Y%108I$H_ZFH.>_:%ADUGX.:E]>HZ10WEC@-H# PZLM. :D?A:LFHF5'S!:'FO,MA9-1\!FI>MVT[MB3IF\PJ["4%A" / M*'862&X#P"2"IHA[&Z4VT)34V5S* 67DS/5*JS66*B5"OU2"F7<)C4PPSR&8 MRQN":6X<[FXG]Y">_C3_-E_7=C_.8_QM EK8N8IO;'=L]\0GL+3YEIG*N MF@R>\_)P9_!<"'C>>+N)=YI#0P%5P4:56B)@$$> 64(D94AKC1-X&3R?JGD^W]&=P7,1X'GM]-[;0O'_#PWUCG$&@74" RII (H@ 9RGS#!) MO7=1_42D'MDQ0V@5(30[O)?3X9V99EX>[\PT"V&:RW&F:1QJ%O4!%"3PAG- MM:1 $XH A\S'1;8F.!.9!M7E/:6C,]-4VO.]VAG>VQ&.>KX_*%HE&E0C KIL MF#]?M_9M.-_N?(O+EVH\#?'\:D$SID^$Z=OC?FM(C*=&*6"1T(!:SU(C &8 M-X1Y@;PGM+;.[CJM%QW)K#K:Y#S"%P%R4W _9Y";#YAE('Q("QW@ * MN0-2*PZ8QHX9IHUCJK:.<^W3C'(9Y6;D)\XH-Q.4NW$$VXMT;H2[H#A7P$"/ M ,6> TDE 4)0)Y-]+GU*3KLGCI:1;IF0KD(34ZFQ5"FY>87Y8 K>W,P'L^&# MRUM\$!SQP;N4C,:C>:^1 T8% [PWE'/G4312:NN49#KOE DI/@?+&K>QBY*QQ2 $. MK0,T2 ^4YQ90:!EC"ADFRO2.7#HI9\&]&*A;5)9P!KU9@MZ-UQ8)3J+X1MV5 M6PXHPBR"'M0@8EW\AR E.:VM2UFE+(.,=QGOJH!WTTSLS7@W0[S[P7_+&<'< M,P:,] Q0)E+='X$!"=@XXI2):UA;OZ=R1<:\)<&\"DU,I<92I2S=56:&:2;B M9F:8)3/<]N1"YZQU'@*BO0*4B@ TDAYPHRR3C"C-7:JC>;=\_[*E3O0%[E>\J)-@$54E;@Y:/&FUSUY'17RV^BXVW?9^L]9?+OA!T===Q,GS"+"@OI%I%!N4* M@_*-O]L([(CF'(34'H5*RH"$"@+(D&8R\K8**($R53/6\3,H9U!^2:"\D"H8 M&92K"\JWJVO80X<9PMQ[ "F%"9DIT#"=F?.&!(HP)L&6U36XO%OR,T-S!: Y M5]=83K]]9K#J5M?(#%9A!KM5M>/K(6&:!NP\$%RCR&". D,CC3&L*9+:!ZQX M6;6#X\Q@2Q9=6.T@];M>]UNKG_ O8LE; &/$1.,8L)_^8X/K7S( M9S)T_SCNR4=Q19RQ'@0I*: 6(Z"QL@!!Q4PPU!.!:NODGJK3.35\F=*&,L@M M3P&/#')3 ;FQ^M <,B2" L)@!BBF"$CH.4#2<\0L]\$F[95GC,L8ES%N+N4[ M,L9- ^-N97]_.72$6ZOB*CCD4Q5GH8!A 8+@.:\C\H*/X&E0$AD-=7E<@+HTLY/A&II>XB]?<#B>.M08.2E MCPL4K"8@6I6I;+V3@#*"L->:ZZOVI>IND#^3R:+)))^NF&]$+'-NYMP7>. D M<^ZS./?R-N<:Q+DUS ""* +44PN40P1$!2KJ4LKC:,,-CX30&3=R?<&<^XNH MV-%P<#P.=C$9>+,8RM@"DKB KGMFVOZQQ_3F.=!Y#^614O_D2:O05JC46'Z1 M=I1%*XM6U40K6URKM&)Y!\YU/7,JTE-3D8I3WROZ1[KGZX71_98M=,<5KM4^ M&WBW,"]%]D4\+A%SN3P.[WSO0Y*TZ>8>X0?+5V_I7B?.5?_J>_]*\KW1<9M# MZ;[V-\#L;WB$O^'+>,8115X)!RV0.C! 0_(R*,< HDPRCG @6M76X=JLBU>O M? ?"EQ0/SJC_@E#_F:E"&?7GAOHW"4*21(RG00'&I 74(@R4=1981! ,\4]- M:8GZ,^YFDU$_HWY&_47/S)-T_>=E]F34GQ?JCYUCOXS(KQ5& DL(,+$84&05 M4#0EB0HO2%Q/PIE+R%^M6G,O"OFS WE%4W8R0;X@@GQF&DXFR+D1Y-C)_N9Y M)$C(L( ,.,LB05*/@8:& 4:]A])[*P,O"3([Q.:17X-8=2+Z>2S/'$O6;*H2 M&L_BL_ EJ])89B8^>5?H^$#ZBX_3=G+23:/KVJ_# M!)A^<=:/'VAUTGNG9ZG?==%Y2IK,]8K,M57*+Y:DF#Y!3*KV20K!A( MCI5G$2HPXQ%P3$! K=1 6X4 84HA9K@77D:0I'7%[D;A,DAFD,P@.:7B(ADD MJP62MY(5S@^-Y4@)IH""R*2B^P285( $*H*:-HZ7B MS7CFDVF%^/\8:-/V\5_7^K;^[_CC:KQCSVU]ZCI\]4#K_S:]/VX@K[+7/4B0 M]T_1[7E]]'+\8EG;K8X'5S$>7$+P!^\+;9/O6W$MS]'FP6.WZ+VBZ4XT;TOK4ZY M[]3=+5&UE:&WYW'\9WK*$M.A(%Y+!156ABJG%>:0$&:8@X0RP@\1KUU==-2[ M : O'IB>UU^!#G%B7NGVN;[LU_ZX-7\G<:I^6)0)YGH&VVR)-INX?TE?=YV_ M:/7KQ7;'KKT@['EP.JXPY?4XIGRX1I*B&^)?7?OUJ-MVOM?_[V+86'YUIN"W MCU<(^_L$#S4"LA$&R@IAV4./N=TI]HZZ9_$FKC^5)YUX+]R^$Q_>J50WKB=M M6+XC3DI;G_;]JZM?_KQJA-/JE(]67O2CXA5)902/2JY!I4J$' 7K1_?: M$#U_4 J';Q*^)JA\^/V?7@S7T,_>)(H_\=J??JM@?P52KRX M!MMSF=BCGO=%9.7!4;_P'1>WU-]G'5\06"]2QL#R;*R%;:8)NA!471K*V-N= MCJZS7O/G3F"6AAGQ[$G\T!)1Z]+: BLY\.><;:XHFLQLS-4=V8.SF2L+78;<-TY[K7:!GF[8YM,1BU[0"4]'4 YA M((('ZZCB5CDK+6)4!VT(\_9PNSP400AZ2U>M3'YJLW6=GTH:W[NFB<;)U?YZ>>O(GCVKYH'KNC MYMN/YXWC]Q?[Q\U6\_B@O7_\UU$5/>FP.(*OUO3DZHP3\^(]_H8-I(BZXUBW 09L)N&*9@)\9F$B*\) M42%,I4 0*.X1H"':@E):#8Q3Q C#D(:1$"E5=71/$>),BYD6,RUF6GRAM/C3 M4OT_\"*&G$F!'7,84RZ\DM8J))610D:>0P_SXG5I_DR0DV0#!F(F8JB M@!P'U%L5+49)@7#>,4FPL3+4U@F#=4SBUH7OV5;?IS2+817R[FF2OB?EDL^E!<U=3R/C(NG[:FJ0N(S#(GB:@Y1FT1,6K0M+3%3[I]YK.R. 5E\28LRZV27BL( M*/844$H\T)@%8 23EDBH%):U=<1DUA8S1V2.R!R1M<7%(D'VFU55#9I"#\"L M!LU5#1J/R'CL#0T. A*P!90$ J3#"E#CO4+*>ZQ<5H0J'(Y9[7.ON[[M]7@T M1I_KGGM:,":?>:TJJ50@&+,S./*]3"23$,F'L>"+I Y:H060V"% )9:11K0& MU"&F&(*"V5!;ESG#.6H-=WS6'Y1-H_>Z&^ZJ^=T[W7+;G5&_NS(2 M6^JFK\=4TUW_G[-6OS7P'WSO6\OZ8=1VU]ONETYYES(Q*(=N)PG=ML92H:$7 M408L EQ9#2AU%$C!/'!,,H^#)8KSVCJJ*\)R#E#FF\PWF6^RYIF3H5^0B,\W M&3JK5$NJ4MU*JX8,1_V) &V, E0;"(S1 N@H!B1@@Y7$6:FJ=$3@<0&RDY9S M;;]\^E>SVP%^)E&!'%A<^/[(@<4<.\\BGD4\B_CRBO@B"E%8=]%_E%D1M8>K ME(+2POCK1PLCVPZ3V XW#0,NFM_?DYV-0Z:0)2H$P!&%@$("@8ROQ=^H5@%2 M!"FMK=-\G"8CXHM!Q$SZ6<177,07478AD_ZB2/_&8;AG:7/O_2&-*X6Y,,!8 MPP#U1@*9:F33P%A0!DI&>&;]RGH,'Q>H65:/X9Z^B+<\C8A0]'Q;#[PK!MVB MXP=%>7R_Z/O!H.T3A*1J#;ZLE?^<<@TY[%55,II5N8;QR-=WW^LZW3^ZOTUY MXJ4WW5X4R<^MP5%JSQ#G,;Z0>6D:O#164]L3+CR" #(:"8EQ Z+Y28 +005I M.#.!7"OF.9"5LX-R=E#FD)P=E)$@(T%&@MN3-TDOQZE7UAYS;^P.;9>];E8> M9QK).#]$@D"=:H(1) F@%$.@0BHMB:4-A!B+C*^M$S+;IHZ9*#)19*)8(J+( M*F-.*%]Q$9]$%YIZ>>VL"RT@P+-QJ)4/@FL.A'<24$(M, 02H*@(AANGN.19 M&ZID7&>U2VPW_:!H=_NYIO924DE.BLDE$[/=E)$@(T%&@HP$&0DR$F0DR$B0 MD6!R1Q,6!''& K3:TD"8859RHIETC$.B\",<3?TX5?&W"6H81.-SNV.[)_Z? M:(%F]]($[J6=UY!>A]JH(8%!C ")RP>HH@8H:0P(01%C)";"A]HZKQ-Z-WEX MJOZES!#9,5*-M9NSCSU#WURA;]RS;KUTB'$-K$S9!1'K@*:8 RPD0T$JPZ7/ MX%=5Y_IJ%U[_2[=UQ_I"]].AB+_/.KX@L%XD%,FAVS1&T^TYWRN_(8ZGZ'?; M+5?\5SG'PW=&WT7BFZY[9MJ^N%J$96.DR(K]K63Z= MQ>_I79W2LWROOU4>K,URF\R^@+/"*5R7S.8811$"%8&!C 7*E4RL4 ) M9H#A6D)L,$(FVIN*UH7,;N,*I"C],=#Q,>*_KO5M_=_QQ]5X3W3O2ZLSG L< M!SSZ>S0#\N8!U_]M>G_<6$BSNL_8$EH?$:+WPYWX\$[EXURS[7#5XLRT]6G? MO[KZY4_7ZI^V]>6K5J?=ZGA07O2C3,01_WG>Y,H_L1K?_JMSZ-[-D7)D$;[JK31%$J M2JFZ/&AUAG^,VDX43_% 9"%8(B&P]NSD;-A18-.'EFT-\I*O]I+__^Q]:7,; MM[;M7V'IWGKWG"K"P=@ DENJ4BPGQWE'DF/+R;._N#!*;7,Z;-*V_.L?@&Y. M&FQ1EJ@FC51%ECATHSSPV/>WW(,.L$P]'N/WPH2WB MV*UU"G9RX-\@Y?-:CQ$+5]\,IGS_O.]] M.#[M]=\>OOERN7[F^/ -.X[U,X>_?7CSY35*__[][/,Q_A.^/;7ER=]_HI._ MWWXX?G_LCY8/D22$8$2D!#JVYJ',*Z!PX0 3Q&-8%%)CN;?/:)=1E(\VWER1 MY@."WN,Q5[MFYUXK+;]'<;<'\*^62]X=[7^,FLC-8?IB#[WW5'!#">#"24"U M=$!2*P%S!#NFM1>QY]HF]MYE.,]PGN'\L26S3I]ABRF*/5$\1M0Y*IUD FM& M&2LH@N8^C/>,]-^)](N]UEY9@2TG@!10 HQ!U(1#C"QKO"*.BG1WCX115>@ MC/<9[S/>_PAXO\Z>7(&<,8IX4A KBT6V"@%C2MP-O); /7+6URE(=0XCX+^" RH) CH CN@F"V4 M$0829_;V&>KB:[ ^6_EK _YNE39O0HC//KNQ*2L7,[Y57/N=X2AJW]T.KMVY M1OJ[G?'%G%&DK:.,2%I0KAS&"BO%N TD8U$\H27P27U"2_CE=@UUGU?5U-G# MZ3C(Z45XF*&MT[[IS9-:NV9J9S.[K,$NQT^7F^-+Q0D6!#A.'*#!)@"!4" 0 M' I6.$D-=\&1V BQ[/P!Z!D MP0 '^R4SJSB6<7;,7?K9(6TLYQZ28E!U$"N MH!5(:02-X)(+<@N"7\]SO,K]?ZG>U&7JOP?J7V2/"JNH#PL82&D$"//K@1!* M :$QDV\==6/!,_AD9?QADS.2?57S'57R=]ON$$L6]%I8:J@JD)6$& M<\6%PIQ G9&\@**V*@_TW^+@\J[ MO9'HI>LYM1Q35I_4V-XMI)PW$;65<5H04CZ9G+MQII)UJ&3Y?%4=_$C&. 36 M4P\H+@J@D=3AA[500\>U8G,*IY5O"USEU4\JWA6\:SB M6<6SBO]X*I[+!-L,+Y^IX#M"JJM,\'S3$4*8R?K(FG2\;$ M2_>?:5F5$_?*C3^6QM4A_Y?.#,\&Z2HIKYSC_NO$__NH*X7(">0,I#\,D&9;(:OXCJMX2^O'LJW0+EMAN=R, M4LVAYP6@5!H0E!2!8!A 0*QDG%%+G2396MA4DH# =J[R\ M5FZIU:M+X=8KZ!LK,9V^/&LZ#Q.OQJJPU+!\Z&,L.IZ:F<+3W<[ 3>*+Y>P# M9EA-4E/S_]XL_ZV2W MUD1CNQ,^+VN+HGL;!98):@Z!.GL)/C3/[)8PG/.?+ MGOO7RXNW?]N1QK0X^F+"&-_0X].7[X-LZ/'A>2^.\^3T#!T=]GIOWS]#Q_T_ MSL/K_NB]@2>'AIR<'H2QO_YT=/9.4EPH*33@@F% &2V \H0#*ISG G+/$-S; MY_0*VZV>2)ZSJ3MA&#]4F>OW[JVH*V"##-);&4#6!)!9%>SGXR]'^%T1.RFP M @+OB094AGD34#A0:*,X%E Y7NSMDRZD,A?#;G6-28L$TZJQS*;GAEG*W'%/ M"9@-[8](48],#G3,[NWG4U8R M,61BR,2P!9GYS!D/P!EXA3.PET0@P8'2A@2'PD.@/"Z )9Y@9"@+C+*W3V57 MXMS??[N)(T-B*W+L6<6SBK=C[EJ:8\^L_P"LOTB4GSY#1^_/WCDAB'/: !Z[ M?5-D&5 &,^ X)U83PX07#?$7F?CS7I[-"_'833J]894[?&\EN>0:Q5RCF%4\ MJWA6\:SB6<6SBK=6Q=-82J<5XEQJBS35ZA9N\/JG&@8[ M^/G #/ONW\$8SG[O>G[OXD!#0;!F&"F@A'*Q/%P#:34$A8-(R$)*K=7>?M%E M\&HWTGL]SC!#7X:^=LS=.M!W#Q' #'V/%/([>(=HAV/KQND. M83R=:M@K;>>_DHSK=YI[D?"F'4YUSW5FD[!MC+1>=;N1EB,+F?/$TH($HYP% M@J(2$4(1]ZHY9_:[DE%U_^;II)JH091<9J%U6&BYB[-"PCMH"X!X;.E0!-M; M-IZXZ3GH;C5EQ9" $KCH3<4D4!9TB%)C3<:[NU3"KM04HUPAHS#P0& ;OJM#8:[2W+T6W M$%>;IV7/ZC$J*GZ:J/ 8LY9UX<=LO'TU/BL'M3AP&'#S=R,!L7C _?_5XY\N MM;Y[@.LLS:)Q 23&EP7KSE 9)ZU1\V9<#-3"EZH7G"R^DQI$W"F5;RH=[CV=N%^:F8'+E]C[QE0L3;*\JOIM MFQEVJ4_CTL_S\0)QSAS08Z<^ .7#,_ZL>I_41;7WTZIVAZ>^)-\UQ/:=FG_= M][[OV[>9Y*LK]]'GF5\_ST^'UGTNJV[G^< \V4)@N?&Q9H#Q=!DP7LUA(I9[ M+1LV_].I39O=$<$_7L_@\Y^[K,#_>#[HG)X/I^$BMKJ7)[V?19]LAKG0:M,H M"*6G1I7[>?;++[/>U^4@/5KZTF7;*S!& YA2/(%2)LQLJCR;ZS=X^J3&TTMV M8?TF*9YP*FY^_ZM?AD_0U]X,=NL=O_O5NXHG@LLM&S$3=_WN8XV8DZ^\W<(1 MHW#E8KO4 J$G')%;?OD;1=RWQ-\'K4!NUVCD=]5#?W/ #9 MWZ*9-V;:G_:2)W7H?&G*29[RW9[RTV%8UU]WE'>OP=0F!/NJ_-P)1#PYKSIN M8,."6MI[AN'V+*M'6TI?345LGSJDK5Z;GO9[D&'6B8>CVW[XT!8Q[-;Z 3LY M\&]0\BR(&K,QF\&4[W_.!QMS>T?VL B=!9H%F@7:LI%E@;94H+F[RKH6[*7N M*FHP5>.+#KJ[C[M[_55VNTF*@(IKI0J&K:*>>VF),(Y;R3QB6#9[*1 F*#=) M62U.#=]YV__CP]'IR][Q[W]>G!S&8M7S\Z/^<>^X__KB[?M>&,_/[LX@U^C=^>_M$_^?NO<)WG\!B_]$<7 MRX=\?OCR3B(D-.<.A+F2@"H%@6:" &F(=M1@*97>VV>B*_C5312/79[:=CQL MUUZ(%@FF56.Y_C"WQV/Y=HGG$?=\;"LU7MVU<7=>_#&V9FR._> *^Q6VT!8C M";#$#%"C#1",(D Q5L0([(VV;>S-TG9\S\27B2\37R:^TA2&(B>(U3"V:V92 M*.6@8\'14-!S=Q\.8>;$[^1$O,*)(DR7MY0"!6'P")&20" * 2^I M%PSO2MR^WIEM)X![9<;O"#2U3S*M&DNFQDR-#]UXAA.',&)&6:VHHE1RRY2! MC%HG.#;\9F[,C6T-NKOUA:# M30CQV6F88A1.G(M/#+[8X >%Y54V0,&T%@A1[%WP*/ &N&7GSTV[.P;FB-MF M(VZ9*FZGXOGD[(P$&0DR$JP1AF HYO((45P*:KA0GBCHA:8:2ZJUN2^+\2_5 MF[IL,-Z#P;B:I^6*04:< A*KV%A6"242S*=0Z4V@U/?/I M79@Z:Q#&@"!; H]!TIS!S@J!.&L4,;"; RU.#6SVV7?+UW/J>7,C/JDQO9N MB9F\);:MQ-*"Q,S)Y-R-,YFL0R:O+B5BE-.:4XB!\2+ZU<0!)1T!GC+(*>%. MQO.:"^]?;J _M^6DW2N=*GPP,[.Q_OA2KM\T%S.%[*QR;C M].F2;?K2_6=:5N7$O7+CCZ5Q=>[VI3/#LT&Z2BH1R@G<=1*XY:7":%E0KQ6C M E>Q);&"@B%,+".DP(7%%&F]_9I%T%Z)86;X72[X30;5MFP:I5AE:,(;348 M[J'H-QL,6VHP+)4//T-'7]Z\*S0I-/,2<$-(L!D@!\HH";"ST!.!*;/T)ILA MXVDKHMZW2P+U2VM[;ON,L./A +@'B7SGY-FCKX^WTX;-G[Q3!HF %!$1P#J@E"DC)+("84F0MEU:[Z_@L0V(K8F&WRT-L:RSL M5'T.EQP%1.B,74]-G.U,AIV!FW32#NQ.Y2:3GHL0$C?LSB-/ M^,VGJFQHRWVZ2Z2@WX;CH'U_EY/SV%T_B"R\D"GH/BAH=1.^B$>E:@&!#4P# MJ"@LD$8Y +UT0CE-B*=[^^(J =WKT2H[GX?)%2ZYPF67B")7N&0DR$B0D6"] M@_@>J73X9>V[G ZS1?G0,?I@47H+.93< *PD!91B#A1F!A K!,*"<$CUWC[J M0GJUL5,V*C.59"KY4:DD&Y6Y;'K'57P=:^F1ZJ:SM;2Q%%!=$LV](!8&,XG# MH@"4:0@4*Q3 Q&*,H!)*%-E@:FL&:+?[*1^[2:2-,.I[KGZG>WC936VX!!H'6( M(LDH0S38<$)1APU3V A5:%Z\>_[=F>'FN,/II)JH091<)J(UB.CH]&!R5*X2 M$7;>2D@I0(Q10(VF\0A= HCFKH",.DGDWCZ37819ZWI@?>\Z;"L Y_*Z+8[W M;,RNN%'[O[D KN6B=@GWOUN(*FO)==LH_9HPVYWY_)JCBV/AEAM7S]*VW,S: M:[+V\67WL5"$4N@!YB2XCPA9H)30(+"YH=0ZZF+CRJN>8VL)^PY+JWV8E6D[ MTW:F[5W EFVF;2J]D%9*J:6B!C+EN5-&2H.(*;"\%S<\,_IW,_HE/UQJ882A M!"#.#*"8,B#J5G("L\#V&I-X? 5#722VR!'/O)YY/?-ZYO668$OK>'V=M*_1 MAEEIL#/<4N.DQ$A83[0KK&=(P9N)??UL;V;X[V;XDTL^NR?*&",Y* 1V@#IH M@/)> 4TYP0Z%WVVQMT]8T:7P*L,_XMZJ3.Z;SVMFULJLU5[66H.T+!:.P:(H MM$<44B\1<\$OA3*\JGVALS?:!JY*_[]*?/4Y/NL[:I@0BG/@O"L E<:#:&X M[FEA*<&\*/#>OJ1=+G*4^=$)*Y4X_311X3'"O[;\N/^_X<=LO$M2,RXLS?$O M?34^*P3\9RF>0"D3I#958_(-4/#38;\?S-YD>-[" MJ+()P;XJ/W<" M$4_.JXX;V+"@EO:J(+D]R^K1EM)7(R7;IPYI=\BFI_T>9)AUXN'HMA\^M$4, MN[5^P$X._!N4?%[K,6+AZIO!E.]_S@<;A@$(S2CG#TE$'B8".>0C#7PH6 MB/%80H,$P@3EO@J7*FC>X*-PO7"O+\>_O_GR]O1/'?WTX_OO-Q>4*FK?OWWP.8P_/=03?OC_N'1\:%KX#CP_#.^__*-_&(Y/_ M_A.]??^'/UHYQ_)/_([# E*F)("%+P#UL "*% 8X@:0U"NO"DKU]1KNPV,1> MCIUO\?.(P-_&>/[)J]=XKG7PM3O6=[;0XU72TOOSHL_2/WHQM@/ MKK"?X0HY@RQP2CA B4% .2.!%THR+@@3R@?VR\27B2\37R:^3'SK$A\K,/;$ M.:Q-0:%$2G(5B! 63C%$A;P/AS!SXG=R(E[A1,>E%UX10)RUP2,T$&@)"? . M^8)ZJ8P6>_M$%%W.,S-F9LS,F)DQ,^/Z>^0+RZPMH%.:: HU$@(3@R%!TB F M.+Z9&O,>^ UHH"P)E.B P$]9(9(13@2,)[%).&)-QIQA"F"3-'L.+: %)?."C'P^.P= M8Y1KZS1@CK+@.I+@.@JI@-%<*QF=1USL[;.B&R8V>X[?3XT/4*'R\"5!+1+I ML\]N;,K*Q6J5*J)!9SB*NGBW8[MW[NR0W:Y5$01B1#D6@A84"R>(\Y1([J0U M5)DB'DV%9',T5?CE=LW#GU?5U-G#Z3C(Z45XF*&M"U;2FR>U=LW4SF:^68-O MCI]>*EU1$$-62 2,,PA08RD02DH@(-4^D(]#@@:VP;)U75_:CHNYB^@6NV&9 M*VZGX@]TG'-&@HP$&0FV" G6"$IPS PNC&!&4JJ%D,XK(Z#AQCJ(R6U,QO6B M$U>MR;]4;^JR,7D/QN1JUAL;#A66"D"F@S&IE0"RD!!()9"7$A'*V=X^[@I* MLCF922232":1;$YF),A(D)'@[L61BA=,*:\P(Q1R* K"/2$%M$)[P;(YN4WF MY.5<&(66%](1P" M *4* FTT#O8E(]PY[QQ%V:!L4\NY+_5) MC>W=4E]YFW9;6:<%J:^3R;D;9SI9ATY>74IU.6TAUQ0"YQ$-9&(%4"@PBI!$ M<2F-EL3N[5.*:&!XM-9"3(2)"1("-!1H*,!!D),A)D M),A(D)$@(\$/@@2[=0C&1O9;]$>]X85S=< 9:%6Y*+K^R TJ%<-5>=]%AI ? M*6OUB"K>(L&T:BRY]B$#00:"# 09"':OIO[ OI]6D[X;3*K3X8&=G6OY0I7V M^: YU#+EK)-E^G3),'WI_C,MJW+B7KGQQ]*X.K_]TIGAV2!=)152Y23W.DGN M\E()/A%:2.PMD-0S0#&W0+O8?Y,.9ER,N5L#^5D MVS,#00:"# 1M+<#/MF>[;,_+]?H68H4I+D AK 04:@^T5!(P2IG5U"A;V&Q] MMCIYY4;C+IN0@P ML:3?I89VN:9_BXGLYF;"&RKJ3W>)!/7;YJK, M0NNPT.7#V*R6A%B"@:)&@#!Y'@3:48 )I B!W@O"]O81S2V%;9.:CF]=T4V*]N:*'N 2@Y;?ER5Y"V?>550 MMY;O-^:I5PX<.*__1C !:NQ.I 8F];LRPWY_.*AW(753"BV\6,X^8(;5I(JO M_/=F<6\5W%ZHBX1L)W[>7"F.[FD<7$:O-=#KY"G\U+C$7XX.G\5K]=R_7EZ\ M_=N.-*;%VT/;"^/"QZ?'_>/?CS\<__Z,A#&AX_* %E[/B'A=,>663W M]J\Y!7*^RM/2>>Q*K%QCU.IV:]_;Y[/.Y089I+M3XUN]/;Z4[_H.1QU:K<5*/.5$&: MV>&.[ !7CZ5#!;72(2 -@H R88'D" -")"X\1EY:M;>?BT@S,V1FR,RP#=MF M,VD\ &FLINF18% JZ(#4B@;2T!((+3G@T'LI+5&,X;U]*KL2L\P$;KXD=)=6?ZO&DBM",Q!D(,A MD($@ \%6 4&..V4D:!\2K+-)Q"G/);5&<".HC $HX0MOD48,*D_H+0)/51!5 M^&V-"%1P/9\/S+#O_AW\SQQI6B?2] K2U0)(0K14" *.K %Q!H'$5@"MD>00 M4^@LV=M'J%M<<[AYWOZ1:2+31*:)C>0G,DULE"8N)R1@(:FQI@ $"@1H@0J@ M1?BAH- 4$2\%R5MO-?2<;U.\V]2'C3#J>ZY^IWMXV3UMO-9:0-9B]DSA-+ M"V*U9UX'-P810A'WZMWS[T^6I_N>3"?51 VBY#(/K<%#1Z<'DZ-RQD//T-&7 M#^\X+B!A3('@IL0M6]P!@82(#@QV G'()=K;9[PK*6Q=9OQ[UV%; ;A=9Q$\ MS+Q^95AWG-9K$;9=$_O?6[=6KBZ7[6&IJX[3W2GJFJ*MV$K%C:MGJ:%X)J(U MB>CXZ2H1"<*$,(4$DA804",A$-![H!G"C!>&8:;V]MM7G75OZZI]:)5I*--0 M:Y?+-M.0XD8R;+%"UE)>$(6XXD6!"D6*@G%T'YY29JCO9JA+KI+UP6:PU -# M% 94: ND( 6 'E&'(/J&XBQ!_V#13)JM,5IFLVKY<6D=6:W$5\H3%*!Y"5-)"6J2Y4-); M(0T5,#M5;:"H]/^K1%.?P[.R=X41P7."! C%%:",4B"@@ APKETA)+8,%F* M;B&NM@K-3M7&*RE^FJCP&+/NK.'';+Q+(C,NK,OQ+WTU/BL',QF(Q2/N_Z\> M_W2IS^N&KG1)R.UIQHP3]KYRKJ.,&?;#&"^">G0&PTFX_&38F9R[@'YJ:LMX MP&E /NL&5?U;4KMT[JDO!VI@2M4+SQ=>2'V2;Q3.:%BE4Y)_3J>FEA_=+Y]* M.SFO^T(WPZ+X"6?S1M97OJETN/=TXGYI9@8N7V+O=I,:%X^\JOYMFYGB4EOB MI9_Q*1/X0TZ<$A)*+#655LF87"=,,PL)9:1XA^3>[$OGXP5.G3F@QTY] ,H' MP?RL>I_41;7WTXK\^D%4ER9E#5E_YW*Y[GM;M-CX]5/Z=&C=Y[+J=IX/S),M MQ) ;'VN^7L>'5'!%B5==359UW?NL-/]V,#UOWX/]X/?.4;C'>=5Y M%C#.SFM3;Q%.F:W7X#ZX:R?B&Q]]@#+BA]>VVTU=J\)>FU\%-SIQUP:=6KY$ M,,3P+L'%[]'%>Q!@5HB'4XA+5?M;W9OI,21X,G+CX!\'9SQ&G3X&S]=5/S]\ M[XJ;8TO?O:0>IX/4PTMF3>&T;&>0:#^+W]2E[/'V4K5*/(^8 KI]'N&7W9X<^O)JR:I\_X GAR^ MQB>_/R/A^NCH],^+X\._SH].WZ W7WXMC[Z\^1*O^>;O9V@IJ_OW\XNUI MKQ\^TWM[^"<[^OM/>G+XC+T]?(/?_OWZR]O#\/[[\_)J4J?7>_/^C][)WV_? M'_W^UX?CPP^?WQZ>T:/3WH?C]V][;T^//QR]_Z-_\OL?_NBBJ3EX!3^],T9S MK#0""EL)J-$4"&P=($1P22DG$*&]?42Z4EZMY'[$>H.6P^X/7C.007_G03]W M--@VT/\R!WWB"'2&0H!1(6*IF0%*( .P,@74E#KBX&9Z&>PZZ+?,==\"AV7I M)/281!^[@#JF[+ETMG'T9.*K\7<3\V'3F#0K!YWAXWC\C^U7;]']V^6ZDZ+] M*^'0C8+VERJB[M8?(/$8 MRL"[MJJ2Q/7C94UC!4CE\M>:>:,&\)@4"2:*@H MJ:.A0@"CQ%B/'$+>[NU+V+Y&%RW'EG;ZIQG56GEA$# MVAAS?B&O^EX9U;;; =L&L_.@/PS/\26M\8[[/(J% MB1W02:,%0P^"R]515>6"?P:6_:[!K)C9=7I.5>[F@W&VI:MHR]']'FS6;P;> MC/U<_?SO.)TOHPB&_G7E#N+D+VM)9H)UF*!QB80!'@ MC+7*0V(ECTU%NX&S-\ %#]98M"5<\-@AD(R!;;1P,P8^!@8NK&$9YDX4V )' MBH"!V&,0]Q<"J81&K("((AHQD(J,@>VTAW<[#/N[BOF%02?6F \KU8M[<4;C M:/A.+I+5Z_XS+4<\)A?/AF\"HA^XE\TD_VB MIP:39[/)SH"_#N OEQP1I,/T!5/7$LIB]MD#+0@#$D*ND&'0*3X_CBN'0')@ M]P=!P@U7WV30>WC06UBYW)G@ZGL!L" H@%YA@*"& JH+(42,^T(;K-Q<;=,V MXW:W@[VI/P[0JNY+T8_!W@>M-\AQB\W%;E>.X/@U3O'3I1G.4+X&E,_;]*6 M!2<4T<(!;:D%E,@"*"84X-(73DBMN%-[^[2+H,@!BQRTS>#W&$';#'[W"7Y+ MI>,FS):%"C 1_'9*& 8JNO&8$F0M%HYA%\$/LJNV; :_>S9HO[=#QM;TW=CQ M$//KP=B%)_@2C/!4X1[@LQQ\='49?"QO=ZEU9:=R9CI.M>TYU+Q5]OE-H>;% MQ"_B+\_G,Y]W.*U%4RN%PUPCHJ$!WBL"*&86"(XPX%8J33VEDA4YQIQCS!D" M-[+!,Z/> Z+>PC@OA& 6%RYH4&$ #5P%A+8!]2CF4D*&M?%[^ZC81%QBUQ$O MQYK7%>+3J739RULW6W?_=CET7-2]E%NN[0?&A$\% MU1X[X\J/L=EL-^Y;SIY;^[L1W3JZ^'Q@QK$P]-#5_SX?S*;]Y7S6LSFS3IN* MVI2I';F#=PPI+ K)@%0\GHG$PF_<>" ,@M);1C#3,=HH.;7@OGGRT:MXX@7 MSCD@F(S=U[ 6@2C5@=J=B3H?X%TW/ $\=43/G,*/=^',2]@QQCD=U@,AP_8 'Y3LQ'XBA0@F @G-2"*TQ2^ ^06MJG#BG)&)" X5E(Q:H'0#@,>^(@RC:V/&V(0>> .)+L.@Q#YUV86ONLGO.# M@3V)$YY2:QGHUP/ZU\O6K/ %1")8LT@S"ZB5$ A>(,")"J\SJ*UU>_L%RJVF M? 9JS:'*78G%6;YO9DMJLUX_@=O>!>@OK%7D$O1<< M:(R"S2JU!P'L.'"P8 9)6G!,]O:9S'6QK;1@=SY0.^]I,%(7L5HHQV/;;[G> M&LQGD_NBGMN,XVOAN%FV7BVVSC$( 0T\''XX!:3&!="48EH80867>_OH*H[G M($0.P?[0@'>?UNL]='')6'A'+%S8M)X1(2+X&1,//D%4 \TH!AHQZDFA"X%- MW.U:X >NK]IU.,PQV;M9M.-I/OMD=ZW:9_U1;WCAW$O74Q-G_[WH,9A!?2U0 M/UMI85 $[+96 ,HA!]0) 22'-(!Z 4G0&UO88.!BFJ.S.3J;L>^QPK,9^^X/ M^Y:"M 7RC*N8D.(X&K0<2(P8,*PP$#*!4OL6CG,E;>O,V9T/T-8E!JHQ:I<: M*N=(;>O[=7U'N*(N'JMG/:/\75'^PTH! K(22T0 $\8 :KD'TD$-+%(48L.L M*6(K_6[@[[R;-X=R,R(^0C%MAKU[@KV%</&_4W8N#EVT:ZFM$D%CH>#IHHZ(_\= MD?_]P;+!JZ DD!,$C(\&+]0&2.4UP))9K0JF,571X,4>=:14LW=4SHH,B?FQ1B%5LXD"[,G"H\$@ )[0*E40&L/@VT>H&^:]31&06RW% MEB)>C@UG2'V4_6X94A\.4I=.\S4BD**6@'H8I<08I@#U$7+".B@4(* M 6T)4XP2I'%T-H.OF4N-LCN9X?"^/<8,ARV PZ73L+TTBE &/'0P]CH50 :V M [8P0DKOI9()#C%K5>AM^^"P7;[@5IB_XV'0"5MU_'C8[]BR&@TKU=N\,9PS M\ ]B"W]QXZ%5U?D5W&^F_;\!H6_)YD7:$<0*8 W$@"KD M@8I5F9XH;+0T!DL=;-X,>JTT>G<[YEMG0.(*CV5(T;8-9F[ES'36_T]#/^W3?^+1U&J(F'QBB@"QCP#Q$+!(048&8E]P7T7O-- M^O>[#H/MBN]N:]U]>4T!4#OBNC]JD6B;ZN[GY6&Y2/2.%+%R4HP01LEX5*WC M1 **#0X483G04D+!J8-0!1,9/WPIQ .LQ)8"7@X,9T1M4]E]1M1[0-2%T:TT MIC)N="6%"T8W%1I(602CV[+ E98S(DQ=3<$SHFZ5*?X T8OVE-W_5@[4P-Q' MV?U:8MITV?TF(E"M$TZ[_-)M2,&LUAVYSVYLRBK<9.C#^(;F0V7TFOQYD\J2?R63/%-IL^:YD^*SWK#<=6(FT!U)H!R@H'E"8**!7< M2<1%86SL62^O&CXYK;Y%+F-[Y-*FH8S,\3AP@2(2)5103X6/@4=!\OLFNNAU&5JO=B MJGNE.?$^//'@+-/".K3P9>44 $B0\LY*X!$G@!+,@/3Q3\:\#"0!M3&Y9&$G M*K?:(Y5AW8A,&8_K1F3>N%?>6&HOZP6'-%*&*!"@CCD@B,5 *":=XDXY MA/?V&;RVUC?31AO\B=W.*#P=5I,JN OIU!3[J'Y#CB5MUF]H2IQ/? HBS2@@ M*42&_+4@?^4X!8&P0Y1A$-") 6HU ?=RSCAD5R&SQ"/7 MZF5">#A"6$HI0%Q8:B4@#&E *4= !R8'WB-"),&X8+'A+6U3V5W+X2ZG$NXC ME="L]Y@\Z+G4S#.X_6PMVLZSB>3-__X[3]V(<7+QR MI'JS2<^ OA:@KQP* 06&#%$1- 5)8#(U2A"B_MU_DS=LY!9#M M^LP#CVW79QZX5QY8&/:%99A2KX&#M@!4$PQT80W@V!"NA0D_XY8:U*IS+%H. M>#FH?P]"/%6?PR5'JHQ'(_?4Q-G.9-@9N$FG.E=CUZG<9-)+L?QH^S>=G-0G M-;9YY\ 6F/EK=W%Z62O!Z3 H1CQ!]'S8B]+\;3A^%?7AUT ,]NFP/W*#*GE_ MF136(H6C%>< (2*I,0 A%)P#ISU03A'@F$ HS"=WCJ3F3K15.]=;CF@Y[O^C M^P>90![QH(-,( ]-($L;];$1S%,+"BD)H%!Z$.<5>"X*BPN-I!%Q!P*7#^Q7 M[#J!M"MCL&UML49-NXZ.ONC\H^F1]<^.OV:[?CLB1C]J2Y?[;))UJ[XM\XX- MN6_+'>E@I1.68T'/!3? P0(#RC4#2E(!I/ L\+Y#1J.]?0FO;D?+AZ7N0"HB M@^:.E^%G%'TX%%T8U4@0R:4P0 @F XHB 0+[(:!QL*@]H0;'0Z>I[ JVB<,5 M?F@T;5<\?PN"/-'F+@=FG&IT_A%P)/WVSU2L'Z"C6QOD,8S_,>!#K.B)AX^- M7349ER8&_^/[[8C+W*C*V\8FK>]3&TDE_O]LH18OYQH1WS@8V-47EC[Y(HAF M&%BHUK3#1N/"W[UIG)-GG\VY&IRYEVKBGGGO3#[S9SUN.ENV\*7SW//" \2- M!=3&]D0%U0!KBK P!&,1+'Q$NT)>Y:8VMF9L.YZV*YF0 7F7S?L,P^V&X86+ M +$OM/$,<"$0H,P'%X$R#1PRU#F'G(0\N BP6PC6NFU;NX3%[8K+;X%_\/36 M3D!'33J3<]?1[JP<#&*8?NC3"Z.$-.V(U.\N\6")J"!>!DHI*&>%Q"R\0I'6 M7GOI[+OGD6\0)NAQ^";3QUKTL=)DE&'GBV"I ^$#_L2=S%N7X2IY0"70_(_ CKJL%(P@47$0^JL%9YXHQ%'F"+(%$WH*#(Z;@\Z M+HQK;RF73GF @S\5T-%3(!B4($RH4D1:K8W=VV>T2S=B7.\Z.N80^X.;T"Z\ M]57C>6.R7B])VRJQ_W<+/>:K3O,6$$"+(O8RY0*@0A00(Q.:;QW7PSNO!B3#86]YE M0R?//=3 EJ:7A.FUPZGNN?L[L"_+\Z[R?(!(Q,,+_'9+?Q/'7[Z:CD;U3GW5 MZ]BR,KUA-1W7YWW$8(3O#3]URD%-G@%G[V*4/JH"Y]&T,.6-GN MV(KV/-B= M,3B7&ET\;'1XG5ENE8SNU>'YGJCY%OLT]]Z8;Z:X+X+>'KM3[+2;N+D\.#=TISRS#C MP>& !%!N'1!(4:"0\-)YBXO"[^VW;[](RS'V!\^P9V#?=6"_YRV(-YWQEN'^ M.^'^8A7NI6/(48V 8@'IJ64$2$D* %5A->$$4Z7RV6[M=E!V/B_R8CHVY^DX M'Q^[](W"@UVD2N98V3Q*7;_'SL0$;SKO4QD3+CJ)OLR%BEG>^-'PXG@:WG>? M8T_/JSW\6'_?_-_VH/Z+'/RU.6)B].9?GL"JCU'].A_Z4']TOGTH[.?\9P0 83:4H MQ76;\;WKOZET->Q-)^Z79@[@\B56O[,T \;%[.]6D[O6]VZG-[=XLZV3=WKN.G[8ZPT_A=7=2:MEUI&^ MZJCDWPY,V2M34>RL6O:6&WS';C0.BRW.G=JOO'=.#J)4Y@MQ.]EW3#2&SQ0*YXXX?9ZZE1Y7Z> M_?*++:M13UW\7 [2'*0O74;:L-P7VOX$-AK?!&V:&S3O/ZG?NT0#]9M,/"'B M*^]_]\-P)4'P+_[J=RRJO'X(DCQ+]6;NMV(=K__G M?[U_@__JO3U\^?[H\/S\Z/!E_^W[YY^/\1\?WO;?ED>'!Y\N1[M/3O\X?W-J M/A__??S^[=]_?3C^_>A3N/>GX]_?]H_>/R-O^N$:_>>?C@Y_]4=E$^E^!3^] MPT065A0<. 4+0+5#0!F- $6(0.:TU8CM[7/6+6C[MB#<2QOP=MO0NYGXO*>> M2IE2[M14J>VLLJ&N2IE5[IE5OLQ911*-E?$>=U.*@893)(#&60+9G^WXT2\ M;\AWFVEK \[0E)0S;N+T#7O-G< M[5+#U!R^NUM@X79"W7XK(1_1L4,FQ/'3Y522@-XC[ #D5 !J( ="& ($(5P+ M5UCD\ 8/Z'BDM=D^Q,NYICO.;&:SAUDQNT5H^0R0W2*TA4]<0.\T(1Z$&6: M0N> U@H"Z[@NJ%"6*[C!$T >;WFV#_=VP:6^LNMQOK]NL;&0M']C8>>&_V[< MVG?]XWUC/^!NR&1-2=VX";*MS_W*N=1@IQ_&&,LH.H/A)%R^V?SWS5V%OARH M@2E5+SQ?>*&_4O.:M_]^S\R(F[?_QJ=,A@'DQ"DAH<124VF5Q 4DA&EF(:&, M%.\PV]N]/?'V;SO2F!9O M^G^5;P^/SX_Q_N'X<]Q.9IU0OAU6@45 MJ*J9@]9,]R7D"^\U=ZU;**2)^O:=5T=*G*2:28.5AQ1J+PL$I=#2L )KPO@U M+%=&K J:*18+:4L,BN>I4T3E[L'$ZZ:OQC:B&/[RM#8>N^E/],OLY4_N\BO3 M:OY*3*DUKPZGX]FK8^?=N*&$Q)3=1)7ITV5L-C'556E+-2[#^,.W2^7K#CV[<[5CWT?6&HR29RO5ZL;?(Q)6#(+QS-0EO]X)Y/>Y\ MC$7149Y!R!W3*U,Z,[;4[(0G2YU)*C>):RZ(91JC4:YZT@DW^EB&0<\OJ6+' MDH^JF@1EF:C1*(BZ"AZ"XH(C.G ^"Y,["';N=3^>E.8^?/5[\(%FG0ZG5>^B4_93ZY0X MW#+V,(D7BK_4D!&>)^ Y[L;G#(Y, (NHK4&T803Q8V%HZ?:#:5\'F80Q#\(8 M%B+K=@(3GL>GC,U(@PPF:GPQT\#XFIV:)@L<;C52X\D@:.EY.4K]5VK1!N$- MPXUW6OOB1*K.*(C+$]RG!P[+N/TEO&E MBXZR'V-#FH0G3SJOTL36\SA3A+ZR+JWYB0K*$"Y8#CZZ:M*?:7&\?[,04M/8 M,( X&7'FGGT<]L("F,U&-1UM6K#%$W8;R5[3JR;%RCB-L;+IJ-U:,5M#'3<( MNAS4(C4[FDW[16<4_/P8,Z_Y(JRM?EQ:"_!(:R?HC)N4,1Y0Z\0DN*=/.B?A MK6NNU(E+7RROV X092^-+6F3 (JEFP:(9&4A<=-K-)R<*(5T_CK^AB/0 D_BHD4&71^P&Y_/U M67/&).@.<#Z*."ZW\+%PYR>!HCLQ]IQ&$&X8B7KUV<*P/@6,Z.;5V<[5F5;+ M6="AV)JLF].8:>B,AX$W@QMV'NX))N?AP<_. MPZQW@C$?&#Q^(BZ>H)[#?OA4Y?XSC=<8G 4]&)^I073@SEV_#&9'W?T[C-8$ M-5F!]-HR2,P3C!PS'([#K9.Q%\D^&AWU8EUA]##&\'?MP>TL(4=\#+;8>*B" M@"*YUE*+8E\800$\/M;0$5C7J(GJ7<09"W>?>F6"MQL_WL@]C$V[LVCO!5R- MW>F">35-E["N"MJ?E">@>'\8#$$3?D0H<*;&[31],8]FZO6>)C)"E%H"E]J2 M2@9FN-!@;L0.@QW7#\]NYQ-8#[6J$:R!Q(32"QV)0^HN&9895QX75^9@L@"8 M)YUG<^:Y,K7AEX%-CEO5 5$C+\(,!XH-K]::XZ)B7WNG\?!]T+OPK8@+29-F MY%U#3[A;5,C@F32.8;A !*G.M2 5Q!K,V<"Q+MH>E];&L X%I44UJ)$Q$7BP M0N:+;^RJ::_AR,%7E'G!O;/5TQ#I8@$F'9])SS?+E<2G"WY0+[ES MXVER>\*8@C,U@^N5@<^/4IB-ME<-(X8./]723<6K\Q&D.4MK=S(.FN%K-ZGQ MU]*":WS(2\C1^$(["[*QBVVC+[&NU!G>NMF24&O)'KQG&% MA*4;O,U>#\PMH/I$D2"GRM5&[R)JL%@D,0Y3CN(8JROF;P"Q*D9JQ@&B8NAB MD+2C#AW4#)D9JQVZ:9 &/'MN1=Z953QN58^M/3U MVM=?C#!(+O!I">:K++K9RZ;NW):M)CVJAN@^1L:U*F&C8]S[BZ":EPD/9F.!TFS)M%16;IP\OWK6];D MZ^:^2U"LV'=^INC1#CN*<8E@=04EZEW$.%7G*%P_5G*GC$(J"DEV6+BLZKR8 M#?IT<;_3F>\3=?/?M>9U#LZ"HY@HY1]+.<_CX<<8;:YV1@^W0 T74]'DB_]9 M)^#F<_$B:5WGX/?./RY-T^P+*?;>V;G)VP806:RC)@HQGX6P'F>\LHL(OP5S M>?4O!6&IKZ M/$D[P5=SEMI=#*.5LTJ&*P;1(MF=S)UI-'72J2LK+#@+E%\-C]=%"77M1G+* M%BPYG44P/I4QP'FIT",-)%J1\WQD':=?J@1)Q37!*8Q?J\((QN$[M9U8?[,S M4_J5K) ?#NOP:_HEO!)SEG7-4# !^N$:WM79V$$5"[LZ46^"!]E3'X?1./5C M%=S @6E,Q/!'&?SP(*V9^QMON!)UZ5ZM,KE>?,O2F9O#S;#8*8$AWLY-38.XE?C&'<8!7?7-(FK^(B'P9Q)X:>;S)C&/HYB:M U MO-R<,Q04/PBL\VKQ)*]B[7R\>%-7-:/)],%54HU2].4X1:VCU!K#*\)UK2L+EM MP,Y10LGC:-]: 7EECZ]+___73NW#=^2?I\2N(OW2!H]+(R]$H? M[A1#X3%3OS0)"[WN+CSI;IWQ]&5,H4\NTF,N]*+;.>6=ERLO-0TDPG*)RRP: MF:G<,;[3C.(2;OYTJ;@Q[Z*X,W#+_[UQ%\6.;(BXMA#VFX6MEPIA)3><$LXU MLXA"PA110C&GF:%$(*.^40C;6B5 K(F#+3A6N[/IH$']&KRVQ,Z,S[*M=F8] M#[<.@BV3MAK'U&IR M_"#QTXF9#!NNY5*.-,[KTB7\EN[CSJB&6R'-U MS6/GZ>'_ P5"M [C-U3WK<=:,%L08ET0.8D5,+-\Y.C<#2YZ@>&&@V!;JFB1 M_-_7>\'G#?^D>'C,&8<;I&+O17+"EE7:6QP-ECHR6#,!BKYVIY78R'5?HKQO>:1/.GQ]/H*=?&X5Z6^>SWNW5>!K?I7\F)_SWX/A%V3A,$I6A_]!&ZT8$\#W>\ $P8^7_; ]&JAQMKO]B MU<5M_($PKGX"F]71S,;0G0/:P@$*#W.IHKN&_.B9=2:SH=4>7("DJ+T!OYQ* MOJZ=F>W+_FCRII=A,CC.PVK83_M9@A#/W!P!:W[0O>BX-IG"&7*9M#-BJ[1] MK1!,R_<%WF#<_QH4Y5-R_?6X=#Y6!UJF._1J&;!J)1]=G:;\]W?" #7#Y5T_)I0;W(?OA+A;?Z\.:Z[]-4'CNUV MOQK<_7LAC3N&Z7JZZ;8[.TYI&VHNBZE'"?[Z]<5WW27 M2:7>:Q+K%%*3NV_'T;"F$D1:!=KTR?+KVPG>)U+: TVZ=$PUS%NFH1N[%Q%\?J[HTR_7, M?BI[O5E:I)&OOH^G6KD3-Q7&3->L8(YB"("9K*PU1QYFTV/ M<<.T W'G=%HZ7WW\1;5M#$O$/%J YUB#.U&Z3*F5"-K]_G0P#/Y?\,,FNUNJ M>3+/M_6<2I9"8,I^YY.JOA7V.[\8N?%* *X?@W^-R_VO%P=SG_\?"==2DX5Q MK:SAZB_^[^M_I@TR4?&J5@4+KPW*JL$@S)J)>WQF]MM*@7(3W8IL?C4Y>N<0 M;0P6UPMZ.*ZWYMCP0+%B.NU-FPM@H>JW#ML&@3?IT5X*Y8E+CSE;M.=!+>QP M9A_6NE)-=5WLG1+]Z340LU0)1%ZA8/(: ' 51IC- 9F^>@KXQR.0%3L^7XH/Q[VTUCG ZDF4YN*2.J* MD8M.H+)I *YHMZT,YTKR6WPUOJF=44'\0QVSS#)O"UO\8&V)3@Z/\/'!.X$D MH\HK(#CT@!;0 F6(!,I;)QSFA!J\MX^>7.WLV@F(W8O3'94LJ-_7^DC=:=J7 M)CHP@/G93L=677QCE@^G=0AW,@S3?!#SSO-Y/S#GD;#CW/]X+E'5">(/2SZ*,P$/6HAR-I.6I+"=0(*B)/C'QC/-G MI'O51+B2SKHR[?,O!Q959^X*4<\5HLG4Q M^[5%7$SDK0YE;)J/IN)JJNGYK MW@[I&Q>.?L%2852MRC/[1=6&Y,(,6?BSP7!2026':==CM-/K+8VU83?S7Y(F MI3UH22-O2C\M4D[I\:+Q;X(5D/SA5,:5TO?SEZ)6E4T/E%M<,YHC=6WETG"6 M[ *,GG1>YQ8 [?6.+]6W-KJ?C/=1.7+)7HR8ER*77_>5NZD%2/CPHB=(VE/K MYLJU$E;=94>QO]CJLL)PY>#:J$,PZ:-Y7%Y*,N4$WA[6ID>RG]>[$(P'\C"QR@(;5VJ,/I MXWXU.ZGK F[G3)%?:,(2()G&L6, M9#3?9W>M^XG69GF]&&;[ 5;H8:F'9(392U5"5RW2%0MAQES7C^"*)7O=16[V M):YGK)H%4BIUYC2N$NU,_#=REUJ05GFY\8C+ZWK7UO67X[-WQF,BA#+ :(( M)= #*0P%A1=.%H)PR/&MUW5WIO;UYNOX9N";8$($#=I>[3F8AWBS JTJT,7Q MG^\4Q]YB60 &L0444P64EQC(@H17L,6,F+U]'^S+J_JS%#Q?H8;*C=1X$598 MM;NO%K-J=Z8&-]=Y-I9P!.WI'/=F.;!@U5B1?.:1=P8P1GE 5 M),$T-<0QXRA'W,P4EFBX*S3T=F]?/&$WG-$V"^F]+&C2$# M,'8^*$^* J8CFD=U\B3OK7LH#PG!G=]8%4[!]F)G6S M_;HB,_[>CW&*);*XU*H]E9G, G[S;(0J^RDKDZSX%)E>89M+N[J6(MAUO' Y M6*AB3.7)MTYFV]ZPWV_)VYE+)T;IIU75.!O7UKEWPV^QUTD\.H=T.WNOZM>[ MG=]=Y-71^=RS.4G2;!*4@;R;YG3#P9.]VXOSZTOPL85[8]7CE1.'ZET4LS-H M.J]'*7GR,M@OXQ3[>WKRU_-#@.2N*EH3/&HJ2U*XMJP^U/97#!.G<&NRU"[% M-9,S6X>9 MS?1P?NI3-SY:; L:_YTG=NN;URT::_QIAA/#>[,$9?V;?05*2\Z!W:'P6S9V5U=^?5-7'9ST=<%V7/#^J9]RIN+N]&J3O)( PL MGG"U;'HOE1C&K@;AKO-)KH,;,3TPB06.RIA8L! ;$3?G$,12[]6-5G:ZE#!( MM>6IBJ]6CODSJV;"&@E=]]G9HP]6-_!V4RUNN4"H>O31EPW^8"QA3XW+QX/E ME=IM*@%J2<6 ^F#&7O$IRTD4>PISI0AM<^OY(&O#[18R6DU32)7CK-84KLZ'U%1. MU$'%U#8N$.MX.IHU_UA>8K.&V"O?G0\MJF"-.>E3LP+6Q8/=]%!/.K]-QQ%. M^L.X5^+2EV>M7)J%>Z,#_8^]E_]']4>_'.[]<[$GII_% MG/\@]6>--8[SW9 Q1OM-F2S-4#3M/IT/^ZG,>)$"7"0EZN',BA7BUICJ4G7D M;*'Y&R"SF> Y<">U6P+O!20U+<62'5D%YSN\V8AI)J34EB5(IYO,VL%LH\Z* M\EQ5MNE@IL$1Z>,!"3%&&TW;^.7_Q#J.TE\L8]P2"\0#;.9(F#2FV;$V&4;9 M-P.J I8V:R26"7U.A_1.!XG1WD]M;>+=#E4P3NFZ[3)#G@_FS-M=802_A.N+ MF;Y.??^Q=Y)^"4NB?GO&4G-EB5=;M)",[#7[R&R&@KV@EO9D]4?#=.B/Z0VK MN!X;_7_I[*>8ZWB:,KA/@Y$9"&I0JIC\F*7W4F?GL.B:Q=3,^IRFI2!Z)<6+$)U\Q*;NJ@[[38X M&(7OI5Q#4,"Q3:GMF0-7N9T=(,MVBO_,RUM%%! K6"5ZW2V5VR -;=KZP.\K.O%BLUTL-Y%;9"FZ9M$ M-Z ^9B@%?1/@JE0'7A[N;@R1:I3?48JN[/CU'%Y;H2OTM+"94E=R.N'OV0( M',RS?,GGC+4B52P*K'L.?N=AG;=S1^)SS8YP7/5 KO$NNHMICF?KC[LT;6HX:W^K_=Z2J M6+-]M;?)G/P.5NO.CN9;=0\">?=U;]ZR9+[WZ>C@^:+72.J._K'V7\]C^U+3 M'%M[;9OIM,VX/D/5EL%(&R?;=-*<+'3I]*MJUE9Q<;).O$P\WZ%370PB499I M5<1.@4N#N]J699;VC[M6JFIHZEL&@# ?8H6P247;:J5N;?:RO3E]6YT'VJPN M)<489]I0X83FA!+KA>5(*^>T4[# #+U[?IND[=>38<_G0>"3V#OFU[CGR[A7 MS7!^T 3MT7L#3PX-.3E]]OGH].CS_V?OS9O:.MI]T:^B8M]S=E*EYNUY2/:E MBMA.CO<).+')F^O\X^H19(/$EH1M_.EO=Z]10IC!#!+N5.)@I+56KQZ>WS/^ MGOT_WTG/F4D5)0$:!:C0'AAE'4",'A>O#< MW91@9+"U'N/^^BA?IX205#>GI_.Z4T@=41AN-59-6H>\AG^U9MJSUDQ[UC?3 M?FV-J3>MF=80%+GJ=E%C_/,L/LRG^JG7/K&/),_GK^D8(0C^O$E:RW6-AROR M)TIVS(VR8]#EV3'I-;,& P7Q6BJHL#)4.:TPAX0PPQR,2A?A[PC:>HB4FM53 M^]6\F"ML]4=?E@O&=\-G%(4EWOYJ#;BRD'&#+?=<4"6==AI!JJWRT3@*U-9: M+UK0>A>5V3>I8W(J !K/=UO/_1^)0R.BP4%\TB_'$4$>5X_]LO>FUF/?__7E M[?L/G_\YV$-[)R_BL_Z$>WA_M/_E\'S_M]_W\/_]%,!<=1I M\5[48S&"7'$/@DQ%"TQQ8$+@ '*O*!5<46F6RSB-,F0Z9G?VOE%U_;W'U6F0>=<>'-V3;O YXO/]BC5 M;*2RKV@2S:J&.6]>/&M[Y:20PTGOG7M&SG:6QSG[+L7K,FJ,Y/<\U&6_%V@_>=5PZ M*L/(G,6?)O'EEU<^)<-6 ?F%[(\\4\/;KOY@UE,(^J>G5@@JPK]1.81"X+"*UM?Y-(G+M0V+-.W'7MVO;+.<-9229$[K#5.1=,=E\\G'$=6M)TOB]ZR.FODG1 M/:1)E^W7WS2\O_EZ+)\9F'9Z,**ZJ3D2X?I=/0->?.3$DYTS(N M_2AW[8[[T/GCOOQ/V4]=L#MNMOB6)UZG8^C2R8UO/IUGJN(4+JNBSL/TVU[^ M?GQV3SQ7SK[JI6:]N'\F%)Y/M!HLJ/TUN,EFUDG9AX$]V1T;@C?B?3]\D3XO)5+2W%U(K%)!))2=FB6/$9*6O3IN^$; - M&WDS.1V-ZTW8\2\E,1Z.4W9E$OC:O3]KBDNJO5IE@DR3UI$W]%CG!)4L'5V. M,[?2ITJKS&=L$.+NKF,$W;@:9U5ZC7CW=/QJ;*L%[V(2=F*'7,S#NID0CU^I MV+(J%2G+W>Q>/IH MVYOK:XRYV29Y_[F:5ZRIG>_DY:R5EZV^\-,J>=K4?_RPM?OFKZBL)C$,$-E4 M5WN''2_'LVAS5D<(#)ZEA/[YX/=)SH/\X2">03L@F/_XTV"O$ND- \3B-Q/P MK[SE>LS/UV>CYI%R+E>>7 /N%L7$E9!7';L?1J,?!W'S1#5L.[/8 D@W=?N\ MC K". ?,TJ;Y;3)Q5:"UK2%K=@Z#<>>\25K%*)PW^9D'J5-#.N;MA2_;^1YN MU(Y)Z),ZU5?96^F5#IM7ZK;0=C2"_6#K==V1OI)&RY;XI.+>JM,;0B9*2612 M2?UI*LY6B++,SUA+L M%C\N>RJ>CS:SVLU[I9P]V46]RS+/-@:K=08UM7FNR\%V/LJ5T^ MY5./=4W/;/O.L^V+4<#!!3_U/?J/_YKY5^%%/!0I@W3VG?F)+\0V#M\1$2=* MX0 ,,PY0YS'0V', I7<44^@\MU]S :^_S_.F/N&_9EDQ;/?(4S6[#BH"J;Y? M*"D/MS.YJF.>? 3)"LA>GNS'JNWFY(EJ*_!],[/#KDJH\LA$V_^D3H1O:R;K M@K5*3T^>G 1/)ZUP:XSMXU'+4C>LC9%A5Z>4"W/[Q5.-"=ZYY=+-*K%T6#%U M9^UZN3UTRB_*XNC?H5Z-,D";.BUZ[*AG&:< MZ#(SSU'=I*."\";UYB3S$%D.7?G#1WU<8VK/<]++0<[;SK6M(_3GQG.2DM?/LNU=F6E5O4>5 M--WX?"<+2Y@MU]3XH\FL3H]*V]'XMO:@\5;>ZL2L61%VWR==5R$VYR7?*?5M MJ0]I._7#Q=*CX>6%8LG2J ]A7>0.6A]8=92'WU0%WA_]4LWH+6JQNT#29>78 M;2UV5^:W5(W_C179O6+RIB%:CUO +_L";ZE-;R8^WW=6S.M.M!U,M?.[8Y<- MQ]KS,NL^WVV.PJ^3Z?/)F9G'X]Q\JTI(^'[U2[)_8.G>G^]P0-9!IX%5E@/* MK0%:00*P,-'T0NCOR[#6SHK M[>)=7J;(YU.9&)>30Z^BG34 MY,*B'$RO%;+&#QBM[:-6E/[G;!7N;0\.+MZQH2RNTA,F60&HM(LTP,P8,,\= M*:LR_/,NT)N*!_N*5VY4D#2V4!5H1NVV+07-#(5MV[*NPO)@4L<4JCJ&:F 1 MC+.66I5351UTXSL?3A)P^58QNLAV\)^KWKJJA6[2M8>K%,#NG1I=^U.EEIXU M](=++!H?O\+\T%:#-0IT5H"_^)4/3A0GXX^3D>TI^NF&N:)U5 &P7J4+YJ#9 M)/TM]4^^D&M<&/;N*8<8/P[#WDW3@5=*QROS&2](1VD75>G722#IK[FV8MGO[?)&"VT+AK&<0F]U;/*MJP-M0Y;>BD;/4]' M%0,_'@6?R% S.J\8E9]5XC\E!%3DJ3<-:#7>EU&E7MR1CZ/K@-W2Z-2I("N' ME\NR!K.JOVGFIKO0E[07TOUA]&.+UW$E1H>C<2TY5G;P7:%(-4U]AU4DKWGP M47S69%KU"^^M_*F>)ULS>Y%:4J1X8;QR/$E3FZSA:,K4RE8/FOO.D#2XBLSB MA]''*Y^9%GM:=X1* <=X1?96I*:OH9K)BFC^I,UL2,-K2-YJM7Y:?4-/^]'. MWA.3>S!J *-)U^FV[MR2!U%]\SR36#0^@JQ0M=LI6_V7B:HV86FW=T22 I+5 MH+K./B>75-W=X]=25]*CB:N;\-8NNSB0R:=XQR9LEEZN2T4\C04X/J\2;4WW@#@[;;_2H=,;MUK$:?I^G(G,V;35D//N6=G"?6\815;597=;%W3S:; M:^44U@S_::W\\7G=X&7I\"ZM?G7DJM9,>7MG/\])*M.MUJ[V2& W*)JF\BI/FTT4@:'"VAX&+ON4%>,R[-S>?]J[K MY%'G&"4RC^HYO9G),]%W8N:6<]61KMD^LMQ/!K/^D',EQY6WLA]E6C'+KB $KU7=?!R.)4W@8YZ(.ML1!56_8Q5^63WQOFVS$%DET8ETV8ASGUZZLHQP1/**X MKO/DIC5A8/WWU,.M2EZLUK::BF9W-:[]/$LU%"2P>+(BK^8!O&[.8XI6G)[- M6YK-I'*W1RVA^&1Z.JDP+?XVQ<# \63RH>(>[Y9Q.?!U2=BHV9%]A(Z'=SJ) MNG&]EWN/;!@=J[A6PZ3<@O:*L$8_93-MY54*\5VL@D:J=W*V-9,K(WP>E\ <=UET\2$]>=M90GV=NG.HZX\Z:BKI MM7QBU8W?2VPT"^BUPFF:.30_34?1LDL&0EA M$6+YN)$YRZ;20'W(7YA7E-\ M'#?X=M+/[/I\I+.JE!@_3!SBISVOKJMNF&O@FD]R2YPV#M^\38Z*YK5+ MH-,'Q,Q"LN!T:#D:^^'WR@>],M3>V)&7!,*7\\VOI*JXWZ!CQR#U?5"?'>S1E57>["X.X/FO9\'JT9<,F3K; 6WF!Q&QU'_>D/4 MWJ303>>CRA[S3;UT4ZN:VMOW_995C#*LYJOZ.*FSRY?8JOZN-.@T8#^N;<+\ M.JU9F\*\77>]93HJWS6R[!IY=_W:%B;BR1HD!VF6]/'YERH9/%60Y8!IZ^EL M3.@,LRL/Q^[+A5"S7K '\\U3$5W5]+D?\3X;3TS:,W4,.=DYVPN\)8V5V!H9 M%[Z?E8$Z@RO'>GOW3VE1]B!ES2-U=^M:DY^-&RNX2D!+3\TGM#IA M3/J9T(Z9XCFU/QINEQ4=EKJ.R: M#@1/]A"F-F2U V:)KK*BD^A\2EE=MJ.I/3M)RUQ%5W*1HE\@\VZ:W-0S.*T4 M\&IYHTC,?M6\+GG_5P]8?G1^UJ>>;ZH-OB1_>A.$B+-:0V V3T#\3ISWIK5 M$S5TWN9>::.%+?:?L_8Z-* M!O4]6#V76DV?7*%<+U7GIVOM.I"WW8*+0N"-VXAYN?C/ZU^\MC#1B&Y7^36[ M=7)U9:@WJ=:KP%[2\^XN/8]L<'K>E>EV2WX? MP1T,DC/+$*:(.F4M=%)3@K5FVLC+TO.N]!<5\;-6XN=E2B9SR8IOVOA4BYDJ M[.9U0ZG)8)*Z018468>AKE[&9W54//5$G^JJ6K!OQY:U6X>A?GWM+L?_M*(+ M_;9KG3U9:ZDPSSOOR@JOPU O6>$N6V@A]I_\LM/)N'8G-(9UG6'71N>Z#(%Y MU\XPYP0O4"4577^-AKIZ'_S9]_PN%%A]\.<]_K.RANLPU$O.TU&.KJU:Z(KE)E_F0Z:_3D-A>O;NK8 M'=Q>E^,V3_QZ;OFRO(^QO <+7!AUJ&7JW5DJF1R%)6=\U[0ZM_9-?O]1G5ZX M$%C;'KP,=;BPVC_E_A6=U.X[K;!@7@L K<> !LN!03 M*YW40@;E7/B^DF^:'?)4PYPM4>+4UXRU-0/*Y]PM[ )54;;OZYR/-GRY&. ; M^Y9_:;'YN;8U"W-F3,E:2I1@3:IYBD)770M&=:%Y8C_L^(B6HJ[-L')>=6)\ MCM_M?UBLRH-H3V]SFFG@7PIXJ2)I?>C^;I)4]2QO#QZ(//]19Q(Z0P<%LQ MMSAS>FD:TO7'%455*ESJ1UVKTOIAE=G1I?;W[I=G+]Z@S@%)^9LYK:+E)N@8 MG6:7-W9M!Y1^LW4'LOGR1J]Q#]O4OO/39.KB1EP6XQ$>C)^^"J^;$:66$FO3 MX_7!I?>K@[_.]S^]8S[.ME (V. -H$YK(%E@0$$5/[(T.(ZW=N:?)A>;="X= MN2;[[*NG3O>IW-IM>IRB@%7RUW'B24K*27N'.L^E[+#-VV%O84K@Y5!;%Q0@ MPFE O7! Z1" X.5GQ[%7=9DG9$=-,4QF, M:\H/%^H)&GZ^7/E65;6G?IN9_S]W]$QT,HLCVA[\-6MRN:X_IN&J"K&JJ#45 MYGS.0XICO73'C_,^6]KJDD+*E'5*RT UM5+;8#5TRI'@N=2KFV7C9@];]WG6 M:;K-*?PC:O;QV+9;&.#O;@\?LB@E"6-!B0 !U5Q$O59((+G1(,XTM%(R[ 7< MVA'\PA;^7VEGM:(L58M$<6;ZOW P& M68:1%")1F1A")#-Q&V D=-P+6,JR&6ZW&3Z0Q&F&J=1!<, 958 2&R&3& XH M9-Y3$9"P9&L'TQ6;X<*R[T<=^'CPRRAKGM$H.LOL$/7"+S 5M![S.DDNU[;< MI$_Z[03$C=JC-UMF7;J@/WPGOH/=3_L'?[ZCBFI,DAUL5,0\9Q"(2@<'J-AYU__-FS3OJ]D6CYSJ"XR9;Y'9BHVR1&VZ1SWOO_WP' M!9'".0<\I#+*#JI!W#0"6&8,)8P02*,4@=ORBBVR8DM<(52NLHQK+KVJ?5;5 M+:>V7H]SD;]NH[TA*E'SHT$8I;5L^$:J3CDYT;CCMUO(;G8C.Z_:I=49ZO6S MTJBBW6W.XQVGLWGME*ZI3(X[$[7V3TYZ6Y M^5U#=]#W-M3,![WB^&;ZNP6YI$M#M<0MM]WW5$S]VXK9:'M:W"5O6/W7.A]P M+>;JBD8GUZ,2^W3%UC+G=6)^8\8L'HX5-D^3OQ^UDM.:]&@YE?\V1E'5?6DE MZWK;QC"NSE'C55LR#8>5YRR7&+1%SY6FM71\+WFMMJZNYWULB: ;^=KW2:0Y MZ-ZJ%SU9KE58FK[D&/6IJ=,J;US[@-779E:SKEU8ZC'9\ D-=L?G/:?KQ8O; M%UPQ']UC/V89VG^S]-!>;7?B:^ES(%T>*+PT@O,TQ$_AWNW"8(N+- MITL;(S?_6EE?=LF4=HZ<)BEFQ9ID/;-3[EY>?,@GO1PCN]:$7Q(N2\P=/9*Y MM/W:+7-9&Y-;@\4B4E07MGK BOE,KWI'Z+%N O.F8/*R[NFUHK5<[CL7W_:I MHD=MX/0%SY+-60=0&Q-R!6U6YBS/Q:&5N=5R755;K&X-E,C-DF=]=C:-=F(= M*DZ)+[-1[@A^FMN<9X+Y3_'0+!="MS=-EUB=!;;N%[H>5H';S' ^.4FK9IMQH;*R;Y7N9-S['SU_:;[3JS]KQ'!]0V^NA&.LSG/%[6I=R._6$&I<4. M,.E@+K)IGG8>HN' 34;%>? 776.;RFT]' MAX=56+TJQZCD85J4Q,;;^"A2_G?F#6P9!BX#_=8^KLGP'LR,^;MIQO20"D!5 M"'TM!6!V$PU@OJ)Q[C55@@L7UV.LTA1ME81"!;13 E"N!3!!42"Q$THBC;$V6SOC%9':58?RPK8I M19\/5?1)-[CH\\HBSJ6B3THA>DA%^I"OPU(B))4,1I5 M/AJ%D\18<,ZPHHH*C-!M#=J,]87.ATF@V+^DKD?/4Z_3] M:A9[\?[[[U^^\S@(1E*.A.'Q#TD),#Y88"B/FH0FA$!X2>97FUM:1RVC,;4J MT)VTV)71SH;S)X4#6J:O;!ZUE8C-G;<;)O'>[ZK6 S[DU"Q=]1*9C!N2$EUS MTN7V(@-M4ENPZG&SJI]NGP6]STR4 GDMOVM6FT=])O>NLVS=^ZSB ^R&G#;I MK"JM^)!:V6\]>_5\;^O'X2 W9>\^2]]-!SIYO\;YDYR6G/I.I&*.VJ!(MD^< MDMS*L^I!V8NX]HS&JIU%>E0:;J:LSN-ZT?(4OJIX"JLO7EBZ/)E="M[B]+?6J:IC0Y3C^:K7^QU=9.Q:=6.::F\>>X&]*DF(5)&;CIV6$T MQ<^UZXDT>;[*A12/R";X.V-AH<7)'<4\=6&B[LN4]M'?0\43/..Q;,'"-N2#RSVSJO95K)Q04;Q@\F;C@X M:7E1W4@?CB=-CXS6.54O;))M=7/:*PR[^Z9.3K5G!_IS4;@7%.Y/[R!UWAOD M@ HX*=P: <,1 DX3Q&'P/AE'WU4Q5K57!G&S?(7V^.E%'IYUG*OQU0>_ZT]/ MU7)X-4[%5%$1PZ(?GWXVF4;UXN-H&@7?[B@*N=>Y\5@EU5XTGON:$OL\T=2W M'-#/=E^_>)-^TS!!1T5T^_?M 4(<(,*'R>-YFI2#FF[Y6'^*MXT"NBH$2T9* MW9>U:;G3%F+_]28WJ8]7U-*^?5;7RTL/JOSNW&K/NQQ)&%6[N+ZV8=3M-4$? M1AULGE69X]')J J+5'WF3E.ZW#RK0LDYW"E7N0U,]B^G):UZDX20^C E-T_V M^>O/36/8]/2L/]6_.O=ZFIA#XT89]U(CXORCNB6=MC:^==.9Z[CN=1X1]F0T M'IV27:5J.^<0'E!O+I4L;VM&D.L9G3R.H-D[^JK%!&D&K7MUCP[:3Z;1N7)!;*:22QT23D'[1 MR^S+V8HY&%OC?$6[/4W3/3^OU[HFRDDI/2UI>-.GK:+(&=5JA3W6HXK0],7) MZ?'DW/NX?^>5GC!X5DU:UG-S3Z;<:EB?3R=9(?F=>HIJI&H&NV_^RI]$?!\. MUL-NO>D2=_WP7HZ33Z7RPX &+7ZONN[\<# YC7*=8/[C3X.]Q=8 B]^,0+/R MEL/UF)XK4J5K5V!2RF;M:O_G;'"8B".3:5V7-_1K(,*""Z]]X3J_;![Q-K7? MB+(AZVB)Y'^I)_-PT/9D3AW>&H?DU)\>:UNWL%QH855=5FL'J2?1)-R7%<@4JEF_KY=-+FC.2*7=U.;O5=>W9R5D6I@0\A]^QN&_Z8*=UH9N.$ MG*7#D4RG(YU24AM_5\MDF-S-'05].E^I.:F[K 59QTS_9)M<)""M$\(C8HK5 M6+H_V$HFT&9Y(W%=E: Z4,1BA]DQ-APWESG@Z:"IP5J9_; MZS$A5R!H/DD)/RM%PB>_PCC)IC7UP[T MJ6>N2O"[4,2WG-'?E.[MCB]6Y44IU307[*4J-P&B6LK$ 512;%76=U/3\Y5$ MZFZ\/Z= MJ!OV?4<5--5M6S-GK_X,:K=)TDFZ5._QY:GN%Y+4N[GLI??G8M *[IOU6[7L M:2IROG[R9(QL@N[MR[=>]? LU*N/NC!%S^=I(W79,U>>)^% M9-3_64EZ6L=)LVLF+NAQ'=SI?[DJ4^G=JSXA5U2VY)V97#KS\R@$TA>.ZB*! M&KYZ=ZP3I5>1LN8I6'$6ND+9FA]PL9_SQ9,W]JDX(,KU"ZK3S=2FTQ6ZTK<# M\]U#-V57K?)2AXK<9(=*@N]_ M9W6C[RBIU3Z)D]KWO!56@U^G$;(^3:8?,O[CGY\M=CWL??/U,H*M?M+FJ(E5 MHL]YDV80ED CST&37Y&+X+(:$H7HN%>-ULG]BQ"_NIUE[9EIVDOJVNY.X9,< M:1GU,S%:R$ECJ=D6+^F2V4.@)=]/ZTY) XZ&;=L-L0=Y55U(_B3Q7HZZT%$/ MV'J1(]MQ[J<6DKFCJ1OD7MY5,4FVVJL3EGN@UJ1[:162(R75_ASFD5S1E+.U MQ.L&7)?-:LHH\8>3:=77>Y2H,0>_ITL&9$7=XM$H/G]JC\XK16F<&K7F>7!^ M9J>CT\:"[T]P']O/6$/04HMRS'LJ]!!;BHZ/)L<'VLSJ3?[;M>>N/6Q2R@C M0CP[C@9LYQ?(%:%U9O,O-15.^_6\4ZJ_<<@W0_[WEK+I);WH96\R4"NV^8:T MIU'\%WK8-MQ =F%N^ZV?3^.I'=E1G) XSYW=6?LG:Q.^EEF5L5@1//;=WXU M6/;K'\\FW1MD.J'*_="TNVER'I=(US3*-N/UZ;U,U VXW5!$?2"U\6(,C6?^O3KA$[NUU2QD&;C=%)[*K,^W*G M=^,>SC-6[M6FK<=V?/?L$@>76<>T:6"X-:V?GVGF*(-0K M?:LY6H\$B"O,ENR739&]= )'*<4IA8HNGYFJ/Q9T&U/?AKG/G6\@,^I8J*M'W/4DI= M9D/Y2AWZ=&G%N]&UPVF6NGMH/I[IUY>WK+K]*3P[3?&W)EJWN6?O2J7N>9SZ M1JE3ERIU"B \'/33;AN%2-!H,J^'4G-3.7,AOM-+*DK O_"Z;>@S!3PRJT5J MC5O?()I-$:?R,3G-OOB>*:@7;]HY[OU&U%)<5%VZ$YBM^(HS,J>.-N5'%3]* MA=VS3G.;S'SSO2['-#L)NUV(6,MXE]S]/E=1M8A^9A/[X)3 MHM*ETH#/^AFNBRQ8J%(;DI*X*I6SN^%%?T@M;+Y'>+]2Q-29W&T6]T7Y@F&. M*;].*:X^*92OTVJ]]CE,TEA>5&ZLH/E5VU$5YND4\1?=3EK]W@NY6FVM\/:: MF-975Z*U9Z.UOZI3'-\FI7I$;:,Y#RD^>EK953GPU5@CO^WN_I&]:75^4!0< M1]X=5@6 %77V[&ATNE#5M&"E1;'3!7NG[2S__O*75Z\SP=:XNJC[*!=])@FP ME(V2CFJ3CIO-HB4V[Y5+>)7L3%[-'"L<77!*UCVWVLS.NE[UO)9C39B^DV15 M.>NB[*U+4YL:A(0^LR6BT>IL)G#/'K/Y4=Q$AT>=/":59,1%,MZ/9#SOR<6Z M;F54YP*^^%QYD5.)P4D4E[7+^23NFE[*;V>LQ]7LYG7!\7Y8\\PGO>0PKDEK MZ:<^3+4S.S-AC69-8+-?Z-+U!TK%":G%TE*#I5Y&9JZU[F4DUBEH?2]VVH C M-XJPVV2>11,CUY)4=DQV,1O?;VMGJWA\4_KP^NS8#Q" ^(=//U;RLWG#P1OP M_PW3:?GDD^V^< &%K-FK2P0I C)[U?=&QN >W46O>^WJ])=2"\D-U05 M'&TWJUFM%W4%Y"'"0?*15.=Z20NYEN[3<][_0E M91#[DX@&9'MPSQ4^KRMW:/)"-!UH_XY;]%G<:=&8F:Y+9<_^LZ:RY\.7MP>O M/^P=[)^\.MC]],_SUQ_VG[]@;P_>?O[G_=%Q;FAT\):\_?+/A^7*GE<'^T?[ MO_WY>0^_C<_\Y4/\.7[W^&C__:\GKW[[B^V___/S_GOW?O_D==@[^(#V=M]9 M*"$32@#&-0:420+B##N H#*0,,&A=\O5/$8Z))D77%%."5(:829PW,$XR!#P M!4*<>@6BJ.L\NH.+V2Y+S30OYC-<_=S%<;I@**$4.^40Q0PJI""-N@Z,9BWB M7%TG56-S%/7GHYD^/)SZPU93K^?]J>H@]RPW%NODV3Q( >SO56ATY8!_ MT;TO?Y[O[[ZCTEB#@P8:\M1ME6"@J37 <<2QBX=44+Y\,+'"@5MG:# A<:LI M';"B5& K/4="+@N0I#-4G2>R]I=3"%K#K*^:5#0XKENY')^JPV')[FBML4I- ML34(S*JZZ9S4KW/A2I='L8+"(OWET$\.I_HT6FA),:VH5BM-J:V:3A&L<3*> M%VSGU:/+PYFV]$T]8J"#S-^Z_+#.N9S>YX.O,A*R(S ?AZB<_9 Z_\4/WB3M M)X[NF1['8Y '^7LR?9IO_C@#O9&SL4AO-"SJJ9W-]1? MRW_Y8_?9X(?=Q+X1)9,>YN/\CT_!-#< MEU3'NTMUY!N M3]9_CS0L?LN\8&V#G\$/E=?[+#[&S3K?Y0VMD+KA1BW2ZKF83*-I"G+RP>G, M_]3\\'.RX(_U^4^C<1YQONCGCWZ:F8'J$QF?4^] I;8Q5WD3SJ?Q/]?6??_7BKWZHMI'"M[P6;J.O?1@MP5M>>\6(A=RT$=_; M'$MRVVO+KGCD$H):QZ5JJ'[EBJS15\L& M?5H;%*F-W: ;($K)(V[46MG-ZO'I?)"#$X-F]WS++I:/L(E7$(%>8]_>Z1:X M@_DL^^.^]L=*^MZR0\H.Z6 P,0@\](XHBUY@HPB%]=T?!3;*#KDI;%QA=MQF MOO_#6N]#N%-0N:8%2A]@#O?T^T3*NR*>^=-MSMK-9NM^3]>#+&69G#(Y97+* MY)3)Z0_N'G#X_DV]-4+E__T?B,.?K_/G'Q5R7TCJ6PQV/?J$K]?T_C\/.4UY MCUTQ3]4^K$*1:S1/-VB7')RTPAI/I?+4I,P9K)&E@C,E1""DSJRDES0V!&2A MKV'J:>@F\_KS&Z9NO_A<]QK9S50>WAWHSVV_0[*9J9E';T\^'[\Z^?7]WM__ M/M[[[=\GKY[_75\[=D_\L_\7U?GK\]V2/[ M?_\[[)W#S[\?O)COO8&?WCGH@@D! N%= %0R!)17"'"%5/P;8]"SK1TZ9)!> M:)58B:CU/&SK)Y56S]9ZN4$+GA0\>1 \03AX*J2RW$@J#5,\,"&E@E1CY1F\ M(9XDAEVG9T<%2AX<2KZT4((PDL9R"R@1'E#(%)"!4^ ,1,I1&ZCG20QF6LH" M)@5,"IBLSQ;?9#!Q6!D7<<1(S"@53&MD.-)$,D&"<%3PJ>K-T6WV0\T8@&RCC40C&JE#):X,"X MY%9K;YE+>)(JU#*>Q!\*GJPUGI 63X+50EJN050*&* :>B Q18 1': -7%G) MMG;X$%-5\*3@2<&3]=GBFXPG*@0(/>/:^4"%8RI([J)QXEVP5&)^0SPISJY' M@Q+60@D1S@L!(< !>4"I(4 3BP&R. 3'?/R'%6=7 9,")FNXQ3<93"!#+'@( M-7..0@VU,\9"QP.5GBLIBG&R48CR.:))%8W??2<-HSPX" 0VV>?E@9%Q'8WG MP4NML!2NF"?WA"AKEELN-R"-[;6?^4S&FYE8JVY>F6 F_C-=G;#6SBR^ZYF] MSG:\!,HW&0Y$-"LT#PAC(R@R5%NA D1.:DJPH[S$/C8'#O:?]1*S@C98JH@# M1F,-J$')P% &8!U(0,8)9.36#AE"B.\?#&YYWM95<-W>H'B0?.\B&^]&-DK* MK8 >*XU5%(#"",]ED$Y#JX@B139NEFSL,HV@B^JPQ@)@)QR@"!(@#0J 1I-( M"LTL97IK1PPI1T4V%ME89..*&*Z4<*Q2P#AT1A@GD 04<^E!! *E#<0:*VM,M1Y MA7%**"04%ME89&.1C1=E([<>(A.TAX)0@;3RB&LMB#.$$N%*_&FS9&.7T> 0 M8=!2":R0#$0+6@(#*08P0.DLEA91$Q7'H2!%-A;96&3C"ME(+&12:88X)Y1" M:A1WQ!&"N'(0<5-DXT;)QGYLWEGBJ: >8&.C62TL!\8R#6@PR'J,0_PXQ>:A M*-)Q/:/Q=Y9FQ:N6..L^JYD^KXG#7V!6?*2)O!D#T7I-Z-HDLUUK$C;A*9O^IPSVE,OJ0(,HHB@%!F@M-& I11& MXBVRB*7P'8-\S?/<;G 2UT^>E;3J E-K*0 -1K"K2(1A4R4&FMI$*,YWQ4 M)M>]JK68406GUFU9"TX]<+VM"51IX:E@F&J&-=8,^BC,M%4B_JW@U$;A5)?^ M!CF"Q(=4;VL0H!&9HAT5+2HJL9+0<8:X?[#TMP)3!:8*3!68NC5,44*)%L%( M1RW5'!E%F,5""ZEQE& E$W&S8*J?B!0>I>+.9TA__-0G03O<"R]521Q%=WDS!S[N^NY6&:M MS%J9M3)K9=:^KUF[#T*^>YC5-=)(_IA&]7QZ/CCTD\.I/CU*KS2(O_G@Y[-; MM7M_.).ZC*:,IHRFC*:,YI%'LV8TN)>-U8T^-D/*MQV-G1_7M+E+H'S-F5S$ MW&M#]160?SP:>]!H5S![%'=/XH56=Q5Y\5WNJRJT,,=_<[GL)GN!H476*$\8 MD9 R8C1W 2/-H=;,VY+YN4E>X%=]+0-XG5T?!A8(+=UBR9B2AUD5LH%&*>$45]=0I)H-5AMF""QN% M"UW)FD;*4.,I$%IK0(GT0 L6_XJ@A<'AP)'9VF%#00HN%%PHN%!P89';#W-F M%#4""TD)5(IX'.4)Q4$Q&$@HN+!1N-"K%%-,:1=8HMA0@#IN@.0. LN9CB@! M)<>9O4H]!.-&P86""P47'GUF;I+TKH.R@7ODB:4HRA#LL(9(8"DIY]:7;,*- MPH6N.,M:A:&E,.ZSU!#=40L,%Q8@HPFAF$E";.+#AJ+@0L&%@@L%%Q9P 6F" MH2.6&,JH9R)Q2DB/C--:0H]OB@NEL?FC04*/!MQI86RT#30, =#@,)"6<@"U MT)0J0Z0V#]C8O(!" 84""H\^,S<)+D@3K0,$%8G6@<#0 M[*[.RFIG_]LZ97Q3L=P5T[_)D&&$D=Y[89%V5'MK#,>0>P*M@=825^(.&P09 M?:9O:(SQA!@@8." LM3.7 0+D L26N\$LJD9Y9#)=6?ZWD#X6*_$XB)%[UN* M:H@)UU%V:L8IM5A3K3"W%DE-%36Z2-&-DJ)=5@]1/BB'?)2BBJ>.0U'M-HR" M@#VB5$)L*,K4-%@6*5JD:)&BWR)%@]'.:VPLLHH*+C4.VGKHI5.*8(@H93 BJJ+(.466\(%UX+IK$U M1NB2@K!!(+%WL#OO@T2J\IY^U MM@;YS$4ZWK4*'1B!@4#!)*)2$HT9#53Z@#W$5-^4,*04>CRB8#QO!6/04C,B M,0@T"$"5I,! 8P!#T@8/C6!(EU*/(AJ+:/P:QQ[3C%MK/'(HZA9".0=Y<)Y[ M$93%LBB.FR4?]SO%47/B%*(&X& 8H AZH(23P"'#..:0B2"*XEBD8Y&.EV?V M,VI%T$)#PBE32.EH5Q.+I( .$U,B6)LF'3OM,3$')0D(9! <4!\0T-P&$(16 M1L#4&9.G3 &<9&.13H6Z;A"=\02*<9=,-[$H7%-@@XP:$R-9(K PI^P,8+Q M5:JB94%%&L%E$XD9 X*PIT+ MR-NB.:YSG/[.D@D,F M54&J@E0%J0I2K3%2"1.HBAHV%0Q3S5(**8,>&:BM$O%O!:DV"ZEZ27%.L0"C M]02220PHIPP8K @01B#F!:+.^LU@O"E 58!JW9:U -7# A4EE&@1C'344LV1 M4819++20&D<)9@I0;190];,3I94<E"YCIOW86:?'R'_GKK?U:#26^T[$^G?F?FA]^ M=J/9Z;$^_VDTSH1[^:+EUXDO\/.GD9L?)2*^;5B1\36*1_V ^O/MZK,E3:_Z M$(MM(MGEGW_UXJ]^J+810K>\%FY_Y4JXS:\3W-L=$T@T; M<=D5]8(!C- WH\^# MD_B,H]G CYUW@_\^&_L!@<-!2NJZAA^U@9OQ9.RO0.5'_VK9D)N](9,_:D,W MY :(RGNNF/WJ-KW4D?=-&U@^PO[]PT^SYWML_>#%^,OYR<5RVOM>_V^=S+(S M[F5G[$\^^N/!+Z/)_,A/]:D_BV];]D;9&VW]_7I'KAQ*N#(Y M97+*Y)3)^:XGYSYP^**O]]H3*3< B/^H(+BAG;M+SL-OF+FUFZ:[S'U>,3'7 M)X/0/C=_8^O;,XK2:% #(H 77, M HDI!AYAR#$GRBJWM:.&'-('X%O]EB.V?M+G&^BH;S<1&V-'KM58FO4I$%H@ M])X@5#)-G'<:4JVH\4I#XS1W7D*;6NF1&T)H:>;P:.CY90$]":,>L6 !41)& M]$0:*&PA(- SP;G1))"';.=0\+/@9\'/M9J>@I]WT0Q)&1@D0TQ#3*FE4D#A M,85>><.#+B;H9H$H6@!1024TUDN@%(TF**$!&"L$")@(+JW&B.!B@A8(+1!: M(+1 Z.V]N!1[:)A)7.D>6DT@#I[&'REF1#6T%*C04FP$A))%" V8!V0V MT^3!X9?$XRM9ZC,I@;.! "J" C(N)@@P-4>QAD#"BA5Z=RBZ9O4KFY W^]K/ MO)[:HURZXJ*(.)Z$BN=830>3Y5:5#"* M&3(4&HA+)&]S(&#_V5(R*962(*45H#BEPR39KQT.@%O"51 ^VE-X:T<.A6 / M(/]O=^;657)]@Q7UM&L2UVHLJXVH@B)WCB(,AL"C.%&8:D=5ZEKOD9.<8*D] M*RBR42BRF%1I55#.* $<#1%%%'7 0(.!H,)[0G6 +$0S L7-(PN,/":,%&=< MP9&-QI&HD2JEL7,^.&HYE%1 X@U24=)P+ J.;!:.+.45.JA"U > EQ9%DX1B M8)PRT1H1R/MH=WJOMG8P'$)""HX4'"DX4G#DECC"H5">*\@4\=0@K(/7R/B M)'8&,U<"&QN%(XO)==@)1N.2 8&=!Q1J#)24$$BAL!24&F+0U@X?4OH [0D+ MC!08*3#R1&&$JL"B!2(50I;ZP+35FA*,-,(&4Q0*C&P4C"PFF:D ,8<< N&$ MCN:(H\!$$P4$K*W7G' G[-:.&&)<@B,%1@J,%!BY+8PPHA!WE C%%658&4^I MLIA8S;6P@108V2@864ZSLI@[[[4%/# #J*8:F*@D@/A+'%&$V<#IU@XB0\X+ MDJQIFM7M4V/YMF ;@#N9;;G)JKI P?U@4W<#^NKUFK]'S#>^>LXV'R)=D!91 MJ5V@D'*))&=46NBEIE Z)DO@9X,@\LU2&IK"PE++)*#4P&AI00LT1!0P9:VC M+-BXK!$@Y3!J2&N7AWS=T[=^(JO4^6RP$580N2#RX_)3>(4-,Y)S;"G%T@AI M&-?*>ZN--JX@\D8A\F)*GT$X8&$D(!YB0 7'0%K,@ Q:>AB(%-X]8$I?0>2" MR<EH+(!9'7$)&5A8P;;+GG@BKIM-,(4FTC)&L8J"V(O%&(O)@.= $)Z92F)JAB,B(S5D!-1$+D@2"R 61UW 1"R+?;ZH5]TAZ*Z.0UJF 4 FG@D>:8 (Q#KX@\D8A M\F+&KD>.!FP$T 9!0 G'0,>U!M8Q(B2DUEO_1T#6 M@C.M@\:,1$,*2DY$((1#)TV0C!= WBA 7LY]1MQ3SY@ *>D8T S.5CH036?/ M-34>"Q:-9#&,2UPP^1&SHH^JP:'T+G?-#+QRMKZB*-SA6'I+2.(2NLF9.?:7 MX,XC#G.=QK(A4W;Y,#=GI&LUS'4:RX9,6=F#94*_:4+7JU1I$VSJ/Z91LY^> M#P[]Y'"J3X_2*PWB;S[X^>RGVS@A5C_H@41F&4T931E-&4T9S4..9LWZ,&P MZNZ>Q*NMOM.ZX&^;L?6:GSMU$G]+@?XFNX*AM-@2!1$/BJ(0#/98:!*X,YHJ M2DO^\N:X@E\MMIK [Y#"%'IJ@!92 *JX YK: "#FPDA)A;=X:X<.D7@(/_"3 MY\ H;$K?0P2V0&B!T,6&MYI!9I$C5D>1BKF41C%$*)4NA"!T@="-@M O"Q"* M91 06@.DYPI0%@201 6 G'30.\:<=2F]2?'":UL@M$!H@= "H;?@M2"&6J>@ M#(10:X/6$&(O''+!17@M#0\W"T+1 H0R1:75)(! 8+1"D;1 LV 8H(:IPFG MDF_M(#Q$I)BACXJA=^9W+N!0P.'.P('0H*$)1+E@:'$(U=Q$I&3'><$J-UM'0,HPCJ9BR@NL;0N@7/YTX/3LJZ/G@Z,D6T#-U M10D&66"#2BSWR )N0)>>:B,\1ZF2H___1\2(_QSP<]B6Q5@*,"P4 D(/>=< M!<6#IX(E7=Q1#J-U%35Q1E&QK38*'7J5@"_PWL&'=QII2G@$"$6I!U1!""2V M&CBMXDZDV@:KBWGU4/5^I;3@PB2^V'NQ>U^]KNZ4Z6"3I;PR0DG+O<%61AF ME,/2!1^%.35!L=+!?9.D_)NE)#_B*;6"B@S0@'(3;8"@'&!*>*R-@(&BK1TV M5'+].$K773H5FI4-]J 5&+GK0 QTEG(-#0V*$HLT-]@8$O]JJ!*6%!C9*!A9 M3'3SV'H>S06@E92 !DJ #H$ (SP/SG&(I-G:(4.LUJ_YQ+H+RP(C!48*C#0P M@AF.LL0XS#2FV*OT)U:!2VBQHX87&-DH&%E,]D+,*2), ,'Y1 >))9!6, 1 M%2SI89 >@@!MEP0SBS11*\KZ_JZ"\NB9G\7\E%HJ1 3TD"EJ*!>!QNPD%Q& M*1G%9E&S-TL^7DA]X9QX+R@"QB@&4G(34"RU4R:!(:>MQJXJ.Z-\_5I%;:", M+ 1?-YW$W3]VG]V7&GRG!1R;+.:9IM&D5H$&'84\%MHPAU6RL[$*AA1O\P:) M^;V#W7F_U\'^X3O+0X@[S@%*G(R*L(A2'D513X4( 2'":#!;.S(JPJ6VN-2/ M%7]* 9);N^5]\#YQ_WCGJ29041PEC\7>I7"F]S<$DE)#]8@8# MI9(!6GI3%"GFR"-#R?ZB.<(HM\S3 !!6&%!G.)#*64 -H=@S34@0Q1Q9 R!9 M.[]\D9!MECF)2C:UUK H(1%2! MJA6:>2>>)+7[Y#9.0G;*-]W;?.2H$-X@ MZAD$E&(.M/8&,!,-*4P,4]PG"DM38@@"EB056&Q6C$8:C:*PR044T6[UF4&@IM%#8:"5O2@I6%.W']FK7"8)14'[> M?_^"O8,(,V6Q ][8J&K;E/P"40#6: \55<%16U3MM4Z N7U"(=\6; ,4\X/) M7!\/II5XN--6=[?M+!SG:#";'(_<)8V%UVO^[I0%[68Y:E?/V>9CI O2(BJU M"Q12+I'DC$H+O=0T6A),%G?])F'DB^7L(>Z(QBYXP)VV@%*%@:0L !\@BI^E M)C]Z:P?)(1%J[7)$KWO^UD]HE4*M#?93%4PNF/RXA1L^&JC,2,ZQI11+(Z1A M7"OOK3;:N(+)&X;)B]E8'B-.K-4@I4, &B0#QA *.$^104^(9"1B,HK;9_V8 MB HF%TPNF+R&BU@P^7X99BUDW&#+/1=41:O):93HI2,H:QBH+9B\69B\E-:& M4>":&0&H4Q!0SP,P2EC '/822LF)\5L[6 TY63^2V8+)!9,+)J_A(A9,OM_\ M%^&]%PQ!XQAE!JL(NI [9IE4*E!1XKL;ALGGBTDPUM.XX[ &,BXNH,E:EM83 M8"RRQ&!M$;(1E.&0B_4C."B@7$#YNP3E@LNW$@M/"YH9]TAZ*U6PFEH.E7 J M>*0))A#CX LT;Q8T+^>G!JR)#-H"89+13.,?$8X#X(1PJ1PA L-UI6>[P1%< M/]%5P+F <[&8B\5\2UC6@C.M0RK2IE! R4GB?N#021,DXP66-PN6+V1$!RT$ M1$0#3JE.3!_19$9> "*9%81*1[+)+(9QD3<'F-<>>VZ>+'U4#2YE,%_S*?=: MD"9OJOS@S,OX]_-*]ZHJ>'HW&E\."+ M2LTU7W]19[FVJK-*9WRT__[7DU>_11/C M?30;WKOW^R>OHXGP >_OOI-">*AL $HP"2BC'&@;+% ,$@:Q$H[@RE",6]B[ MW7DF@[2,,NXEIH)"+16FV%IN'((0$R&V!C[::J=Q.>;3,[^UL*WS>1R-G1_' MC2+CWNKM<]7]M;8X^/)IR@4!OGP#TZG?A9?<#8P]=8? M3$*>PWP>=-J'LV&TQ>,V//9N,/76CSZF*^-OVZ_9R2Q]2X]=][OC>NN.XBU_ M&(T'\Z/)61R]F_WXT^!22=(3@3:.RD^7YSS.<#7N9HHK:1BG\%B?SOQ/S0\_ MN]'L]%B?_S0:YXG(%RU+U'C3GS^-W/PHSF!<"5BY1&ICIWY _?EV]=F2,5E] MR-DV4>+RS[]Z,=Q&7_N02'K+:[_Z5$2V.27W,V1&;GOMU4/FU[SX"JMUO32% M]1K-'3E(ZN-[]TYYM23KQ /X1?[[;.P'! X'"<-O$[0H*[IF*_H\XMB)\=,! M06E5D5J3%AD)DC8N9-6JSUEMO4 .<*VHWCT2TMS_JI5PU:WY0[Z'<)7#TC/( M.3?+_W?I?%GW&\7QSGKT?QO[#W!I[77?P^O7.:1*L1 M8X D]( :38&)FP20( B,_QK#U/I2F#VI6%3!DH(EWSN68(6H)$&IB"=4,*XP MB[^AR)A@@O(N80E2"!-TZXR' BCW "BP!12HH*/*,*"Q=(#JP($1B?*-:V>- M-,%:N[6#AA _1(G>=PPGC\<#MY%6WE\K?,#KUGSW<2C\UF^M'C'_\.E [=V8 M;5^%VN9,O>Z.5,'76^#KJ&>P>:$H-BY::$(*0%EJ[6)D % C'ISTB5.UZB>, M'H).]=\91PIKE3+>@7?$ MIW;' 6AI*3"8"4ZPDE;3-4QBN'AZUD^JE,#2G9E&OW#OF53<. @U R1UOJ&, M1)F/2+2KM*-&6@N=1EL[. I^6@3_'=E4%PD+NKK\Z],57*CK7A"TO3KNF][G M8JWR.E>#_^T'1]H-;M(\1#LH!(28*D@)DU)) 8,A!$,B#.J"B) (66DF8"$;(\) ]8LHRW\LR<\DM,LX!Y["*>",# M,-0)(!EFG-C A88/2:)8EOE>EEE(!H."%@2L,: P8* AEL Q95BP,OY/WZR[ M!*%$1RD@';54=QPT62!'R5]+^V7ZJZM+SLVEFS8F3 M\O6I&*;3,_5ZYO,L+D_L)S]-K#OQ>$WC* ?NS*^:_OF1GE=?G9V9F?^?LSAK M\=NC\1T<3B9N5JVXQ.TJ1,PB!=%G^<;0\2R]"HOF>Z MI6L<^=/*D7_9#.C9T4"[CQ4)4?7X>%&\@?\5L]2ZM,L9:R:==\U;RY# M\ ?8,QL@-/6?R'7/PEAL1RVI_Z@F_" M:5^?^5JGH:QNVE8.R/U*Q%(/>Z/YVSV)7\IQAM0_K7+TKN2.U_/L:C+^<#0> MU\[F](O3^/2)^^G^*ZUNUB'XIB#UH&5@97+N_OG?W*)U8X[L6HWEVB#W('MH MG69FG<9RIZM43MJZK&$I<+M%.NME?_[AISF_9FS]8&+B6^9XY&PPB_^?A9%W MC]9^N10@//T"A&_,Z;V[2H1G1WI\Z%^.TW2$:;RN=RY>M?M^_^@M_I/L?4D-D_^D_QR\8/LG\=[/7YR__?+7YW^>O_BR=_#7 MA4J&.)+1'O[U_3_/[9=7O^T?[S\_.DZ=T_XYV(O/^>_W^P>IB?/>Y_C_L'>> MFRU7E0R!>I+2/P$6-@#JE $Z2 .40-XC9Q"1>FN'#O&#T($\^4J&VWO2KC,1 M&P.*:S66U7IJ =H"M'<&M-^8AUV =E.!]DL+M-1B*U#@P.L(KU11EOBW,##> M&D^9,)*+Q/Q/^$,P_Q>@+4!;@':MIJ< [5U8M-]6OKB"A[*@Z?J@*:K1]/.K MYY:^\](A;8T!B2L!4",\D!%C :1(60<1P3IL[; "IP5."YP6."UP>G,X_<8R M\6*W;BK2D@6D19A 38,%W'$%J(<6:*VZ._3G?=^_B=1!-W,*E]:(WG[46] MX5Z%@V[#_9'V6_&MW<"WMO^FEWP)!;=68@,DUA10$CA(K%,@_@")XH@HIG-. M2 EBE2#6=Z,;%,BYYN3]\+ 9B+,X5?&G@C!KCS!=UJ$W7 44(<5*B@%E%@&I M$[>P#=A)3@A3=&M'70S;_%B0I2!+09;O%%G6-^.NX,DCX,EBWAUDAH? &, J M0$"I<< X'@!V6'.,D'5:;>UP4FR6@BP%60JR/&+R64&6-4>6Q3PS&BB2%!+ MDLE"B6+ <&$ "Y02PX(SCFWM4%* Y6DEF6U&!.9*KHY!F$Y.!N/XS+0M/U84 M9@M9:0/0\9Q-KVAM_8TP(MECW>=;"RZ=5\!+??K?=%#=)7DX? M%52Y":J,>A$6AKR(-HF,>]%P0)7S0 J)@.">(<)4")YL[:@A(?(!0.5V9W)= MY>$W6"LE^^*I6"L%9AZ0XJ' S%K!3!=F$9I@I: $#LH XO(+H 7% !-E(+/. M>>:W=A!ZH(;0!6<*SA2<>9HX.LAE(Q+CGL&8]@S)/F%O]8#+7QVW[X4=CPKE9_X'U MFL)'I,FYUK1M/HBN3;5/(<7Y)FQ<8$UWR!$='(BJ4,1%D5+@@G/ (R85EQ3I M0+=V$!VJ-61SO<&Y6S]Y=:(@!5 M0.8A0*:-*\4Q?-[_\YTCE!&'-# TI,@2$D [[X%3P@:!(%%.;NU@-5S'VI[K M'KWUDU>EZF>#8TX%C@L$]17-,(QV(85[? \2.&Y8ZJP9$XV&L^Y8%:V-_7P'J+&^\]<),S<^QOV''[ M$8:]M@,K\UGF\[N8SRQ(_S77\?+X?S?ZN).!*RDTH_%9SN79^:_XZ^:%3O3T M<#3.#U8=4.S\EYG^J]/$\VVNO.A*(VH1+JZ-,JO0*C_JI]$\3J*]@%_'H[$' M]4HAG%7/?F5IE]4T6WS#"N#WSZ+.-;)WX))95.U:[>U$C\9Q\5;F6;WX?.KM MW+LX'_$KKT*5=U5I' =I40_BD'XYGM@/FZGQ'?O_\_K\G[_=J<&4OSK8/]K_ M[<_/>_AM?.8O'_Y_]MZ\J8UDVQ?]*@K.O>=V1Y"[SF"W;A]W6<+VVU\ M_.Q_B!Q!6""V2C+&G_ZMS"J-B$%NL 6N/73;4JDJ*W/-PV_!G^':_O'^R1^G MKUZ\$_LG;[[LGX23_=._$EAUI'MQR+0E7F"PT[!+B',ND(YY-IEEGB4>#1S+ M5B>"67P.6S\:CN/6 N46;NR=A7@&I*&!FM8DY=4\?H^$?3,9'QQ'\"7Z_<$% M4$>G<'FG=^;[XP /F0'6-O4ZG=A04T:I=1$^GC@.DY[I-!Z-A_F+_FU@MJ-C M.^I8N'9\-NO&SHBV%L29[?V"FY5]4#.EM_!(D?#GAO7NPBO/AQ:!IOCSV31D&+1@U7=Y^\;![CJ5&-W M I2<3ZG05;/]>>LS]<#Q]CM%%U:=\_&P&MNSI_GJ>B7LNC!&'8A M5+_^UKGYH&HM[6'E<;CBI.HWGQQ5K<3A*/KVO(J_3?[PC]"KSOOV\K?>6=G0 M\J-5Y8$7O3 ZAI. $\5UQ*1QB9H'--_OU-\MN9SUEXSM4,:N__[&']_\)=N1 M_%OOC'?(35\*]JV_;9?\0$M>8?Q.R!B,I/B-EZZY$?J.&W%+^&"S?(AOB0W= MNN!&0MU_6L(LJ07U'0)$M8T,LC0+^*Q-OR5UTY[Q1I\Q'"MIC_4I'BOM@&65 MK?MAM G>[-&=\CWHN99VOK799$,@U!YK0O_U'+NR%9WRFF^C2RY*?Y>7^>P)K8 M!PK7P[^[+Y[S??I.=-__S_'^Z0=8;^A]>/_7I^4L^0?Z/R?=T_W>_EXX^?CB M#=W?\Q>P9O;QX-.7C^^?TX\G_=X^_?/XXXN_4G=^>DZ(249K;9YMX!%WAB+G M,$-P3EX$*9F)?NN9^"X=. _&1YLG?^X5(F$CRJ);U;%1)/^H50>U@1D>,Q ^ MQT881GB,GBMA));$MJKC!ZJ.N:::((RWUN5^FJPZ7$)&)?AK$,'%H"PW=NL9 MTZ)5':WJ:%5'JSJ^@^IPC ::?.2>1QX]T3AQK*.6W-.(5;Q>==RY?K?5*@^@ M5\2H#E&QQ+7&>9RGUIL'S-;JE4<2NVVU5:NM M-D!;>6)3EHA&FNC!MK!2&QYY KFH73*&$R9RY*&5B#]0(LX% MO$$:FI#'7E'B$;>!(2L=15%PIS +DA.S]8RK[P!,V$K$39&(#U.IW,K9!W'4 M$Z>>D(A9E#P*9P(12FC!P0(5&H?64=],$3R+XCJLB0C4HN0T..H"?'3+$T84 M_ BF760^NAS%I02W0O@1A&V?> / PTWL:'.;&Y5V>XLL4JKQ1F.%A..3Q >OEYI.P=:;?5DM56@.@HLI72)<,R3(2(:R[&!3UV2KM56FZFM M9CDGJX,)"E,D@S>(6Q&0H4Z!/Z2EC(XFE^S6,[&->=LYL!FC*>0J1/B'G%+X MH$OY/O#^[9ZU>_:S[-G#8 INX$E<,X!B-ECAFH$4-P^>*.8#5BQ:;;"AQG$3 MK*$2,R:<"#C/592''&_=/*V"B*L:YWN,JY@#45P!J;X_&,4.W^D\\ "*YW:8 M3;4*;+6WQW:X*:,D<'=JG;UA^R]>7K[:ZY]\/'T#5E+^^Q_''TY>GC M 3Q[[Y^I>_"<=7F\4YU@%;9E2N0 H4*,)8>M IFWZ5&>9)?8DQZG.Y M]:%/:;S /VT%I'\VOV]5WK=.KX*S.#T?YUD1[K(#;]S+$JC, YA>#E_DO]>/ MB %9$';V""X8G[H:3;KSU^N7-:[Q"@^Q_+S(U4O< M[ISWQU7']ON=+,0SG=G^XNV:IY2!%Q>#<3]TCF$I'1?CV>*C;%6-\Z :>!=X MZSQGX1QDV5D>_K#RCLX?O#'O!ZBF\")Y<&KABA=HZ=V M\WON30[J[?2@GNJHDY=GJZEOGD<[U_/H/*.T*,U8QN^Y>K6&6.6(N F=X[K))&$](O7.*BM^-J,D8H M\W(U]L>3EYCC?CBG!4)O..#!S9:W_CB&<3^^2IG^)D^?4=_SAF'_@"WX??;V MKU)K[\S9.Q>' AL1HO1(IYQ9EQPC0RQ# 4N+@_=66K=L[Q#%A9.>!ND#%]A: M$:.Q*N?FF>")+-L[B_.I)C04@M M+[Z9HW\$E>WHGP=?,M.\7?)LR>I^AO2T$"Q_+Y-J_EY7Q-5HT8/-EE@9%WGP MOHCC88P=L'M&QU4>3 B*)D_MZS"\?8?D],.$[WY,4+(EE!L)Y6WORP\CDRV)N%?FP?]6]OZ@V8Z?=,$MF_.0'S3?K7'?6_'3]T67GY5DF MIAPO?MVW9P]%PO=4HO;X]O_:LM Z^+I<&>J)EEZZB!WCCEHKG):1)!R,D5[H M)AS/%\+QWU@B^C>C];NG\/:C32DA_=:@?5U">K+?^_#^XZ?N^P]?NP=_]?=/ M_CKYN'=\W#WI]SX<[%Y\./CC>'_O.?OP]9^]Y1+2;BX//7WSY>-)]\O^BW=T M_\7^IUX>A)/NBS^7\$4C)]);BX(R&G$I!'+26203 MP2IX*DR,N824ZJN-=)M2K;])?+9):WE82I401FWO C.4)T^,IE1[ M:2*S(%B5R[*4F$:6PA]:6?K(9.FL*=D$DX+%%$5..>+<*Z1%C(B#YO3!6(=- MV'HF@9BN@EVTLK25I:TLO4V6.L,=D]PZ;3B33@.ST4A*UAU3HE:6B;2R]/'( MTDDC[A?8!WP8@H\"$X^LXP9Q+ TRT20D5.!)<$M9D*UMVLK35IY^HSQEBC G M-;/ 9SQP;VB*,F&LB?'YN\8V):UM^DCE*5N0IY*IX 1ER'C!$/K==1;T _U?TMY?K.ITU:Y08MI=VP=L,>PX8M=B)>Z3F<]29> MZ46\M7RXL5'TS$RXKG%Q8NP,JM)I\]LPYDZ2SW%6\/N__]%L'*<[JNE/7/5+ MZ\!^&8_B/YJ'X_E;K.@!NZ7L>9,;+XA>W,CY?Z[1#121&T;[ M"=D$._.;[5_8RVKKOQ9;=6"OED[EVLU>O;6KZ.&N'4&WT-+&]1'=H;M5/'B; MR.^YXAX$1^&NW>'0GAW%/*!PKU?Y_J :;U#_QV5C8I[^=?KQY WOGH33??HR M(Y,<[[_OPM\]V3_MB@\'+\$<_'31W?-XN?_CXXN/I_M[1Y?[] /[<+)_O/_B M.?GP%?[^]1W]\+4/)N%D_^M?:?_K![%_\HYW#]Z!.?N<=H\.A?().Q>1 M2@$C'HA"QG*' I61$XN]8W&Y%\0)%24W4I!@>63*<@'_4Y'ZY(Q+5WI?%PZD M,WC-2+G.!UW6A@>?-(Q\F"E949>R\*;P5'K=N:]>/O? M.;T^RDY;YR#ZXS-8R]%EYP VO4IQN-V9.XW!6>F;_%F=P!$! $>YR=M0YGQ#N:$:XHX9P._X*W?8; MNK43NNW\DLM-MC(//)6C[#R"LYS*C:U?.Q>]T7'G1=]^&;P]A3_^=[Z\\TL^ MDJU?=SJOQ\-J;,]&D_Y7X+[3:M+Y.CW&PII'<.ZY!S ?INV CD"E!;;**F1R M\'"7W+":?_Q4SOL1'/?=67GUL=QW;2?^?TXVCY0E\]]H+"&,/:CZOHF^T>NJ]['SC#Z M".2>P0TZX_,TA!]U4HSPYT&];#&6(T&P(WG]K(8 M7_F::/WQY,>7T0Z;_O'RJ]$Q;,?1<6?W?-CKYX_D3N=]W:O;CYDUZW;U1CPW M-WDJ?/@8Y.X:?)BE*%PY.\I"$QGY8S(?J%/'(S*.RD0V7]7!,_ /H,W!T1FL M-F0@##C\)2HI5^;;S' VX+X-12_ C8Q/QW4@I#'Y0S0;CAX.PII4WB-,A(J?/7'+MHC_V^ MCIT>8AJ 2;(R,HS)]8@:AJ. DJYEM,OWK]!FU93.U2FJQE9_DQ\,AT 5HXHQ[X6(6 ML#/9N=/I/%7[!7SMG% NMOS,D%F+D15U0$1>)6HT-Y(;)H2S,6KK(E9^.7=- MZ#=P]"QH>#;*2WH/3LOO8S"43N/P7SWK>OW>Z'*1X^'59GD;5S5N(:?.^]39%BJ[@57&+E(NQ- M"A('Z64@_)::E9?[?RPP/KRIS\Q_,1B&*I[=$^?CGXWS3SQ^M><9_%WL?_W MNV\.B1%."H,1]S$WEDB)7%0<*<&\3LK@D*7 .B.270C8AESM*;B-#@QWB;4V M/B45HM:W%-*W!_^=#IYIP@PH8)0(RU#T(2";&$.*2"J5]\1XL]Y4';A?D$XD ME11G 3OAE4O.LZBD=R3<4O7;'OQW.GCN= H85#XQD2 >N4?:!XRHP=YX(ES2 M9*V#)Q$<02(48Y1QK[!F-H";CH7FR1AZ6QMB>_#?Z>!% '^:I@1>7#YX0L&# MIY8A&U+00D2=4MAZ=C98452X]@<9<#?:H3\N,:K&ZBOF8!.K*O'C$J(J2$[Y MJNHZJ)Y.)IMR2=883QB2M1N'_M.-J=][S/5NQA;=ZH#NCH^ R_/)BS;=^X-S M1O>3VJVI_*D"4*YM,;.K%?LA1E^/QJ:TYT9YE6ZO)O>;4Z\^3 M<45URG4BBZ:IURMIUZS M;!S,]IUFPE;K14(YU$%!Z8V#Y9!D; MY+4,B$MED75*(:J(S$R;+-5;S\A-V9)U/=[M+('.H\]U%?W+[2+<;'9]ULRE MP_J$=]I9ZPAW@5EA4OYGI$8[6/EMT"8M@3TT@7W=OSAT&@>">43&6XJX"109 MY4%7&PD':*@V6-Q"8.M*'B9-<#PRD#^:>RV8D,:A( 6H)$<2LDP*1"V-<&H>PR>WY&G7DSPYX;\H>?+O/]MA;S"N M9E914]91-2"!.87K%YI$[*Q)Y"G[&S=7R4UM6;!!P9$H,:M3^Z5W.C[-'ZUE M*&!OE0N*)>.Y]LI&FGB*FIDLT$-=$R6P7JJ@N$OW?UL3=1=KLN+:8LDT[#YH M_%X)GFWMOGZY]6M=EM2KYBNN2S5%[< V]13 S/",TT&9U3-?MKU0@#'_DZ<4 MU7D,WN\=HSH[G3R%"4Y^*DFV)Z&Y*Y5I<[YK[VSBI6Z7"Z>53;<7&I;GA]NNRUEGD+XFX=<\T'1X/*D$T"S#1'+";6."QMC,I[JEJW^P=X M5[N\NWN(.6%.&88$T.]6[/T200#QZR!^50NH=.&4\:% MT#)(D^)MQ8[M43_844?M$F=,@WD>X*A5-$A'IE 0WD@<;** M.L]KK,ILZ'%IPIR3L?'L>%*-/1&-V;OOI5X>C!SC3F>W^*=+T;W1Y'EU8&'U@Y:S*6N)3J*IX81RIP(GCCB=B]))5-*!VV3O%=C^&_GI MAR/;_=# U!'N'AT:PWT,+J*()7C"- GDA,]B5#'IJ/.2D:UG]&IW4,U)DPFP MZR=,L+(B*0PR5W ;@H7'LT"$DT 2TKO[A)=MJ>.;J&-_]U!HKJDF'%'+4@Y; M6N22#XB0)+664A"?)Q9YN5CO;J% MHL2]Z.M<-"/;,Y_PV.:UIC@R=[6HT3X\IAHXS%VA,!@M?Q1$OT]TK_W'T65_^\M=1? MWXCNF\-HJ%+1PL&'(!#/PP.TH!YYY0T#3R]I3[>>G?7Z5PY^29P\]0+FM_"# MHWX/3,2SSN\6?GQ9C3IOQ^?G8.+^#/A4?T0WG 0(Z:JBY01T4,NCQK&:2SWU%YV!J[$3>82$(6Y)WV:-Z.[Y #HYYYM M8V[-#,GIZ[PZKQ?[/+]2!7]\#6L=A)]. MWWWBW8M#@VD":Y,@81Q%7'F)M"0)81<2N%Q*,PZ&3I9E->S0,A#D%'QH3AY2 M^G0S0\]3JE5\@Z8SER:210MDBZ_)IIW63D?FF;NI . S$ 0S(R+_[7,OQ&EM M1IG7> [[G@/L"[)B#IWG\Z /AY,7-\_=?O+4\W%FC6HY[Y=U5NX#F+4!3"X$ M778.G\$"[5&Y;18KP_CO<6\X%VY:^:R"!#0?B!H=]X8!G=OAZ+)3Y=?OQ>%. M\\@Y\(G0J^ ^?K3=2>,SW\B6.3"Y>54%JQL,)T7>>6DAGN879L+NF33W8A#W:)'KX4>;?Z?:]&C-PD(>B70[:W MTS@Z'H2=SKM9E'_N6WL.M['^N/870,;EA]=6V0!6#%96EOTQ8_6#90)W MF&5!LW#V^>K>**^ED7GP :B)X@34.(/-[POPT9,MR#NXLT9MU-1<<]LY^$6E M8PIXN%^2-)/"R>;\FPS,/#G-9S]R15?QZJ;UED#7$W/Z3HO:Z=0#=*H:-:>L M8RYI5"W6\O@F6@-7P4V*[1T*P\2:5//%F41R/ BV*M-D[>0-/L>K"YS<[>D: M:#:@JI$=30]J!QRUQ2!Q!0*@N-FI MBB,X59LK%::W &,$/JYJCWY&F_DMFE_$+V A587Q&^]]=K++#4YU5'K-8#15 MCD2,$R@IGQ$ G<8._I4<8Y02*=I.IN\_%&"O*U[M[>+]$WC^R=%E]\UA<%19 MPA@B"GO$M73(2*.0CMC"1SEQQE:7C5\-4Z_55* MC1*K(*/BR4L#]HO@6FG) M"=@PM&UG^N'4L;][:(0+U.J$X$@DXD*+/&,L(J:5E!(3GP+?>L9V]"W4\>-Z MFCPCD1%)5>1&:<<)5U8FEYQEEK3%53^._:-# M:;W$21E$$O$9CX@BK;A%+OK M>5&1I!!ZE89M&8IUK((@I\O.7#3B'BOFD6T M[U@$T'QU]TJ $@2J!>#=HX%K6FQ,4ARR-J8F<0DLH&!K@W+!*\,P-FWYP(-W MF#\7^P>?+KN[ARDEI23CR$N1494-:%Z%&9+.*Q"*UEEM<_D N[G/O+S&)?#P MV124"61T;S%7+2XTE!LG4C(4J5J-]W"<2#E$W5&Y()ZO#I*>+-3]N2MDQ?] 8B] MSEP1T7:GKAY:#=&ZW7D+%#F*1SV_-+US"09M[HX_A='SRH\&C>I7JVR>=3>Z M!AEM"B;W8S7J_^=_4,;^<5V!Y-N![]57C)H+L^I]G7=O?2^"BIP^&I:^W:D&_9RBG<10 MP=PXSUVLC7D"[Q^/YK*\^3.P'\['HZSQ2_U'_LKW[;B*TS36RC?>[ER_I,[; MG=V=[5+C4P_MZ/R^]_\A2?)TU6SV- 6AKC> VP_M>4&FF$9,/*RL%W+N>?H6 M,Q248;2CB?9__=_OGFS.^9HQ?]Y6Q[/!*.L90,X9[I/&,7#!63!6,E".D1"2 M3-0D% -($=P:0/>M(T^...A%#M8(\3(B:P,#+SUYI&.N??0NA!2\D4%M/2/\ M)I27NHU"6P,XG)EE2^#WQD3JL% M1H0*6B)LHT7<*X^<8API:VE4'"RM .;4*JI9L)ZF?UD$1*T_+O5MG3"8^G>I M-ZQ&X'*Y&HZK=U8Z#. SE,O="@CPZQ(+(#;_+*(\V;T!/A@5E[(HPIG8+[4C MZX&;>(_"O M" J.&^^U]JH 5-V:^+\ZW*L(,NN/>V"+34=[S5TW/WTTG^NX/QWF-R&N@L%1 M/Z>5<8^/OKYVWQP"EQ.9G$4ZA%(Z /3%6$1$.XZM\=A'M5K&=6X6;W6T+,?] M0"H='<4&?ZJVA7M@4LZKSD9PU4'"VO2J]:V>&LNM 'N$!)8%F& XR101EIPB MKC5#6BJ*6+24\ 0&F;E&@-TPF/!ZVKHBT.9%U[Q(F\BP*U0WW^]G:I2AY:CT MA":G=* &:UD#3 M2J6$3>2.^[L(S95 ^>LZEZVPVQ#" $?3&Y/W'PC#)@,> X[(48^1RQ/5N 2W M(9!;A%TI%[Z2[NJ=QDE":[Y?Z6(P_%0$V'D=< M KT]E_%;Z.4HPK&,:,XOD/\0$]P\IPP+\&4IFBG!I_DRPKF6B::+(ERY05/[ M7ZZ?X+[E-HJ%Y0]A74[<"\>PG\?'V.2W'L@;_L[KW\VCTZ)"E:Z[U X#=QQ#/*D;$I9( C MJCD.D5N_5N8K&1>38MH[;CFE$ICVS, MI?-6:*0%$X@0FHNC0V[JN]N@Q-->[DZ]]UF(]U5%;8((/MN#,>\:TR"'/-:" M&DZ)DX2U5=0_VD2@8"+$1+36SH$#Q B08^[#=XXB0L&<9TF#SZMRQ>!]5U$G MJ3T0@14Q>NZYL\0%YP667BH+9F-;1?V#J>,H#Z8!822 #.G@794??:R;%<1OUD?U0JI>8@ MA0LNPN<>K*JIO^N=?<[V:6U@@I(X@Z_"<'R4&X'[/5_'!7[9>KF_M_5K.9QI M^"&?#3"J[X_#I,3L(M95?\.!SSV@TZ;?T@V<+>HF >!J3&18%/@&'DXUF^4Y M)P#;/PZ7V6*OAP1>EHHU$ 9Q6$T*[-^!J(!;O)^ M7>[9GH<8\/%\/DC?R+_FD\+D#:Y2+6^VIW=!X.W.QP& S:N1+74D_,Y?[1YJJ[5TAB+O4@:_XAHY01)23N>I2UI[!F:5OFG,SS;0"1!* MP=MHYJ/\7=I04D=F0J*41!Z$U\Y3 F8Y,U+1D%1+&P],&R\O[%_L6AH3$FK@7*HAYQX&5D* LH<6J$ M]49Z&J]) [@904UC]1F%IJ[C 1$$,@A4_7!^/!-\-YI#;@,CQ.;Q+$D>]&O\FP\"%P1A($=4?;F=)-B/).CM06H-:2+0'\DDI?LR0:+=! MG"U!HC&!@^0\<.? '%+Y.U@NBK^UEV"A"O[6 MJQY']FUF#VW+G+(";EAQHQLQPYNU#BNZ9#A;%SA,D\S2E):DB(Q%JB'55""-L8V6WS MX8.'72X.64@NV4B1#M(CSG.Q(3<,1>H3'(@A37D$O;T,OQXUDWWX&IMV%AY8 MET!$$LEQFY+ BFDAT7 MKAC9&!R*/*9 E;4AHZ;B'7DC@;R-YZ-I![JN(?QFR.630I6ZM.]VW9M'9KD8 MFW!7':2OD;#G&MTI^3ER)CE;?;6K;R%Z-H,S^%[FQZ35S8(ADO,TTRZV4?%1 MZ[JG(UN-A@.4^_ RY'0.C/:JC$JD=>=;JQEBH@FK1*(& M7U(:!0+:$^(%DY)396*+2_FC"8-VCP[!G(HX8 N"ARG$12Z'!5\?695G3@B) M@5YRFNT&=*P?54S%*2>*!<$,-ES+8,#HY"X0ZSE+C)NVF.J'$UB&WS*>@Q=G M$067+MN+!&A+&<2XH#AQJ3BWMS@4ZTH>&@BH(98XAP=0YQQ+0EH;>2+&&QW; M.JH?3ABO=@_!/G!:61 ZX,HAS@A!FLB(E"*@-:353-K56*7+*9UOK*#J7&_N M/7JTE%L-XZ=JZ8(KM'L^[/4GTV66'*%,+J\'P]&"CU"\H.;3'"IM2IP^Q1FX5UQA::G2D01NB;:@M'D3U>%M5.=!A?$G!F8@ MU3BZ%"0R6H!_8)A')O* K#1&R40(> NK2YYGU5;U_(.;ILY)3@(-C"0P!;B7 MWH'-9D. ^WN&P8PKBEE/++;FZ%=,G0OV\I;4]S3/W7P%RW%Q.$A[]K*"&[ZN MXY _V[GG\S[QAZ 8,>AI[.E\.]GV* M>Q2GP]=*'*?Y]*ID6JN*,VGL8 V.6<6QL@X')HP$$Y*EH)7\&Q*AK;:Y"WT\ MO^@>= \Q2&'"B48I<8RXBP)9^">R+').O4I4EPKW&X3!%(*GQDH!'024,JQR MA/)&^FE"D].LY$V6QG^D\I_O9UOD%L279TTK)1!N6*R'; *O+*8) M:09,0CB8+)';&*F\I7NX=W9[!?)@@P04^!+6YG._) =+S1&AM \!89 -38]LGI%.@@O2 M:'">A;\+VM!@XCOWAM],8;,R\7JZ%_A#/6_O)+Q_L)O8GS;*WUCAKAL?Z9LD MNO&4,@W>C.&1$^L/""Y%C3W>8A'+KH-IK9L MC2%9,5NW@24OES1V MM1V5$;N]&L6]0$Y<',>S9:"'R1UJ^)T&$&+VK G$^=6EW:*6EM9\)9"R;@ @ M)@HFC[*@8SCSV#+CL4J*,:X"GG;GMZG#'Q8:R-W0R9+$HG H:!,0-Z(@=8-X$M)!.@R#D\U7+M@(L8,.Z4DJ(7 <)LZ_.&$L7]TF"@5 MGOJ$1' *\< -"%%I$,V5Q3AA1D*QA,$XR'(BZ)2]TGP-Z6CB0U4Y6P5_@W#H5*4?2\4Q8-@.#4(D$%: ++,TN MR7HP,)*%*"P/(D;0[=CR&(CDA*DH?$SZEDQQ>_#?Z>"-YTZYB!'F@B+N^& S/?R[M.BO"&$K!'GQ-\/2DU/Y@EK@XF7M!*:/\GG"3L MVCE\B:5:R?4W:G$&PN S^)"]ZLFT670>09_%=:TUD[-X?6Q!?G=V7\R&1C1? M37Y0%QO/CM3V^X.+:G:'TK$>KTRF>BJ'/)T?L^DGO:JA9M9%,^/825RG%_ME M ED-S%ZCK7@[C/,)]99E?R3+3LL7%L K6T9[)(P&@G'*/P4*M2!S?"E(H/W+ MYG5OJ I(X.<3HS&V@G,7P0"D6$CGF'3,"D(;ZUQ,K'.1XZ0KJ@**5;>073B( MP]-7::X"ZC,8WG6,:_L995KL^Y&J4B0"H9 I04Z<.YI!X"K+-F9_/$-+&O MYBVI5?;7ZS)2IYCU4=FYC_:35(HXO2CMD_&@QA@TYK2*])VQ,L,=K3:7G% M9*VEV6:RQBJWV, ?1E5YXY[OG=L)2,_"2_?.\LJJ6%4%3+?&%)KC@EFH%Y98 M3S%IYF;F;6BN@U7&@D7V5PP7@T'H_ [^ZW;G=Q!IP'UG/5MW^(U*=U$%8JZL M9;K8Z5V**OZGK6)_N_,62.-K'/;AEPV\TB)DT?2COFJD3HI,2*OI$O.'::(.-E,X8 M:D4DPOIZ7FNM*MO:R7O5F-VOK_;\80PV19Z!BKF5N1!$(F<=1M%AD\^&*4>W MGMV$5M6IC@?#41[:6^9+79]S;YV3'^B<;&8EVIT*T1:K,YH+YV3U;*S%U/A: M@;I?E+R+'F3#ZO+ROS\> S8K@9')*3&,)+QWV/889!P M\[-[_ASWZR[UJS5JCZ%P:*&Q8AZS8"V"YX[ZJ QGX/$RS:S$S#!IM0Q1R6#^ MAO9N"?Y.!$\+P?IX]&B806@1L<2/3B9AU>^[VEV+D"QZK* M;3O9X5ER:J9U=JLR91M&_C9Z2!KJP:6J_RTQ"(* M\DQ3+I=G*0V+5NN=+930C:?38Y^*%?\(C/@[ART:<5CHZEZD8(TR"9H!/-*F_7"3I[8Q1"_RQ70M< M%VL$_7DRKM&VIZ0_\1;*2TXOFF."JG#'9!Y92['?C6+13([4@J:9;KDHPR;G MO#"\K1[!EJ=(G!;RRB=8$\YTM%PK?C;@,*LKQ^GA%8JHF>2LYX"I\H59EI0C MK^'-)@A8@_%H OK?3 L ^9'*V4\4W&S4X,R2/'6PTC!MXYY8D/9LM7FZ>D#? MQ-/K94SL7)%99U,&WH/569* -V7\J/,\)@P6F]2YMD#!'\W0O8H4M4 MU\_5V;[E).!VI@(7LX#YYF&6U=^=9=G[L:,L&\MA!:=<&36\+@?.>#A7)/E) M T8S0V3!ZYOHA;ECF+-L7LXN[60N66[_6*M"7U$B-.R(X)A+1S7CP67 :$&Y M8H&WK1L_MI[V9+>@OB7MF84S .(.J,.!3D;66R&, M,RYQDE'?;H #7&Y]:X*F'N3]#Z)=MP&*A< 8"&9K\SPU#-I!,F4L518;%8)K&Z V0#SO MOSD4,@BEF4+8)%WW^(-QI?.LFD04-L0@."@)>IF$2#$0@3(/VP U&TC4EIW\R)KX MZTOD'GT?VL_49C8W?V"IU\S._/Y%(,J_!CX//2C%$S[[[F^SI9OK>+<[+\_\ MSK2!J5PX;7EKKFY0[E9CJH [Q[PSM[^+ES+-?U')X#"CAI(0S=# ?N-,.!IV]P-+0Y_- \=S),N#/,FU&2#Y,Y MGEFN7+><'/Z$J\_&OA_AN=;W0%;-=J')@=3%S/",3RFW9\TW\5S9SRM%E]=# M5TXJE^X 8ABPHLE&&R21W'AO(\.*Z "*E04I&R,*2&!^U' +8GA_X)FA#ULJ>F@J^@)K+;BG)F&-$M$9"C.8'"MS MB$4NP&G%-@FPM.4U4)BSRMU;NQAJ 3I'6;F6H5#$:4Y(@]:Y4D9932+&D_J' M*:AB/9YTBKD#=EIO,*[N,$8Z4T C0B>R?'%B\UPN:3I>LC!*HP4><)!($DS" M:<@4,PR ,P9G!'"6$L]3A<@5 ,0V E"T<<<7L@AY7N$\\<6F\@L!G^5@0,>]>UQ+LWZOP4^X$4\B]DK F4^M.=EL'/VR;;A\1?'\-1+ M-+C(N=U<_MX#+ZK&TVSN7V-0^#@N$0I8Y4[G7Z,P<^CJRZ8/KYLQIA7U);F[ M2N-.J]P:;ZF9&=K,(SB*9\7O@N5>SIRH?(&/PY'-98J]*I>K5IU??G0,9E5GK)[-O37&)W=N5NKYLO7\.7 ML_;=GX=:%[O_4-W^!W)P&!.LNNR?M]7Q-S?1< O2%P=.P*LP0;B@*0_6>NVI M=$8W332L[0B\?U="O#KX=&AQC$I1B1@6$G&#/7))>J0E!EM6*$:3SM7.-Z"F M-^YF':;(=1[Y@L^]/$!^VIJ55>,\*]6\_(=U(&KV:D[>[KP&CR'._MI,8AV? MY?,,'=?/W=QUKP+00NJ5R8V7BZFE>?GXLHF;-,^=@\QI6GC.AT OPUZ_OD=N M8A3@CX,F]'J%;::FQ^OF MMC,^*BON#4MY)UA.JU^O=.Y,#8FS$EG*VSP7%6NL"UAJGD!>XMBS"';,97P@ MD0[*%%C8T^DUTX64T<"=?N^TEP5B4YW?FT"*-(LZM9=3J9D!W.8$1[G!? /' M#0^=+FQWNO[_>G5>)$1SR^UF7;7]LTP#-[(=N<7^VLNVF]6 M'_L%@:/$R2?O<-:Y=@WYU?M-R6'.T,5JQZP@G,1X&.AH.J MQK")Y?F%*&&/?G%_9VFS.O/2V3",IPT6R?6[7C;M;'J28%?,>L8Z@_KV\4MF M!Z"B'*N?7TQ9_[7+*?JIV,U@E>?RR;F4Q&I^J+EO6&NQD!=^#6O5N/#]!GYE M%/MYHTJ'VW 1#JZG#PJ7]B\VS4K>3V?V;C+/;_1:I:;;S6_;W))=8EKLVTV MGW_IO/D,MLPTO;0]"6&B)AVUG;VN.@E4K.E)/J@![KO^P&M!=Z=CO[O4+G': MF6LT/>0F'S_W57&S:E,J!X57;,!4_(%:0ZOW8O6K9SE3K)]&ZZW>@R9=D>7D M>)2[3U>NL-ZK+!Y6W+%^M\G/)WF4Y3M,BK4+US8,4%X'?E._Z_^I9HJE24WF MUB80%Y]S17:M/($C,L'M#<='*)[!_4NE^=14KD/MS194=WC_IOFJCN;;8@&$ MF ?UE3+M1N7D=P):?[+0-0<%CPNV>]+;MA0366J&>S[-G.U-9AE.*OG*-79" M%;*6]>T44VRT[GE=!A'<[F8AUOKHM#( M.J->:O[QE/-W.F_'[F3N-_D,J^L.L7$%IVFK:Z=S+1WOJL4M&S^E\?7F.P.% MP.>GT]VZ*B-G9IN[7+!P5JW@6KT/Q#1G&-:ZF4>!Q8?=BZ& MO=$(3!$PUT%X+!W0NAN]<@'7G,FHF ;;U_)-89!O6/-$NUTEZY7D_*#[C+G"5LV>?AN/SD5].8K1E]/=71D\?<1G]>F7Q MC]P2N6%TW31E<6NEPXK(S?JQOY@"P8E)JIWEE%@G@C6224*5]IZJ-O;WP%GF M70I_/B1))W2JJ!@,G MJY29:3CM9#V#U4[K<&9Q@E%^FRR%05J!PV0SNL71K'+[M!="/Z*F\S; ^M M0W]PT;3CHOK#OSL [*KF7B]GE3L%V= M1.XL<<*"F'*$8# +EQ);P&HFT_^:0:ADP#QAA2L @$%0ADQA&D7JP MCR.<""%Y?.<-18A%6=;ZZPD7CG5ME0,R5^NA)I H\_-NX..WHX'_U'D]AF_L M3U)35N3+]25EJ_>C#D=UI_TRNU453UU_6@_6^66KN_MRZ]?.^1P@^+22Z[RY MWPV]N]4Q6(S5D@@22CC/==0NCRT,20=%G(W118LE%62U"%INWKQ9!M6!]OR. MKW(AVS]K8?FV63=W4,6H($$QC.\G[L)V:YI'J8+#K"RK.JQSKFM%0 M]=-JK262$6 NZ> -3H(C;75 7'*.+&4.49$\L#$JJ"RAQ M&J%T SLL6:\ QYHKQ:HGF_K:K6LBJ@QQGG-\JS3!.IITOE(-MO2ZNN+\589^ M;+ I=^3J/ 4200#07VM%0'ELA7-4*S-K9JTBLZ MK5,JM[&Y9KFZ!+,ZYA ZG"H\;+YWRVFAS-M7 M[V?U+9,BY1P#N2PD^%1:QQ]!Y_B=L4YS^4R-!%9._CJJRZG14E8T[-7EZ@4] M=$I,^6=3@MHIXWTFV&O5/#K;?#8J@P7.A;^ ;1;Z)^^J$7<*M19*:[#4"K': M\-F6R5+^.)[VJB9/.FF"GN>F8:]Y=]@%7X#H!E^2I"_^342@%'+D:!YS23L291]AK\<9Y3K)9AV$A .IF(<'0^L:"TS>VFH^G8D;SA-W41Q^SV\ M2F\G^/?P78V!3'YFDP_.^]6;PY!PL%@QY(VWB%,+")&N=CHQS MDQ1\[,E*E^".>*MMP_DW^ -=OO_F,"5#L?(1.4P8X@$S9//0%1<"V'/".T%U M0QR7I=_\2A-Z+@L"J6V'DU;T4HJ0':ZS8(<3F&\4S\+M2:AZ%$.M;-S@;%P5 M[5T29LUDP\FQUO5=BRWHV6S.1LED[&$I##D:Y%$3L[J,1@^!LMSIO)ZOI[_7 MYY5!LH,[<@:1')PR962PP ^8.!,$L4))GSB/4K><\9TYX\W%_NYA,(J[$"GR MRDD0F\PC(ZQ$B<5($Q1#,I*RMKBJZS"'!\T$UJ14"XWO6#;U@ MZYW5XSMO\MYJ0[1HAU/[*1>]K1,]\BE**I@3C@FNC74N\6!55-Q:CG6;YOA. M"N(+6(LN12ZC#HA01L%:A']HEO\$1A^.R1).;6ZIO]I1N!@PFG24 O5E2BG5 M9XMQ!U$:JKB.=M MKI"8RM:6@FH*NLPFAK&426)0--R (#4Y=6\<8MCIX&F,6O'5$ZZNA!SM$0B8 MHP8P?1$CYHI4FX+&7!& $W$WK<'V Q!\DYZEW(TZ+#W2TUJ6%?>X06;>*"\/ MKGCR"_@[)>)Q4TT>5JJW:[LYDZ(M"8&&5(OU R0\>7R!D:H99OJ5 S/W MM#33Y'S#;*GUG(+,?8-2,5>Z?7ZK.Y/R#0JK%6ME#E5MVN.TJHGKFBC9?-S3 ME?[!\34!O-Z-@J+VMA=;K58L8RD^=WV/^ZJ'P;UG#]R>-E9-#;=Z,YO^DLD: MYOK-AHV(75H$O.9V'9I,":RI(M;FI@3&IYO"6:QC7 <2VV,;6'+11L=QE,9S M+B5)-)'D[=0!O*X$<4UDY$8"_P':;94A\[STP@$!YWH"^%\XL%_:I'OM%UZ" M7VA%9%*3@)PF$N:7.L#W][WGZ03-,@Y!(!*H0]T$AHZ1!UI 8@%'.X-BW%#JO69?8 M:0S660J^FN9XUVGIN2*%;V@765]X7W>70EA8L6BUP88:QTVPADK,F' B8,8% MDX<<+)K9C^ZTKHVKG[NY6FY_ -Z-W+G1,C<>"^FHEU$J;C+NB"686V]BM#AQ MOU)BS/NOMCI^_N]Q[W,.THZJW;,PJY8Y@*?\LS_PGWXPK^_W&EX_^8"[!W_U MN@?AM/OBP^6KO3?XP\%Q[^/)+OS^Y>6'TP_LX_MW8O_T U_F]?V3-U_V7[S\ M KQ^\?'D)=_?@^>]^/.TN_<&UOLGW"/T/QY\HA]/CN=X'=:_]XEWWQPR!?_U MBB !;(UX)!)91Q/PNF".:TF$LLNS0XQA#CMLI6.&8XNM, 9^))Q,+"3FMSH1 MA.EYYI?A.&X]RT?1F3N+VIN#OX\N.V_!B!V6!.VRZ;Y(["N[M6Y?R.+"D^>& M$\*\=(H[%HQ.,@FOC4U*:Y&F*NV^*7*BF-[ZXQC&_?@JY3VY2J)OCP?#41X9 M-E?9=9![7%J*;2CVZ)!1[2+V$A$1).*.!Z2Q",@F$*8B" K&Y3(%/@99>8W! M79@GSC//:$4=?F&I"09^\Q5I!DV42>=5]A2;<-',)_ZEJ-_!&%88JE]_NXM^ M:=33?8,S+ X1 48Y[R*OTW^\(_0J\[[]O*WWEEYL_*C5>4_TZ;.'=PT M=HZ&\/\P>4#S_4[]W7^-PM4O&=NAC%W__8T_OOE+MB/YM]X9[Y";OA3L6W_; M+GDSEJSO^./_*A1=4W4N" 5&^W^WV-:L'SIDCZ2P&#W_\H_)WYM^\?S1'273 M7/]X/Z;1,KO5-YS>/U_R&P&>GGPPK(7/5<%XB^BZLPA8G"* M,VRE9%H3SVB\IA::K5,+;:OCW;.PG'(9_6Z'PTO8Q2*'IT4 ['&F68X_G'[I MOSI]1[OTK]-7!V_HQY-/O'ORAG1/_CS^^#Y?^]##U\_OO@@]O<^PN^/+F$]E]W3/_HE)?,BW_/EQ:OW_W/R\<4?J=O# M7_YU\'S4?8LO#KT10/D9JXIS@;BC 5FG/*).NR0)MRFWV B]S?55K)C5+NOC M9,/-DV]W#@A\%[.AU5VM[FIUUWWHKNP^%*VUUZM\?U"-AZW^6E-_?9WJ+\6) M2P9KI%3"B"O-D4V>(IJB)5@D%JAL]5>KOS9(?[7*ZP$XYF?27#(88D!E11H= M#U09SX)AC(J04@K!9,U%#*%+H-NMU_6#M1:9:JU@':4^@L(RQB,> D,V8HQ$ M(CS@$!7W?NN9(MN47YT&O;%:JU59KP@:7)+QF1V' M,N\2I&S(GMQ,++]&XYI-D&A_O4Z2#&!ZBBPE-*!,X!Y,D1$8SDV\*E+TMT'OM!:WMV/ M1HGYWJU+W9,C=NB%M4*"EHN61L1)XL@&$Y'0'@MK(B-.@*H3._+:"0KUT5_8 MJJ!7#'M5WE4"?!.9?%OXNB63>R.3KR_%(7$)"T_ T\!UH MX55^]MX1[W[]1/8O#K%@45(G$$N$(BZD0IJYB!35R3GFP5B.6\^(VB'7CV Y MCOT:80;$QJ,&R'QNU.WN3)BL;BI\>/U%#>&:)6- MAW$EI*$"/N'$N>22B>$:5Z\EQGMKO=U[AP\Y]BHR1Q"6%%PU($:D;60(^VBB MC-PIK;:>F570>-]'?WUC1* EDP>261E.,9LVPEF#C(NY(DA)!'?UB#(<#34B M,8ZS?W_#V*A[T&94.^%]$DR"_>4Y=H%1H&4E=;+)>M]2QO>EC*_=BT-KE89S M!/EAL$$\!3"(29[,8G;8+92QMDIKQST_U+AG]HC'/=\!$.2. MT8D");&!X8EU!]G-@$=R!.D*2$OG[J&;'_[J-]/M_J 9T0OOF5]Y,&R&<72. M!WTP1N"J3IGO,8P3W(S/@X*>VLQ&>34>-C]M *W.,]C569D7='X^''PI;1[] MR^M!\LX**ODR3IX&TN/@9,6@N>1$.QJ$KN'3L"-^M1-&EU53MW*!9]@S2Y$11FD;?)3<;#WC5]33_YZ-TYDGDTZ#W)DA1B=D- =>MM/Y?7 & MO)6/H7\Y&Z+3RS#VH,QBS7\S,EN:*7;C]+$[S1JK,3&7QW!=A?)<.5^Q(/._UY*,RP&@RE*C<.GXYSV'V DFZ.#HGNP,1=F(T-Y]V,CIGY;2B9F.O3"E: MXL3L:FQ8I'0.S@GLQ3*[;W]Z\!F%<(,&^/TX,_'31?<$_KQ[B!557D2%:' 9 M]3=Y<"7R1'JA\Z#JQ.""NPSP6PF5M-/Y(^-:SPBL=U:?8X'WK6+L%'@Z0K>G M_6*;J<&OFT^VM1GKOGF5?S43[T %@8 [F,-SW-E:PU9?%\?QC@B,9FN%A7/7 M7-03Q&I4#X;5.)&0TP*+;K2YNB++RI=GY^-1-:NXV!00O%=O)Q"MSTGWZU&^ M/WR7"R>RA'S.]P_^A-\>'^^?>)"0;VCWZQNZ+"$_'+S[^FJOW]O/Z]A[=YDE M9/?@B'1/GXM7+Y[3_:\@(?<^P'T_@IGRDAYJ[:)1.2<0!$.(>44I-GC#!G*.<&.PF'+%/47DMCR16@QEE''7V5_9E,G;Y/VW5JWYBDOIZR"@WQ,$F:N<"XLYY^),/*)>. M)IRDU_P*B3PA*/.#!2C$4N-2=1HGKC9&%X)*PW$]1ZL97P%NX6E#5-G.2)EU M/A?6R89'!DFOR:SC,IVMC]KH+CO]C)<\/QI@[B%@] \SL/)EB^'XE-$%VR6W M&(X_"S09)2V&XV/#<-S,2UL^;2$$'P$4U+^*?48[WO_[1[YXZ+ MY[E]ENT?A-[^UT^7W9-PLO_^C_[^05[3GU?:9[L';UCW_;N<5[_X4-IG/=FG M+QFL\W*?PGN]?T?@O4^ZITM8>S$9GTN"D%-!(8Z-1%J)E& 6<1+[I0E*))HP./W#%D:+>(B8A&H=TFT'O_&Z*^;,;/NWK?8UNX] M[JJR=LEM[=[/4A/4UNZMLYD_8JSN8[JTY=6V?N\1E%^T]7LM3;3U>RU-M/5[ M+6&T]7L;4[_W",OWVDC^ X0/GU(8G[M@8I[IXR1/1#E+I!/__KRHGNZOUBX MA[&"\U<4,>T%XI919"FE2%%/(J%)>OH(YUZLRX>;)]W:''2KMC:6739.;3WZ MLIA6'K7RJ)5'K3S:T W>/+)MY5$KCS:6739.'K7C+'\*MWY6G>[[-[R[ M]^'BU?MW[-7>7Z?[[__H@303'^@?_?V3[F7W]$V^Y@HPZ*N##U\^[AU=[)_L MBH\'GN^_^$ ^P'/WO_9//KQ_!Q+TY>7'O7S-Q[2_M\L/G7:)N2@0(QPD&N8* MN6@=_N#EQ8JRF0%9W74G&&@%86!DR@/3/MD_=TQ3C>#?\J#UYSP<38:#'NQ MNK*[#PC(^]8?QS#NQU=ILH#+WVO\^X,LCG]B?A.'@A/,:(Q(@3V(.!7 :E%' M9&'3&?944N:>,!#O'$66\<.]:E3/B!LM(/0^(:!;*7:,IFVQ_&S)XG[*N'] MW>=&E=/),L6'/]C>TRJD- M>/ZM;7O\(9=CB5]@?;1[ M\N:BN_=G;_]%]^+5WLLO'T[@'J==_G'OKRL=Q!_H?F\_=Q&?/.?@95R"]W#1 M/7V)/WS=Y=T3>.Z+#_1#CG&^^"-UW\Z5'@4*KJTT%!EK$^*.22B>'Z MY%>K*>Y=4WR=:@JM,#S,1%*?V9>8& M$9XXP-C&X[#_(6H%V4+BJB5C_.E?5G=+2" P.P+*$P-(O5579>4O]V0( M)$O@@(IZ9*6**$J1F^EZZ7/0#)6% SX".6'8&LYRFZ<+8EET0+8SM!HSM1!!U5$I!G4 Z4A!$G8S(>!J1 M$Y89(H-Q7JVL,[9\"0./D+$54^J-Y_/LST5AQ/>@%I5:^@^L>Y;*^G>D,FS% M4<'3*^#IUI^S/?&$MM0RA7P,!!0% HH"3AR%E+260AA/[,JZU,MNV7EVQ?*7 MSC)>P*N UY,'KUM7"PMX71F\3I1!3R6STCIDK N(!R(!O$1")A%A,"/2Y/8N M3-V#E6MI=M?R,;'KI9/77UXB)?SIY9G^/1P< ID<=VP_='+MB<,#>+G53C^. M[C/O=#*,OWNV/]KHA^E(GFO&Z>://;ZK64[DM@H%RCSB C-D$['(".LURS%^ MXBEGG,[19IRCS=O(0#V;S55R4DM.:LE9?!PYBR4G]6FO[[+FI-Y%-ZO[$(S_ M8P&^;-8"3Z"T9*>6G*,EM'L('11S5K(D')?,ZZ0(R+XAR-P2EY);:(=[KK[Q M>CAX,J&;;]CGUZ^ZGSZ^S3UL?WS>R?UL7^UO_=CXOOGEG][G+R_%IYV7W[=? MO_UQQDCR)7S]]/&O_<\OLG:RU=MZ\7;//%R^.MC_\<;.[T]C=W7O+/ M+[;F,UB)"D)8IY'CBB/N541&&X6$=Y3&$#GV;F6=\E5%2G+2DECM2Q9K090G MCBA,FD0HM8X[PP-\"BX0SG",A@9I^"V4<"V(ZQH"1 M9EXA:[04Q')#I !$8:M"+E]\Z5-#E+M0NU+][\FJ7=%6<7_0"YWNP>%P\"UF MEG!GJ0)GY_*91M0&37UD(CE0);@4S# MDH>G&>8TIA?$_12&_P ,?S;_-2FI M(R<)64<\XB8Z9+ES2%/'C;,N1:I6U@E>58K? \._WI9:5G9T RWA#OAT87]W M%3GBI75&6>J]X(%KC355# L6>:Y;*XN\NV3L[T3>C83$:#7P.QN _7G.D D) MH\"B"S&1E*RMV9_&A?TMJ4C[M#T)?PX.#L>C.#SQ(]0.^FJ01D=V&$L:[!TS M=\M22)%1&[GC0F-+E-#:*9NB-HS'(MLN%7.?S90507JMG$6&DH X=Q[IQ#!2 ME"EBC;74T@!?N=^O=N$B"^WJT@ >OK^^X8J$( MMLO$VN,^YT(MIQERWI2*/+,_9@2R$E- MD21!& 609I/+W(_?2XC"D^=^Q61[=9-MOQH-QPT/ZO8[A\/!WO#N2FX7:\4T ME)D+&1+P\<0X]XQI'IDR+#IK,$A*_++U1PKGOCW./1NO++Q,5&F#!,$!\10E MTLQPY!,V4L,B:1=6UN42M@1?=I93S+'/@L$%K4 _IQXD';#&ZFEK9S/J28^X.#.LZ)B,BQ2%%0V! 3;&2. 8,SRQ<[^P@9 M7+&X7G42%Z?X+X>E]6HI)4^(I5^[9EXQ1#P MY^-G:4BI"2M1TSE!I)&V29X M#&OBHB=&FUQ@C^-5ILW262*>6K+$LS72/E?&>?UZ;85Q/@CC/!&3F8W)>AR1 MMIHB[A1&6BJ.A#"<"T^#%7IEG9E5P5AAG(]0C+Z^34&N*?$().GS*H"?_?F? M6%6_=:SWXX-QS^826B$>#H'?V)K!94G<'@Q@7G[47Q0;\766XY?E$K@W3E;[ MQ&MQ[B6Q*N39RAB_%C-,L3,_;R9Y#\)U89(/PR1/Q/!DO)/2YM9A+"#.0!:W MW!,4J,GAP5J87.P!F"059PW6A4D^M)#]M&W5%TO5%Q2KO5O-L!1%>D!]>ND@ M=;G4CG,A\NET(K@?E-R>"[;V5@;'(DI2$,0UQT@GGI P7C*:A L^KJS+54UI ML54MB:YQAT;^ B<%3I8 3A[2^U'@Y,IP\9TM0P)(@W MAF!-I2(93J@N4+>/86"QK:_*1ER^P&7[:.-I3/=Z.9_;D_/.&;>Q&Y8;1?D4WPDK_9WI$] MKE;^/3<7!_#:IR;XW'E;/$N+FEU=W/**K>7'G+I;^[%=O9_<_Q0M-5 =10R: M2V=UU)SA8(G"+%K* ],^67]!5Z,S(WJ<;;ARH_:C;J]WN^Z !WZ-6!(E7>MKD/4R/( M3IHQU1;P2?N>]E#;PV?MFOSM<3+U[=%^''8VO!^.8^C\IVM=MPP+ZI%+ C:')4Q9 MJR+&E^^P^!AAN:%1V])H[X0V2H?%TF&Q=%A\SAWX2H?%I[V^I M'7Q^\19_WMD />.?+YLOPL&GG:W]3U_V\-:+37+:/[>]L\DV7\,XZ0>\^?'S MUZT7[WJ;+_;PYX^;1UOT\_XF?=7=AOMM_OCG5$]%)S$%,D8"@\;.=:1(1R^1 M$2S89(3VCN>RJ5+>1T[G\VZ M02AY05$"H@L 8C<1[A' 9$;@LA)D(<*2GL> M F(N&L2%,\@E'5!*1%/B,1::KJSS5::7K_;V4P.1$GI_;=5J.$BQJH H;:]V M,PS&HZH;8@?N_BV7[DXQEN:*3T!_:!?\[YGU?@5+^^=X.(QUZ-_6H.^;#P43 MKH()L]5BE"(N!1N1%EP!)C"--"@:2!A%*.$I2*-7UNFJX<1LPHPH03Q*T IB@)1='J1!VAD6;QF*QJO'PQT(^0 M%?Y$ IYX>V&6XT_SBRCJCI6GETW Q%&ZW-&I"X7;W MQ.U.= %IHXC<""1U[@F!I4%&:8Z2URQ8[J2W#+B=N ]-X,ESNV(+O]XDGO=S M9S"RO;O51:_C,GY6_N);2F%^0OAW?QZ#LZA8@/ J0#CK'W"*)\&Q0,$Z#D H M5"Y9*1%+4A$O27!1Y\( AC^BFLB/A+\OF^?@X2&DH$B).KI'?TL!DIL"R8E& MI1D!K2GW(,F6$,E9DPX$3#C@LE=(586)*R> MDW)^SJ.6)+/WG.SSK<$H=LQ:YX[SRU]T*]\;5.-AW$Y_#@X.8[^JE_%=K MI M_SFH1M7[?3N,?]@JAK_M<:[75BU+TOG6^PF4[G_-A1*VZ!NV^64/SGW[_?.+ MEV)[YP/[##"Z_>+SUT\?X=C._L&9I//7;X^WOKQEG[YX.._3$<#JU\V=KV)K M)QQL_GC#MPX 1K_X[]NO/Z>M'R_QUI>]XZV=#S ^_V/S:#=RCZ,*N3& BRBO M G),*\2UIM)(P0U.C10$.R2&C2S#,$%B(("=B2HN1=+":<^P$CYR W+1Z93U M]R.8:N3R"G1F%^GL9OQIK9Z?/WI^J$EBT!2)D%9[KA+7< T1S,6DC7:Y+_JY M^UT_A2(0N4;AZ+CSII]S1[O?8B<7+ZPN5P?CU 0\@G(";_IU09 ZG72U,Q@/ M.VY@AW4)@= =1C\:#*O.+[F:P,H?^<#*KW48;Y7I=;,'.:-#9@[DNW!P,Y_\Y_MW>>N:[3:IEM6KU M9/M-\Y;;0YEV\M:(!X>]P7&,[11,/L[LYY8DJW$/B&M47;+(S^,DH?ZX3ID' M0JFR4%-OP#Q+?G!P,.A/)OJ;[?;JNB:9O+I5-:Y79VZ+MTRJ6^5F ;:79SL? MJ<8'^9:_='_MG&L6:9Y\VC(" AS6"F0Y2SB+03N9#. R#\F[@'EC&3EM8G^S M]>H*II$3.6Y6B-@8PM[9BUFN^^/XC*A7<^RM>M:V4WVTVIA,SZO!\'7>=U/+ M"GYFXN#VCC_>#=9S6"N#,$\:<:HY"("6HY"2P51+EDA:65>KVJA5POG9@EP- M/31;^9=N]]>&D6>&W])H-79?8*]F&FO9S@6H Y_LJ',$L#"/%S6I;QP.N[WF M_I0V52/JQ]8P4A>KK&&JVP?9?[43OQ\"DUCMU#5\.K 58#29VE+LPL-_/^'" M]2,!(P\&< )\Z"\A\?]9[_!:DO[3'F8!L*'F=S$G'\4 Q/QJ/ (]Z$V[WY\M M56_NO&1;1[O!!$$A[Y;Q0M0N_-+*[B]>;]=362VM'"TA0_O']2A'ML[/HHC& R($G@!S>4(!U20$8G;+PA"AO0DO7:V:92 MTVJ'+2W:Z9S^'-MK'CJ,>[F*VG".V;Z/?CQLRJQM^%KL)(:QUSV()$=594/R6# P_HC6NL.H\;-)I8'V6!JYNZ4Y%Z>HL+ MY.33">0N^>1BP6O!2;:NH;[ W^XW$'7O=O6Z6 M'*=B]VGQ>J+R9=90*W7#6K<[M-E'E3\!VE?=T+7#XYJ@CB(HA/#[H"[V-+V\ M5K^O1T*/TQ!3(W=GNUGJI[QU&FH^@4<0V7RKB9RS+P[&U2@C+ AAO6CA[W,A ML5%_3D$BYHQB9[0/T7 5B9-64$IY4(H&PM1"*_(I;%P @.[G .A. ^"D9,3? M^9UK@_1$9OL;9F/6B8OHLX/"/;*]L0LXJ!T1#,FH/.(A1N2X42@;93D17')G M02I;(([]:UH(U':')W6[SVB_K7@60 7(QQMVW2H)%Q#G!?:5K"5?C22#2M3[ M)'SBEB?,M9)!9$16F8@,==%& MJZB)#J2SL]DE-Z'(&AM#;+15P&9W/ .+G3=I-7/#VNP*#+JN3S^Y[H2,IU:P M7@W#< L[ I' C6L*'1P!Y;:FM4%5Y>1=D$TNH>(NI&AEHR!&2TZ4YB"S&FFP M(CAXK6+"@5^>HGWX7OW6TMX@_3/(EL8WN:XER#/5SC[\RI;XT0#>9&\O#O)A+HG!9\PDGAZRK>%KC?,MU= M6[4]GXUNN,&WN-GM=P_&!U/R+;SUR^;1]MM=%I-46CH$ B\E7@&O%49)"TL MI09 -(8#I5Y$JO/,-7]3*[*]NGW'+)]=Z[R?0^V)D3&K-5-M9B_VXQ#(^[BS M;T$0M9T#^SVO7&TWS ^X*%[A6L0X8W8!N=K_%L;#XVB'MP;P+[.5L^D(#B,> MA&=':&]_;&[DIJ1,!>60I(HB+I)"QB:"O(\T\< -RSFB)W0V"3GHY+5HE-QO M $"=[*V\%QHX&H N'ONW9GNK?_P#KP#;HB$$\OPH 6\=[3)&DO/.(Z-I1)S* M@$R("5&#K@"LS3RKC8LM3AE]YZU4/66;Q[M6D64UU$B(6T.A+(8 M66^GFJ#O: M!_4OI5@;7K\U:]1&Z30L+&N.V:\/O]IQ+.1 )L[K;:\.,3" MP-&?!H*>"AR5U!D3([;.!1ZM=@#:W%K0NKWW(8L03]M?\>[$O=2H51^:P*\< M4?;K4_5? *<%"!VTK/9$:\POW7*;&0WR1&$ 3E;'5EZH.6C0=S7G1AG+X?E M@2")>NE%\"PYC8OFL!1A\3LO\?;&;DP"$\\MBH0;Q)7RR'I#$ M"868UU1BP M_02FSV@1A_5,-C ]R#W#]KO#:2^SLX%1^=M,95,@SUX*"^26;PZT9OM]@*=A M98?'DYM,SLPVD-CW]1JW.LNP(K@N+1!.X.CD%2#*ILH,X4> MEX8>W^ZF7.O*18:XE IQ1CQR6 I$,&@*EA 6_%F07G"9@YL:!)RYFYL%.CQ"1\!D[Z8_NY2*%U$L3WZ,=9/ZW:M@--O,+T MZQE1]>]:5,UG'<7%=\ASUR0K_5WOFCS3\%4CSC:18O6.!(5VOTT*\#Y651KW M.K!]NZ!OUYL'-H>/PY&%;>T'P\/!L!8] &=L3?DP,W!#$'VJO/&K0P"$.N8M MDW]^Z6ED6;O!9[?E/JS&7O-P>W@(=%9G,\QO^8_[L?&KSV:@[ U@YFI&$"*, MLG;^N.R<'+CZ%MFW.?,*)^[*T?%ADTW1!,GE\#H_V.MWI_:-F11&/P-:V3@! M?\:$"QSUW7X%F[!W4#L: MYR [$J92C,YA13EQP3H5K8K:)YPL$VIQP:/34<*U@ ?O<$K .W&D7@3A[AP( M;V*$!^G-R>"K9QNJOO7BY7=0-FPB@5&GD ].YU!UBYP,!A%'O/!:D! 5*!M' M@[/QP4WVS@PE5-<1\00AP7HL+! +)XD9H)S@"!J5,$?&6@%#PUMO=Z+&E M6D0D:0Y5\I@BFZ1%,H"0;@(6/H] GSK%G[+ ^XD]HIPUD2]UA]G?-R_XS)#4OZ:^>UB=ROX.3..F1"7^IGY4>T-KOK>(/K&T5V_]$_>MYZ3>27S]MZP M3K3/RMMMO.."5SMJ5+;J9R]YWF3,O=G")-XZC2;L,\M_DL,ROYPY=G3V!C.7-/G93L7>X.C1;NSO2M\-^Y=+ ,O#K^.6B>K"8W8\8B)Y0)' MEX03*DCB+P5)=RT'SRBW]>>3T-?_Y!F8B,E-*MTF3$/W,'LWGZ^HO+.)-_=V MN?*$@SR,"#,)<6$HTMZ#Y(Q=,-1P9P*@6'^!I-SN-10XW]TW"IB68\1>\9 M&T.-[_/\[IL%7C/.B6-YF+GKXFGF-YMK5XVK;(&(F5E\B[GF2![4["6Q_P-V M'7#@P5$.7JA&V4ZQU_4=&[[9UD!9:_ZN6Z?.V<,X'G5]U3GL'M:&"KC&IERI MI>:GT>_W86WVCH%AP#X='.;K@:W5M\AIO4UZ.L.K)U.8W_O CB:9YDV:9CN- M]5VGL[> TT\9["SN78T?:JDP2.(&A'//36*:469 QV,ZEYJG^@)SP&VPNI>3 MUY_A>:_AW6:@X!T#Y#0)9=.!^F1,D& A(X],K!PR,-R>1R(<9+\ M)#=J7MIKZ@[5=JR<,=R:JH#DO EK^^D(>% M)69B"WC8ZB3]MU??I2FV,[GT,*L.(I>2H# MY\Y;00G'E$1F*!%*G-873I%7,6'=/6&]_0X Z7"T#% 212QR'0WOD*;)( 4J MGI#)"I&3AQ>:L"XT/LRSL*DSK"G6=RY'O$9DMTF":6_9K/[8QSX]&&M3G2(-ZL32H'T0:]#E% MVV4;6@[8GTB$$]%O5J!;[?1A>GJPO/VJN;+7LV[0Q,I7S5&@PEA7 ZW+OIQ( M>U/"F(J<)SP#+IW1=$P9( MW$XOVQ#0]\TRG9-^T>L-?/W7=GHW!<$FRZ+NE?%<.V-LOWC#MP$4N/#8PS8- M' ,H!*YAKPJ)A%>2PTHEX_7I[A9/R&;^_F=1KMVJ551.N,RX;T%O&<6F+T ^ MJZD7F3M5V:8Z)?R:>MG: .&Z'F8.)0""/ )UJ[X9Z$C RJI??SN7FYR=SKJY MSW0^F\9!M1YT6,7?)G_\'KK58<\>_];MUV]=7W2Z^1#<]"0'=0VW>:AMKZKV M >WQM>;8J79@S4'&U@25YQ^_\.*+#[(UR=DU+\9KY**#@EWWV@<;,M.\#/ED MR.KR%R]HWC79( !5\8Y/O8.>VXO9YI/NP'UNAU9SMS/95BZXA[E4]S"7.W4" M[V93;N)E7?FZ+LW.\.HE6N#>S:9Y .HN1'03(GK?_3ZI6!*7@X0*-W\JW/R. M9_+"C7BU7MC+ODNS!GV=MN8WH<9;F,%"$7=($<3<-T6417_P17^4;&")$&NI MQC)9R0*?R\$L'[?D^5_>Q_CS-N794OCHMNV[\P)!3J_JW<_?M3;(5^%T7KDG24G%B!"<>YQ^Y\.OO?@FOWMCZ]Z6Z__Z6X>_//U\\Z[WN;.J^[G M+[VOG[YXMOUB[VCKQ5_=K2]_?9U< \\:?Z8?Y#:\PZ>/'_#GCV^./W]\!_?X M\'WSXU\',-;NU@_/MU]LX,T#&//!N[39Q=__L_-RM/D>YP:+3BC.#=*:.,2I M(UJMUCG7F$J *O M]P*O; Y>75*6,H#7%(5 7%B,C-$1D6"2][DUFA KZ\H48][#P.LC]ZNE^M^3 M]*N]C[T>C&]UTGJ@]J_9<-#M=^M:.]UO\=SUI;<]JQ=ME)_,[&.&&&FX%D(I MD?NX"ZH=URPY'K0*2F')+^$KFJGWF&L]AL&H/5[0Y_;1YWC&C22]LXQC4.

6#D$O;[PO[NE?W-F_95],%%SI$CT8 $: /2(!(B;#APP: Y2WAEG:U2A+6"Z0 $3BCAF&%EN 2BD5#I08D"0KH%"GBVF5("B6*)OD.$A MUY1X!*C6K.+LSYW!R/:6TS/<'FR?QN!X&(QS-9_B.KZ1T^O2\_KX$=W8@)7" MF'*#.1-:&ZUP%&CEYBA6):<#]]Q*X@P3GBJK MM*6*XD"HAS+Y"F3*&$)8Z1>Z

Z=/@^[QL5D4;%3$0Q2H:X2!99JP1R7EN7%]&:7%AA%8M'EL+S M?/#]OCVK_Z[;8$RZ;/Q[KE%-\[EM_E-OS[D^'(>#JIN__&T8>W6*RTGGC'_] MWO84X;3QF:XLOM(Z6.?Q*/[>KBR>O<6"KBIS%1;+2] MB-PPVJ_()GC)WVSOR!Y7*_^>[X "KWUJ@L^=M\6SM/X_;OCO]44CNGHCFT7W M.D4W#2^7U!E0%;%U+O!HM>.Y.YYUQGKO@^Q&L%S1S'437 V M^N'4-Q\ .ZL-8)C?NJ/CG;QSGG6OI+>[40D.:ZRJ &EXTYIVU3:-I6V3W[=?_/%U>^?= MET\_O/C\8O/[YL%?W:T7<)^/;W]\VMGOG@X[@7M__P3OL_GE)=]\_59LO=[Z MLO6C]W7SQ\OC3P?X/E;^]NO_YIO )42XR2IA%3.W>,:)Z2=-,A)3I4P MU@8N5M:%NH_"5:5F;"G)OE1C6>9PT0*MSQQ:J4B*22>LYIQ3HZP607EMDT@& MGBE*FZP'@=:3-,.$:51.,V0IE8BKD)"AB2//M;<61VH,!6C5CRR6<]D1I$!K M@=8"K0_.&!XSM"H;!3%:!.UR@C\ALF!OP=Z"O05["_8N"?;Z('&TV*>L MNQI*'+5.2&>Q2B[YA$L.X[)A+YO#WI 4L380I(+3B%L/^B]A ,#>2:NLE"[2 M&GM9,2D_^13%TK'LKE;[W?L/59WN\^[]QAGG[W3^2M'QVP$E"4J@]@X;9A+G M.CAKK4R.8@]?,F.*&_,!D&>V 5G05H XH!'#N:2;K%M?$HN(T"%AQX7C:F5= MDE)3_!Y5NM)\8ED"[ H.W X.<*R-U0D$V1"XHM*!'D(M!U$W:1W)9:I^%ARX M?1PX\;FY(()C02,3X0=7'' @>$@":7@)PXP(1.'#E%.&+. M&:9T#E8-V4A%B\)0@*( 10&*ZP*%YB%9(GWB@G)FN"8IR@2*@R782D\OX*^VS;3D;+1)R1BD@2BBOB_A%EKB4:TXGZ M1!E2RE#$#4W(:1>0PX9003W\PBOKU"Q?Z-FR\Y<2758TBX(#$QR0PC.FB-$. M\QBY!00( F.1*#<@JQ97Q(/@P(DK A8C>:D,4M(1Q%TRR)A 4.2>NDBL%4FN MK+,E#$%>=G97<*#@0,&!%@>8HL+'Y'34CCO.C.'&,^I#,%P$&R_ABB@XX.M%DEDK>(^DJX+#A0<*#CP)'% 6QMQTM(*)K@P&#X;R@-P M&D89TXN;N);$AP>$B'E'A.;>!:<(8@2P@EMKD:;,(<.PTZ#0&45E79U#%* H M0%& H@#%=8'"&\N-DHJ"5N"MUA$S3W%47$F94BQEG)8-*.:]%)3J9*.F2#B; MHUB=08Y(C8(70?) &!,X P63M !%\5,\4%:$7%/B$0!@L^"S/W=R;_GEK,#8 M'FR?QN!X&(QS3_A2HO%&]>,N/:^/'_R-#5@IC"D'\&=":Z,53HXQBIER4E[" M:U3 _Q[!?[8A$%&2)I*JLTI8JAB]3 :U ^[U"^XF/ MD+FH@Y4616,)XC$19'S$@.\T1FP33ZXV_AI]']$B!=H+M!=H+]!>H'U)H-UX M+*2C7D:IN &D")9@;KV)T>+$BV]WZ:!]WK?KK':<1X^<]QCQ$ )RR0':L^25 MB)$QQU;6^2K!!=X+O"_%Q"S56 J\%WA_PO NK)+"VF2I8!PKK"53B3&)@W9) MB\LD!Q9XOU=X/U6E4"23+ Z(19_KB1", .X=_,A!%IX1ZG"&=RP>64/AYP/O M2^S/__?(PI3#[]#]MCZAGZWQ '-?\>#3J'XZ'?!];9.9>W M5YF[5F?ZY@E/M.+:)\QI5-H3YG,G-B5\Q%/M39ZCO;W9>G5C_KXQA/?9BP>P M/G\IU?O'K3_QMF#P=5-04'_#C!H1?_W[OC MSQ_#H:-<;K]^>[SUY2W[],7#>9^.MEZ\^KJY\U5L[82#S1]O^-8! ,,7_WW[ M]>>T]>,EWOJR=[RU ^/?^2 V]W:C9H$Z[U */ *K9PH9(@72'LO 75(R :N7 M>!4(]@RO[S3DT1DD()"#@T'>#@/_-9.6[<")*!X<]@;',79LE<^8+E]>_@[0 M]K>NC]5:I[.S'SNQ&L'Z9QI-MCOL?+.]<B6"0N0; ^?*]NAUICF)#K*YB)?_(;3TE6/FN2A?\W=K7!((TDX+1!"\25 MYLAJFA G3(!PR4E@;F4=K[%S9!/@M[V:7BI ^IJ\_N@!^T;O_?Z@%RNT"7+% M8,HF#P&5\GD'@Q![G:/N:+^^) UZO<%1/F"K:GS0K![<$F@3J']"R\VI<^0\ MMRV:[=(\J?JM\TOWU\ZW00]HIM<='7>&^0Y Z><2.M"AB\,S=< 5B-S2BH0U M%UXXZK%S. I/2;!"_X36+YD^=PF2GA+OQLD,O?Q^&#T0^#_3MWP'+SFE;D2? M-WE_W]K8-18+*X-#7',0OHU62%,0OKV+BAAOHS=J95V0M;-!,?]:!1("&AIV MJZ\H#8' ND 8P*%'#2T!^3TA6GH';_D*7O)-^XZ%DF8HZ7CS[6[ U&IB DK) M86"/AB,',(B42(Y9(D(D+#-*?I:0ZGZ?0$M 3/=*,:=E0Q" ?8;;(U#[O8)TV(<4CS!'#+I$1:18JL8DH(2E7@>F6]/S@K M)\9V:CNAG=O.<3?VPEHM^+5 ^PVV,(B2H-5/2*[5"6^!P$Y35!@/CZ,=WAHY MU3_^R:C?WVLD-_*\R85L;^QRXKA*@%Q$1IP;Y$GD0+= C$K.F(DB1;FR3D]; M #IY9:I.&@X.:O$IM,C5Z@!9 +L:2PH@+E(GA 6>QT40H >8X)/WP01KO+D, M2UI )^[G=.(NHI-W65^O@%H\'+5[A=5,:0>$(*R",9C%[%;4P&H4!E:C0!RR MF!H=J0TT"T%G5=)_U7RDELL3B 6=03_6!%4#6B:G83RPW7X^X6I4E(0,QJ7@ ME%,Y'LUJ0YB*-@5#C#:7 K9"1?='13\ L(1R1H*P@Q)+N?X=#P@6BR!+DY(@ M'3&EPD^HZ !H8+]W#()T33T 'H.,7D!1:YV/F9K\8*_?_1%#H\NA>K'F;1T9 M_/I5/K=7FS= /\RWFE,$@;]=Q9YA*7/".2.B8MS28$-&11D5!B36@=YF_,0& M*+H^#WPQ.KYLWNZQ.UQNB^PPR-W88,ZEX<2DLUBKVTQR*4&62($10(H[$&!FJ6 RU ; MD>(TQ&1\8AK$XK-*UCGFJ='^8%QEM,HVTLPH1OM9D\_?5-WO#4.J.B!# RNI M;?P,K]9V_K4GZ,V@M1M\HS8QYY=MIFCRQJNP::[ @5<[_3C*=YJJ(S#%*79' MXV&L5FOS\I6,RD2HF!+7V&KN@W+2$\AGM(J-7%#5^9ZSQ_\<5*.MP>A3A'%/YNI]GJK6YOQL;?L#]G(R1$EN$]+:2,13 !77P=:.W-E$G HN%RWA:V?#VCH3L_(,S(_; MA>DL-OBN7HG<:$S.T,2,]HY+38W'P'= _!0$N(]AA=P>%[GAS:-=E:*+(*4B M[T!)CP$%G"]W9P@<7DMOY/H:KD5R,FFIM@Q?&_;;W<5#S;YD)!4U&??&4$: MTXBBA17602?0OU?6Z=K9VN 7DMZ[]Q^J6E9Y]W[CBM1F?>0&U'W0]B67TNOH MA1/:I%P=Q$13J.UQ4AO9.MJ-T8>0:P>#PDH0]Z"I:(!3%"E+0CNNE*4KZV3M M;#S9A=26VX"NUN1V%4(SC##G/7/1>1XEU4Y)S# V) 08IBV$]C@)36QN[ 9& ME*96H^29 (V,!5 (E$:>1J,#!XZG:T*[(EO+%> [C68!9_CQ< BZU-3-7TWB M5'KQ6^SE#];O=^'O;+);Z[S_F66HU?3@+ULO:N<(AM)Q<^8ET ('X[TF^* V M:,)3@$SY*:TOOU4F]FY_;!LML_[ZHI"WFDRP8M%J@PTUCF>[.(4MP8#_!LRX M8')7DI6+@^O$=2+REDK[5(NU3]B"L4/PVH5NJ6ME-)VR!V_Z%:^-ZA 1=V!A_W1@W,>=F?3S>G.]C^V#EYUM^A;V)F?>YL_WK+- M@[?\T\X&^;SS^5GS+AWKNAR;I'[P;WE*NOXRV^;E M]SCTW:JV;;?@="D#U061O@_.(6T$8N8.CRW6U4YK/%J M<;@WS**\8AQNW@9OZF&^& ^G?NY:'JEF]?O)NH=E";.]?X;UQ>]2&5B05B*F M-7 H)0@R5&<;L4D"1VT]$2OKC*["RIT513*E7(T6;IAR4VCASL K^X,$A<57 MR)++4S/CR) M48WM-%GQ.ICUY\Y&6,UZ*6^7W= K1]M4/PF6GE#7 M-+K_8_OB&\U[3X[_G=_ZV5+@YH[_L8MET-)H$)-XH(ASX9'U,IM\-)/6*P=$ MN;(NU_#9H.F?J]?GT,L-65*AEX>BE[VCW8@=9SGJAK@<.6$U1H8S"D3C5$H! M.^H2L*PUMH!?'<9AP[-.LZPZ=BN[X+RM]H$7#7R,H;IJ[,--:T=#>"9F,"URA8YX%*,J8)SA&-F-)HI#-8_<1]<57; MW4U3B\OJW\[JO_V^&XW7U%F,))4@X@(I(&,T0YY:$D@"$3?8[$$XWUH,8\'(VI6ZOVP8"_VFKT.WGY-5JG$."X3Y'^UV_/Z-'U\$R M@UYMPVU/OYHZ96%#@&@$%,X(CUX8X:1B+@A*A=M-?P=$G*H9]_,52[YXO/W"L^T=>*\?'[YGIQ+WGC,CD4DF(IZ2 M1#8"*PI4\1"H3M0# V*KF.M5I2],7QV,A_,IK+4B-I!T6(AF@$ZPX M$U%CZ:3W/N0^FH;6?LUS2.A<.JE%U)/G%9K(-'&\O;&KF4C).8:TE*#HT!"1 M5B:!PNT5"]I$E8/QB%SC"^AA*KFN=3;JZ/$0P]C7<<"]N&=[G13CE>75&[*2 M*P5OMDI/U5))YA^V[V-V)%;+$K+YT%3R8^OMKF(4!Q-Q6WD\4H6,C0JT8Q:% MQCZFW')$G8W9[)Q$9T[R4TXC^6K-3+*:,]5PC@#Q[I5FKB+ESG"5/T&X[0;0 MA?/XWD4?02X+VPOAY_E)O/-$M/TVLQJLN6$HI Z,N48.<$=2AP6R5@:DLAQ MOV9!HNY$ +Y02"X,Z"K5*'W,;O\>!PU.RG8=SK5J.&_N8$ MO+S1FA,GU2-&)T19==QQEA)KX0^VWF $TN6W0>];G0;4/X8[.1#+@7&WCX5) M@?/>QV8?\E_LK[_07^MGS(BC&W[4A):\BWOC7C.D%^VE9T^]C!O^QFM[A:(U ML_>]\HT.!U4WC_JW.A0"F,#O1]TPVH>UAJ5LEY73IB'.RN(KK0/Y>SR*O[&0J#E6GUG[FYQ7B*_@TOF)_>%(O:R\B-XSV*ZK3V7ZS MO2-[7*W\>SZ> N;JU*J<.]F7KX;T-,(VR)V';?P):D-W5(M=&_WP9[WI]V+? M V-8OMB-K3\GL/E']_.73V3KX\L?<"W]O/,6YPBJK1=;7P'B?FR^>,FV7[_[ M"I#'3\/FYNN_#K:^?""?=K9@G)][6R_>1)VZ).!V[022AE'G&6=*P M6YQ6C"5&"&A1DAI/SL1NG*Q)S<+G5N4:L1P_?_[\>+4EU!KGK16*8^HUE]'; M[&J!?XD^^=B/[<-:B 2H_4\$_?G)!GYL@Z2_'VWXW[$= GL&8@-!O\V?RRFC M[V(X&@R _KJCX]7.GS!](+KTNW:U<[2?=8*CV!EX/SX$\>40M(7O=31A[[BM M\G>NQ>I_T^ATCCO546 II4N$8YX,$=%8C@U\ZY)TYX2TTJLD!@(,;:=WT?9> M5B,8YM_# :SRZ'AIK _WS=N GXG<48R^1-=$C0CW7B8G$E0%- M4JVR!?73FG6N,O7$;%NHD]- 2LW&ILRV>M8-8!\-AL<=V 4^E_.YP([9R*/' MMT(95ZS#,C%;MC0!3/;]V'T!^7IG\+K>K@T;>,:D\I7ODH0EC2R!OD@PXCZ! M:,=( J))SL0@A25 *FDP'I[5%]VXV\N%2:O:)#Y)1H-EMA6#>APA\UPXJ"1'+5^WSS"2FN MWI3JI((K J5 =PQ8H=5)>.>+9+G*2 A@)A2@10'0X@ M]!M0JE+ GAABC0PKZTRMFFM3'8AHUZ2V/UKFVJ%GR VH^(8D!UQ=T9 P%K#! M"!4.M!^EE)4ND'C/[C:O&+4J,6>DX2"6@RCNPFV$_&>(Z4D KQR#6R)-?O(C$XGP1.60^BY@8,GL"6>6^!VNW1E;;: MY)I3>ZR)7*\%Z<,Z&G1*ERU93E/N%M)KE?L&W)!:4ZY'QS6-2CDN)7$QX@ B MB;+$NYATH=;;I];MG0]\EQ.0@I,7*-J8 Q=%0HYBBTR"Q< ,UB+ET#6Y*A96 M/9\GU-H9-$MCV6&U"=P\&PWE/UG'>K$QM?WB33@I7-Y?NVZ@ \]#NP'>K4PH-Q M;]0][ &SJ5^DZF;[#IQ?-_:PXJUL6>E-O-D"]";_@FO M."=0L]]YF=\7>$=^?AV?SH4;G'Z)U3/W M:^:Q_7!JY-,QGAG\="6;4!AX7ON^!^@\FM3%VDD65J:>^?[9R9^I2[_027L5$_:"2L_GV*S_ M$ZLJQJFGJB:.=[$?CVQO!V;AN>'(EY4ZR\ MLY8YO[*>,@'599K/%&_.(90-:3UE7I_AR@W'Y@ -]YD$4L,' X M;J?L=E9)Z23K<]N+'#4TV@>8/)K_B?%I3,&0B MZUD@X!%<.H)AU!QYX'K=O<9M7==1G^SHZ5!.TBV:W5VU16R_=6%N1G-->&;N M%:W/C+J&*WATNVGS5C_(F[L!F\;9WFU"J4\*H_C]G)TWK94[S/SI@G%?.;J6 M&L(UR\6JI.2@>QHJX!L@7)=<,C$TP=6$GE*AKA(@N9&'^VXZVNWI8)PF)Z*J3' MD2/I(G!^S@PR.$>S:I+]EWK)NQST#A!QWT[!GFB+JV4(:4ILM2O^S[6C,S97NW[ MK/9!OP&&M^%]9CV+"W-GYG4A>\H1J_>7K+I H#G?"7\N:4_?^'3QYF>G+'_Y MQ+?V=@,SA,GD<[:0SD*.!F59<:0YCS*X:$PF]:NLLO2P>6*D)L"(C )^Y106 M-FH9K$GV5%+J:30JJWP7JYQXDEH+C$),F:'1B$R0#%D-<*4E5D*XA=UJSGQQ MD 6Q)RO.GM9[YP3&6BMJS &3I.>:1];]-X[K?2"/ MT-G^UTEW!GL TSJZJ@@).]>K) W'E' 6A,,IP-X5WFAFL4RW('6\ X$8U", MF3]MM;_1#V_JPH*US+PUZ+?U!)^Q" +OL;$KC"6$"8ZB%+E2$K/(11U0PL[P M2)@!OGHEOIP\J ;_I3DLJ4)!>5,JC[=*"Z-FNJ)Z7)&ZZ=?: A .9R:6J=IYT#?,R' V=YTV%C>:\N1K6,^LXNA=]P^<<:8;"=?G9BI M%T0R70DGK28IQSM[[GCDQE"E703^"4R;:EXW'2(*=F MY<(?5%^;K;;%-VNB M.A%QJS<-0UV>PBOW'\+Y)K?6DP"0L2[>GC#(ML%EI'019?.LMD$(KL3BSI[3 MS-,9'X.+/D<2QY1:VV!=6ZZ5[(XGHN )^77GW45J=>IB:L^=BY);:-+'-G#G M!'82 R08#QI4\-&H /(6]Z 7OSDAH:N:]%N.5--.MN1OIYS^DR?@@9LR/FSV MU9<]LGFT:UA0/%F,0"+"(&/Y@$PT"5%F;#*6PN:F*^LGK.R,@;_U9MKJ5(Q! M7J^:#B8^X'DJR6$*.]G)><(:9Y@BW,UZGX7WIBE/AN73#"R,:]^> ]RP3?F7 MEDFVCJQYG_/4@55[-R<>Z$RK9QGW181*HA"2)YTU>QZB<8IH!S*E58I8+W5+ MJ/PZOJ="J.<1:C8N6Y 0?0YAT!&4 9\U=Y(4$LH+8H("58U?2*B7PV!T"0SN M]IN5S?@XBGZ_#U+'WBP>UQ1[,W E#"? 4Q%PS@?F.7>(>.HTQLXG*5(+KGP" MKJ>#: JXW@:X^N_ (K'BRE(L42[;DTOW!N2("XB8.I1;669]!M<%I3+GP/4$ M3V>]ZH79//0RGV$VN1X,8Z"&9C-AD*"?,I)1,2(58[+*), O=A54;,(OS@+B MN9%0%]:+*.48KE2.09]?CF&9*BLL3#3_:>+XJ41S;FTD*H'<9BFG+NA@A([" M8XL]8TX\]43S)J2KKF]5[[7&33@#V&>2^^^P$D0]F#R6'>MZS[;DP^;.RZ-< M]5Q:)1. )1*8Y>@ @Y$V@B'II.0N".F9/EVWX0E9C!K*G+B6?4VA=1VPC!&# M7F]P5'5^J?T634&QZM??+M,PIWWS4::PZ:MG4^80U8Z3PRK^-OGC]]"M#GOV M^+=NOQY@?='OWW*"-@AX+8^'FY[PM#7<\K71$/X/DP>TQ]>:8_\>A;,'&5TS MG)Q__,*+\=H%5X*@I?DUK[WPJ82M2<[N9LB"7??:!QOR(YSENQRRON3%_ZZW M2K-=8./E'5R76+P:6YH1NGHQC4YOTD9J^_TPA\[V]U ^Y3<"G&#RQ;#A/ UO MF(SY,J/YKU3_N]OGF^GS)^=G3D8/OT^O;Z72_-5EAMC*I3<9Y"QT_*2VU*5! M8AY;+KGRN3)>[N^]L&_0%!'.7]()CP>Y)OYD]:]P:B&4)224]^>UE[H',OD) MF[O.>MT])[SDVO%[6+O6)?+SA7J8G7>SE;SJSFL%UEKM/!QU:C=Z)T_IX]N3 M61>\^U6]Z825];Z]]2:F[.*GMZJWMHN?RY0MU5@F2_?3%2S[XF;<[@[$P/_R M/L9;YHQ+)/B]F@MBJ.V OW6NQ6ON8)[N[OEW*+&4F7G,,U/?ZV$YYWUL^Z4: MRZ7A\;DQYZ4:RWVM4MEE][9^=R$NW4"1)&M4/()5W3C(E09^V$EQG'J<:)#0 MN&J+'E3+IH(_T((NW=+]]^F%N=V)N4AXF%^?QD.W1#-SE71B&[ "]8YR@SD3 M6ANM<'*,4'G=3AFIP-39F/_WN4WWDX?JEAG$L_NM:7I$'?-D)7] M3P??>]M?/AW#>=\_?WE+/G_Y2K=VWGW9?OW7_M:/-V3K]:O>]L>W;.O@33Z& M)]? L\:?Z0>Y]>6OWM:+5P=;+_XYV-Z!Y[[>Y)\.7K+-+Q_PIX\?Q.<7GL*[ MP;%W:?,8'_]GY^5H\ST^VHV*^)0(14(QAKC/56=9<@C49^U),E':L++.Q3F5 M+Y=ETRP?/UDNM\D23*JLTI8J MAEU;8H-?T$6U8.(]8"*>8J*B*D7!.*(VU9UX"3*!>20(M50FF:(6*^OB;(IB MP<1[Q,3+3$0!Q0**!127$!1O6%VL@.(]@2)M09'6Q>>M9%1[X1!)P2'.I%55)8FRP%_0,KK"53B3&) M@W9)"WFJ'F/!Q0?"13Z'BY)Y(8UUN9X-1UPY@7+6*Z)$4QFYBR;@E76""S#> M C N62#7(_%,OJD+QU2C7!>N+:MU4C]C6>(KSCR?WO:RWL!H\)AAY4[]8,A0#Q8AS0I!U02!##-=> MV<1B[CI=H. AH:!XH H6/&HLN%,O3,&"&V'!O.=%RKQ",J'H76? \^ M?*_F("47K"TX3_C;<"!6B8(0X1X"2H%<!39N 3;F?1S16JJ]]TB;W-DN M80%_.8FD=2%[';#7%&"#+%]IFB<%&TN6;O$((&;[, [MJ#MMWYH=(,L285!\ MY\OKY;AT%]PI@16DN1;2=&>\(,H*&AE@"Z@B'''X@ SU M' /7/<,,$\H,PJ M9K1XTTMP55%""D \F%.C ,2] <1,,; 8B8L\H.@Y1=P9A714#E$/&@@G5)IH M,D#&B4*&I$ 8G'#!*WX+$H('%O(#'OT<"@ 4;+(J@2SB$NO42. M$(Z%BG_Q,&RELO>55O@QW8!04-KX6&QW->%Z6M-@')B+-O7_GL=2&( MA6BB#=$1SE;6R?+EGCQ"&"QQ7\],5RH0<# MJ9*H#%'"]&LK&V\P9$3P2.9F&T3*A+DHFL*2NU.>MG_^_=@U#I-N MWP\.XK)$,!3?_/*Z'"Z%)"U9O:FIJJ#(%5!D>[;=!NAZACH;$%,X(FXE1CH% MC*C%G'MIK,EYZ?>'($_>(5^BMIZ9CO&TD>&7A^RZ44#@)B!PXG (EDM##(" M2QY ("9D !40)U'DM1*,Y,#=!?RV\O^1U%.9?F/\#.!H*\[\!\Y]W,GC) MLU.!("N,0IQ;ATS(Q:J4,Q8+$KR+*^OB;)61PO^+[%_8?V'_]]]6H[#_F[!_ M?BIQSQ%"0D!2:HLXPP9I)CGRW!O/',.>FUP%O?#_Y?,>/&U?],Y@9'LW+2%U MAQD+][9RYY93PXN*$R[7(O[W$E:AFYVV)877)2V\55SWU\+]6U@V^CU;Q!4U+ M)LURC:7 :8'3I873^ZSW5I#VFD@[[RPD4@>M/4?!8YR=A0JY7,;',JP<-XIB M+NLR;^8^JD47O"W:ZU*-IRX79'J9NVA,?R@PY,2"G,,@Q M()?JSU8FK$Q8F;"EG;":K_Y[9.':24U*^#$9;3V2;C_$/EREX;(#.]SK]NN' MFA8VEK( )_UY FJ>TEG$["XN>5AT0,>N/5>>H.]KOY./P9>H,X%WA M8.PF@'J=95[BV=H>[^A*X9I7[NE]O(10&MGVQH?P%W\O&$M4!T%EE*Z M1#CFR1 1C>78P+?N_[/WIDUQ)$F[Z%\IX[[GW&XS@HE]Z3Z&F5I2ZZCO "V) M'IGT118KE%0+4XL$^O77(S-K91$@**H@YGU' U169F2$AS_N'NZ/)^D^O9X= M7\U%T&! _K]6'F5*);'1P[0O;>P]CH!^/][__ M"=>]87N?_]/>>_7R^\?NR^\'A\>=C]W][H?N7Y^7@VL'A_[TP_?_?/Z8 VKO MW\!S_!F,[=N'0[C^<$\8C4+OUOO[Y+9?[?:%*Q*#]\;M4#H;T<3M H?NA#.W>8@ MHC?NNCC8NKW*G!U!G,N?NU)-OFB$ZBW(U-]QD,V[Z6D$HD5C_EACSO>)9@H3 MA:U$.FB'N% 1&>\L"D&'$!0.4>JM7;E36A;<=.?\K_-H\E/AL.I>;O"OW<<: M;7ENA\>M$PNV)%A3+=O-FWR8.>8ZXQ #_- :'<=6%U3"&,QT>,D<*ZG-]+X# MR:@B-,.E4$EEO(^.^V,86AC^NM&1$REV!&>;%SG9P"'+$NRYG]&8NS:V[BV\ M:"( Z?@#2;CPTB++JPVZW%"6 M5Q1U68649R?@CMS!IS)E:S66'S"LE'UQZWU!3(GHW]$!B<_N1*I\@#3H=\\= MQJY;+']E:WJ##;->:WNGN<1W?>2Q:?&[%=#Y+8;Q_K9GV6D?/H[4X>Y^9_^[ M%_N?/WS_^'[OV]Z+-Z=[GU_S_1>OOWU\_X'O?WZ)]UX\[-O^R]>GNU]/L)[G__H?/Q\1/<.WWR#YY\>O/BX&*NCD1 M*$62 M*(^XL1HYIS#"QA'%@S%*IZU=I5;!,'$_VV?]=,YZ4?X5K"A8L198L(8QV0]BD@:;P409#@8+%VR;9DJR!7>,) 4C(,[LZ[ M6\R^7;=<@X=;T?5:OP>L!GT\V'O'_ J7M6/ZL]Y1_ZX9>4=Q$(>C!GP/>O]N M6]?NM$=G!89O L-G\XR!WGJM34ZU<.#-!9V0]00C88A,X,\1PU)I]/+>:])Q!P19<#QMP'9_7FOR?7ZC&$0I\2I/Y,VX9-AM0[/P*;A]2_!VW88">V4T*8MT#2_?D6 MM\%I)6%!D,(6(RYE0L9:B:2(VADK!'$92?':Q2_7'06>^'%7T?&/7\??J]M4 M=/Q/ZO@Y;TDFI30S* AGP5N*%NG@!%+"\R@PR"Z.6[LD9\P5)7\G_M)B>=)2 MA>R5A4:WK$^ZXFM7U&7?RDA;YC$<#F-!CCV[&@\@/\]S+-Q"(_]H]/W M7S9S^W;B_WU[]O%].'&4R[U7?W7W/_]#/ASNPS@_=O9?O.'P;+Q'W\ 88%L? M>O[QU1N^__TX[1V^A/?X\DE:3%C$$84\GUP3ARP6 0DA<(#)-=+RK58$)7>2 M5W@PCE<7U=_!XLWKV[)H2XMV"O?Z%*3V07B*B&4<<:\HTC0RE*+5*1IGH@SG M%NWQ%!(^NX1%:;O5'P]:W4926K9G.V?#=G6Q[?7&MI/YF9KJXACFXR!P1:X] MO(SRZ4*N)SN(C[0.\8DS.-T+2]&J0HFK*&/XD+DT9+'7E)$JJ[H;\*;K#8C05T2 O\P8JF13*;IVK%0/GYU<$I0+ M,?XMR6ANR(=_A1\Y"0'5O%XPXP?ISW:.!GVHF,$>0USH\S_XXXOPY4/W-?WP M^>AT[_O;+WN'>QRN%WO?/YS"?4[WWN\??_S\L7N.0/_P[9=]^K;]X?/']L&+ ME]_W7[V![U=C_K[_^4]XWY>G'^B?W?WNQ\SQ-8L+20F^C+(!V>3!(Y6$(]5@OHI>-?>V\]9/8ZU5!G/&]XV$<+)N.6F^\* ]3MQY,8[[ M,*C#;['S->Y5IF)!G9N@SGS1#+7$$^L!=8RDB#NAX">GD,3&4(\Q58EL[?)M M8E3)WUI/8+F^X[B1P$+7S0V\*V"YW>%; 9;[!);LPAQ^ZQ<\N0F>S.<":^:- M3X(A0!6.."8:69$"8EYAJ;W$6-F,)U2+M?-BUET9%D?E+O"$%4>EX,E*\>1X M$&-!E!L@RD*^5'!$*L<]0 @QN8>S0(YXCVR,UG"=N)4X(XK0J\B8*AY*\5"6 M$847#Z4@RBH1Y<_^N!RTW A0%@]:F+=.$,0,3H@S*9'1C"(<'?5$\8AY!2B* MKJ)DL;@HQ459!A119=[E)HW1IE$<%(^EX,MM\<6'T^'5X'+8_R/^;=OA61:U M B^W@9<%&C)M66+4(FVQ1-Q'G%T5BKQAF',B*/-A:Y>P;6Y606A9')85.BP; M "^'_9'MM+KM7KL[GO1*/FG,R^+'W#S[KH#0/3@Y!7UN@C[SYR]<*"*,R4TB M)48\*H.,AW^L4C98;"6A:FN7L6VV22R8)8WLIUV?#8"FK!U^:[6[)^-1U1>M M9FHJSL\F.C^_;!#P_#-7'??RU,.ESZHF?06%;H!"!_-G-MQ+ :Y.1#QE#DCL M+7*)*20DE1F84B29T7^;Z/,AMG-E'\7[*=[/W4%,]G<.9FTUU\WE*35&I<;H M:?B"EX!Q =V;@.["N59,6BLG$>6<@_\7$[(D2,2-T3@X[WF,6[M4;A.^BESN MXOI=@4O@M96^P9).8AQ]=N#X%#J'KL+35@W]KCT#^_#G6APL6 M^R"?D[>>][O=]FCQ%..'/%V;)=7O8ZO:C#DRUF\-QR];MMY,<:A'6&X@:Q^LNWX[8_AE&9GB$.YE1W%*QP2_QLF(0O4: M]1-B]>FW_N#+SBI)Y6HYF4W_4Z2$":.X,T30Q' M%XRE_D949'.8^WD,$I'.-DP]Y4U1DX+E?5&3>\&6_MH.\)#_CBU@UJ@R75K! MCBS(]Y$=A&H+P:;L5TK_BEVN'S*L"= MM<;7ISV[UK*N'1.:%#O,J,UC0F/W,V3!;OO='P]9/CWR-O,0=%Y+5F+KV63' MMP[/3F)A<+M7!K>'6/'9 K\ XZHL\*-;X,9 V&L,A"9]:$U.QV[>9WK=@YQ[ M%SI_,\NI]:T].FZL,'!;4KTZ$X<*;+[*_9S29JXULT,1D=NI7/#X.["R1*[; MRJ[C:J[7VJWCF>HC.E"5@9#@/)6<)"X5R3P9T5L:5!388GSY@>I2, ;FK9U@ M#GNCY;C,VPF#:H.(=1)3_3EHY,=QL-I]V_WP?8]^? _7OOKG;._%F^\?7[UM M[]&WGS]TWW[>[[Z$^[PF>S#NY8/5CZ\^?M[[_K'S\<4;#M=\R\_Y^.HU?'^_ M_?'5'OUP^+&S]_F?T[W/G45F1JN\]LI%Y&WF-.&YOV'4"1&%&=?21<'TUJ[" MJRCG*&WE2UOY:T_BB[EP>S;9%N/M%P2_UC;7MBSS%PG^4-WQKEVVKE3"GE<3I^_84-P]F1@,[BD=MWWJ>CZ3 MFS. MU<&R^#<8$KUAG$75URT 4);X>C&^@3^N>DJM[?H52J.[L2)P<$Y;L!J2-N#1 M)JU#B-I*)ER*/OH2D%@O4V%6Y N_OR%[WSX);846T2 ;+$-<\8",\ X9&FA4 MF.,0$Q@,PKF( M408K+QP-6G,FA!-$)^P7Q76\T$,[5'K3^NKNI;'6H/UNE?U7V_5K=>)VJXJ#RJFHE#79=F6 MKZ#JCCDN3V!3^9*_>5FFE>W+B*"<7X_ M>//)$FP9CAQ16!+$HZ=(4Z618\FEQ$W$DF_M$I#PLVHH9] M/I,,- 7NN/7P/F#]>0:6?N:1<+:(VLI$[# M9,*!1\XPTV%K5UPA:75Z+VAFZWU=>#6(/K:_5J5+;C+?+6?K,M-+9066U,7! MDKBXZ+0AWE*M'8]":^M\$#B/VAL7>*Y2K,4%72HW\W3'(!G])1/3IR0K?/_ID LD;%T4 240IUXB[:D'+TX;:Y.( M+HBM77U>5/Y77O@()EH[R\0%C:J\+-V5&H0I;C28=/$<$8J:#45M![; MK[F&&:R[@?W6:Z5!OUL5P2[AZ$[K?:SJ>/-EK7Y=^GR90LN%P+9W5I?9G@S: MN3:Y7WUCED@S'1JHHO$@HWA.8-]I'?1:!W[4ATOJ5ZC&2MEV@];U*&MEFV\X M1>WZ/G'"ZW[YV#+TMWNY&GBG]>_JGET;XH6W=-$.AE.:1/@0[*2CX]F(\VLV MM<:P'/GLMMJ=83(__W[]Q\';UDEG/+SA;@V!2&FE=BI$KI70@3KE/)&<\/18)RC,K ?V\-W)X-HPT'O/\T+O(7QDZ>\-^$]GGVRH ^3 MC 1)J23B"GMD960H>D^P)B(&X;9VV8Z\8'?"[IO8"3-QNE00LW3-A&M1EFRO M-[:=6J3B?_./S08Z@C7+# 5PFU_:O]Y0K+ 5QE--HDZ>!RD-!NM?"Z-<(%IQ M5\3J'L3J\[.S_6>?A,;&6>&0#=J"H@\4&:TQ N/46!_!7M &+-$=?)'2MZ[_ MM:8FR(0/C:;)BNZ7]LUEX/9VXU5+_[J1X[S:[T;P3RAX7RT^ =M0<2HX-1$Y M)4U./*/(&F%1U$9$L T3":JR#2_4*8_5TS_(K 3G" ,NL#UJSI'HQSD$X.!7 M<*UB+X/L<.R&(UMQ#^1"N4XGZ\7,=G 2!\-^#]3FR: //\,]ZH/2T3',1[X@ MZ]U.9CD8SUU4\XXL/[TF.LA9W*UZ1U5.W7@X@CD8G,'N^AI[MJ)&@1V9]\"@ M[2L6A@1F1L^W*W*8R34SUH1NC%4T8DJ_,.B'L1]E!S+VQK'5R:GEPR:K'(9; M'Z-,25,F7_-V>#RYMG(@\@1V8I[+"U_G_QU>.*[)N*NO3ZA3&K:4Y_WN267. M 00-8,53=>*\67!)YI, P6Z#*(?JXZ[]$ILE"^T\,C=N+JT^:?>^PGBK M\^[M[%]G?9AE GX;PK*V[' 8\T?]0?W[9-+JO[>.8R=DP 5'&"2R%J-V: -@ M9:/P62O9=B?;DA-BF+/IS(+K-9LSL+[A/B?9GAS-37O^6CP%[=<>9I*9;LSL M.BU[! , G!\/IR;J; YKZ:Y8//,SKKA+NR'] MR=_((G.)HU"Y!-] D^?EJMZ]G>V9F63-WG[".+3L*#Q6=761:K"9C*6>BHDA MA_H]D)P5<^?+6T=B"W3**M;ZK(EY3BV!&2U5A7*=*L^\/P'BH?XP3MKQI M1CY\6%-B9;\JWZ.]N&PU)]!FTXH[MJ#T.Q"W['M;L.HU[6GEGE'=]I@U\10S9GU?C".U7I\Z?6_G7_G/.'P\&_'8)C#"O:'U6W@K5T3SPB9 MXZOE\JK;;)H[>/<)+U^HAC=H+(^;G+?QF&P,*7'EN<+!!".]88P;K)F0Y.+< MIN5#$)!CGP]"OO4'81A[YTY!X&6>5X2@1['G__P1B*TG MM3:E,L-)+[-45E2\M7ZX1-[RY5D=@ 7<[H&EJ-XGZ]ZE3^;X&3]Y7FO_YP7]>OT#$/'(;8XEKLL;R<:^!S-HM'E;']L-Q M9PJ)C3$[G23 TJQ_VKX)J2S_&6R*.=T#MYL+3+5.QF"KP"71=JKSW= "6Z?7 MSU_SQV #1, 5&&N>N@G]; Y/9'\/1I82#+_=D'A&<,C[9V"2;%[\S\Z[G>;A-:]Q;7PWP\GPG1\-.S#6[UFY@" & M>2I@ FLRW]&%$_"M#9<&L.9\=@$J?WCZ6[L1.GB!R2BWFPFOS)79B*M!S8>G M>G5,J;E]S"Y$=GX;ZJLYLN/&),M+?@QB $^=+O+$^,@VC:M,F7$.H&=/.[NI MF4MK/L12L2B/YRHOA_"4P5PX;/K.DSA.,T,773MY]3KH6 <-8S8N>R#F[5YM MA+0KH]6.:D^\"I+E5X?A5Q&_R61OU^Z\KV=J9+^ J55%J!HK=)2G?92#8?#S M_-;;!(V7/CN=&A9!&N=4UTU<<1F+W;92V4ZX4%6)]W^ *9QZ\OMGZ=L:=4FW]^CMUD8V5=NZB]C_HP MF[U\KUPG!MLSX_D< M'13([MU4$U82$^MM,ZH*TYH!#4&7 MS@+I\722M))?Z_,X'-54U.>TRNUR?-=P$=TIR.GZWZ1:+\R]9! M]0-LC_KC"6)-!6>^ T$U^],#@U@QSE+I6+"!Y,")#N?8RT>*[R-X5N_ M'UK/JQ.(YV!@ ECUVG:2=3NQ.[+ETVRL9OTOW=PSX=Z!V__PHMJYZTQJ'&$# M9$MN6 <))N/.O0^&XV&E-$.=O=1M!S0KLY\&W"LISELLM6H6Q7:=:3<("R<< MN7E=-<55[&8/U.'T7*2=S:W*(6U"(\N6R]' AG$5U1G [H3/QR?U7#:;=>[R M87]*JUZIDVGT=#R"V?T^6;.N_=R?V!/Y3DVSBV?)VDR!]<,X5.Z(S;.6\AGT3-L MNL0P[;3_.VZ'/$/UR5\V)@-LPF&<&KGU 76('?!U\]S-G^7TQZ/L$U1[>RZS M<\*R[^(9F+N3%9ZPNF:%G$\U:_ %?P%N.H]C"^X,/!BF(FQ/C;Z9@LGXU\AO M^VNLSEAA0X' =F?\_AG[JU.=;%M6L!;"("/3S")?Q*B9_S+,:J%^^26KX-FT MZ<:$H'8^-CLY4LVBDU52-F)R-5BURV:/'>:,DN:X]V(TN@A@\_M,#A86W9 + M7(SMV?)6Y\87BT%[.)OMFX28KKU!+H.\*GJ!%8M6&VRH<=P$:ZC$C DG F9< M,/E)JJT+=N=\U$*LT5Z\)$:Q#Q94B]"=UCUW77E;1Q?_SF'RPYS7T+A6+]K# M!@O7I@7+V22<^X9]^+YW]O'%E].][LO3_>]OZ',[=?Q$^[WW_Z\O!X88]=;(H ./5&L2.8_:*6N4A]LM=V]I%J15KP\U8H\MB#@<^&HX']&'O1V];?_W[^6".! M?]MNZ^^=UO-C "J QE8W3I*X*O>K;P>545B'J_+A7F5W7JE]G#3<>Q%4@A\H M 8G!PN"DG&0@?,E=J'V63YS -%\Z<:I**_;[O4F8+Y\ZY2.2OZO3C:>KA,[V M7[QA^T>?B,&>1V80MCH@3BU%SDJ%7)#!4^=94'IK%PS^&-$9N!?+.J0N^P,/ MN3UO^SZK1K]N,KY M^T]VQO\&XR'GLHVV6P>+)N3KN9#?8?3'/=@$1V=SSR&B"C%466NNW?<6=O/9 M<#1Q_ZNXR[D!Y&A=E8\&XM('@RRT3L;@_]AA]99'<9*%L'2OX$ MUW7.(@'W>GVX,5:\\_<^>WSPPC.X]MO^X1NZ=_0I!# YB*.( I8C'KE"ADB* MK';)$ K[/YN^](+BNDD+L6H#W$0&P* QWEG#E!4\$6T%B0IL3&\<84*E"W7\ MG R(.Y6!!Z^J?%@9X%4)!07[7E@D",EL;,H@<(4DXM([\ :$$IQM[>(=C927IUT[VS HOZZ*9]VNKF%,QAJPXFS96A9^T/.CTW7@$EGR,L.9QIF]RE MFTB5!Z/3.^("EX*;)"RC"CL!EBN7VCM5E>"81K/ #T6J[D>JX+U>[ FP*2)+ M-$1G$.7*(2X<0R;YA)@'?T!2P87 6:K.<_Q-I>JFF@4+!LZJ !]%85!ETC = M,78@&4%:$6TC Z3(P/W+P(?OH%D8PU)0&E#.($,\ XMQ#)Q;YI422B?*Q ]D MX$;J),?Y%]5)778[%X2HX]%W;>E=HSJX^6BQ1#C<)"E/.9/=Z<095MQI$&R2 MJ*;&$VFQT>P2PC%QDYR\\[7FETCW@V?B/1QNGL+]O^^]^<3 ="5"$\1D#MWH MY)&U1L-/0F-%O&O^2>% MFW&>+&JG?IH[L!C6RNJ.5=/B(V_@DMZ2#NK!7=>;!NOV^IWHQQT[@)D?@J;N MM',:P.N>?P)S=3W&J.DY[1);U+M1WW]I_5T+XQR!?@VQE\[KE.IG[]GK*H+G-7(>KT#)80XN#9<]3"6F@B+,QNFAAOXIK9J]? MK2I?3RLE#[[U8OC#=O+1V[MF.$\4).=#BWLO_LD!AN2=F.(@2^*P$L$<5[X) MDDK)"%A18$LQQK$63BJ7%-7*4T- 5)H(A+R+"$33VW5XV'_FJZJ M,*8N"@O;^_:)@[MFG0A(J8RP+E#DO!8HJIB(MYCRA"LRATN85^>K( M/B=\3I- *LU4EZFWJURR7"E5E:)/UF.[]5?_N-?:;V@QHGX?7G#J\6BCP,_JVNPAB'M5B7H11.S9X:AJ7K[<=66: MIC1#C7FRP;QZTT^F(%'C"GR4"\%[,%41[OUB'Q1"OP.[;)!1:"Z-,L0.+%LE%] NN7 M%7QK-#M)RJ52W9QM6_/%7"9UDUQY/VA7LU+774V%*7]M*E#+>5^EENKN:JG( M!M=2W5WZQ :LU!]SO&[#.,U-GZ923TGYLLZW@]X\'>A5NG4W4Y# YJCY'GZ, M!W8X[/L:>T#QSQ3^C+_ETLS>;-U\K7."KX%Y/P:OZ@'5P^NX0ZQ#J8 [*==C M-\'62O?!%ZYA>M>6UD[K7:[%!H,,P?WB**<]3S,TJ\>Y6*U>7NH,R0LBF4.2 MJ'V*CML!I/BWIVH B[TWGSS#@26M$56&(*Y50K#W/0J&*#SGO"/TVB6SCZF+2C^CH/JR["K M#J;T 2]/3ZK2!5 7<,E!>@=_':;:7*_S;LB3=GC@'9Z!=ZRQ *\31<+ X1$! M(Z,C1LP::IGU!G.5$V_:@U&NBZK//MT!)0Q2<&?/;G0[;UF^T.N%2@#9J/]BN*KWYZ 0@+-VW\ MXJCS MH]A$F;N39:THF&SVC;].G9SL!G8F94Y-74GKJ)_Y!W(,NIW:E6M8,]8>O-]I M3:(C=_\\.YA6M/UX9Q )\XZ5D<'"?L#$F2 (F%K2)\ZCU&5GK'IG?-\_^B2- M8M@*C8P(!H&:H@ALX(@TE]IJX;B7ZNJ=46^'>:J]IEZR(F*9D5YDWL&JC.Y* M@VYFN54U0/GSJBE'EC,0W*9.N2'WFMAJ('ES)N6,0*8]3[(Q'H"3%N>I%">F MW((!UZL//L4M%4J>H(\22 TTFED MN>#P$QB85@G&O;ZX6<*Y +H] IURE$O+9BYO722=B]&6Z4L7]%I3EW:!"IPH MO*;FNMWS_<%)%1?.U=@#$)'LB52'=SM"_.BO6R M%I_&#:K8UR28_7S9]:^N?5D-JU7WY[LDG/W\Y;MG"U%LF-^K[!'LA3+)8*R9 MYQCXC%N M[W\>A8+VYX7W,HXJ=COPL*Q^OD 50YG M31Z6RV$;@[DA/HEA(JK59@<1GCP^R]&HWC#3CQS8MWEWUL=DLZ'6Q;]Y]^6] MVE ^_];ZQ?Y:WZ#::I6],G5!>G 3N&R8?VE(^B8FUA6A]_D /BBH\3R1ZN)K MMZ]4%#6K117+NFH82V&WRVOS+WH8W'OVP+JJ^!?WZU0%?6NJH/.,-F6YDX', MY_;,ZGSG1P+ONEV''5,"HZK2;761=<.Z^&@/)!?+4FZ4.\ZBYXP&"6:O#5Q[ MIHE4.4+&4S+T!Q4)-Z0]G,L7G:\%0\J[A/0!/;TY)04NE>_WWOV2>J M-!7*>T24C[EBQ2*K@T4>S!LM*?@NCMZHCR_SV :67+31<1RE\9Q+21)-)'D[ M=?XOJTDJJ[_*U0\8G'\9(H*U2H@[09'.R"MRC2AUAE$1+LRY/9]8=*G*OF4E MRV6YYOE\Y):,!K?ITWD]0@.%?T1H?_&V_0&>^Z&;>VWOD8-7F:[@-3SG M"SVWGS^_.=L[].SCBS\['][#?GWUUV>X1SOWVO[P_1_^\?-+NO?Y#3DX_)B[ MM&4GE2A,\I2!X>P,XE0PI'W6Y:"[HPW$>\J6*06X5DS;H*.+$M;#&D69-0RT M=)3@+*5ERH-F\K=;KV(F8SDYKI(Q\B:N\N]:C1J>KQN^!3'"CT>U^!:2A"AU MT![GEO$ZY4 .H<)QSG)W++%U648 8T9S(P"#(9<44*6GT,D MES;&*%E>(J^,%5J8A+EPVHKPZ D8FM5?7-U':_3"37(>P2+GW16=\8;U[&S= M@<:[M1E4GWD-0\;AA/;-5V;48=-4_?FIEZO]IVI^93S/XQ_"7FC@55/LT@'N42@\[9 M-"9Y\&)ONXXD^JHM0#X&J4C_8,^>9!; ZI.**^RX_ZTBX^IDOM9115 &[ULE M']4\K0W]9)42.)M*>/N'-E>$UVLZ+D&8S_MOKFX&!,>+9CKBG2P80BKQW7)T.O81OV^S3WJ-YXU M':ICNH\[1I -LM8D\AS1)%]WRO!9-9: >:UZIFS/,6MN+U(+3[-#M^=(GW-J M\5PB:"9'KC[XUI[%ORKAJBD=\UCJ1L3GY638VGH^&65]WYVMUK,.[)!1[-:] M).9OF*/IW=CZ)3>)^+7V1N:)]@9-'"G,Q]?//?5&2:D;+@R74-G_T'A:Q-RF M]UD^#F@H6GUS,.)RV\[M:IU@=RY/]?:$/7R9BW*VQYM;5WSKQQ4K0G]0'W]"BUD3O-8'UQ!V='"GEE>[DK*[A MJ/E2E>D]46%S_/VU5=C 6E:S9_476T>=OLO\K0M#:%1M55J:#V8JFNPY6)Z^ M0)V;T_">UV_37N: ;[*\&R-YDO,]%QF<=;FJ\N?FN)[GRT2:+S0O50GZ_/G, MN#(#&F,!]O4X9Z#/-0+(Y]3#./FU(FYM#ZMLMZH'0F[E5LW'W%S QQ_F9 M5:Y\?D2=0MB\_M)\S[_]_"O/Z-_'%=+LOWI7/>'OYV__]5_X)U]4"R=,S-?V M:-!OLA&F)<2A;8]Z_4S.7R<%3C]P[?K)LV!NW96Q9L,N]37W55]#-[B^YH=1 MN*5HFJ51FQ@5%M)S38@.F CJE0]<.N;88X^F71@N>,3VRC1!NLY#SAHK=Y7I MGV3[=M(:Z$)$G"CE6A.VA[FI[V![4CA8J=5_5;&)6D>ZA2EMA<'X*/?3"15- M=ZUI7>SDA.?:GRSVTIK82Q<5B#9=&&NC8+;ZX!KEW7/U4C>9'SGCK):YUO$8 MQI]O$NUPOJX4!M++B3V9[KV6JLH$F=ZX:BZ4TW/J;A#OVC Q.3Y6.6H+PI3[ MK^1'Q$R)6W="N;KLM] M_O8TX%*EK=0E;S#BX6C:+QTLI=R5JW\4>^VZ+\,>6 /9[:QB)TTG W__?/WDRJWF&B:I^S88?_/$X=YJ">>U&N'L_MQB#=:CZ MA.1OS(CQ:Q-GVK(T"WOMT&KO,AZIS+XC4T[?N;3-'GM 2CW41$A;*(.X>1P4Q4Z4(Q$6HC=Y>'495Y,962W*\H1]FKG.(FBC^QF!K'I3[-#+.#Q53*V/4UQJS@#VVY?SP2?+O#U[3IW*/CFOFMXJ M=T^?K7TC6)-S@*HJHWG7N16>G%0-ISCD%P_"9A;QY "Y,Q&JN=.MV:'6X7'= M-;TN_IN<%->(FALK@K&7#;.C-.Y,YPLN3^VI#3J8Y'%->C;F99AMS,EY\W#^ MC'7N3/FN4@#-[-,@ MEWQ=7NHU1>3+UWR"L6 QQQ^(QX-?6N3S4;^!S-3KT]]#KM&,W,#MD^:HN3!2>^HYDQ$31S6FE!.@A38D!^P?2)V@UX' M/\/UR38SL0W^?MHY^'R$#UX./]!]Y\.(-/WCQYY>/[_^A^]^_G.Z_^H?!>YU^?/$! M_KY']P__\WGO_8>S_>]_IKTS?/;OPY>CO7?XVR?KL% Q>&2\=XB'&)%Q7*)@ MF,&<61V,VMKEVP+S2\COUV5[K9_FN7A^"BZLQ^H47+A<;C4E]/>RO2,>52)98HWWR2>>^.#P6LV^CS#XZ-?LX3B19%Q!CRB/N M.4;.P*^PBM9$&5VBN)A]!1?N/J]QO=;J+E'BA]/T-###!&VCB)0*KW@2R26M M*",4&] R.E5%;<0TF $_%,Q8:\S@4\S(1-I5VP'KB0/,< (9'"0*DN.H([>< MT:U=N4VYN7_,N,/-MGY:J2!(09#'AB#W%50HBF"3%$$),900PZ*YJ)S5E&I. M*SY1G$QPB0CB)/:&6..*N;A1YN+I7AN?5B;CLT^9VL(XSI'4AB&>L$. ;". M0BLC/9%1XI49C(\_R/#(TC97G<[Q]@>-#=]1)?9U]<,L9-1B+!M3&, M>ZD!CC25-CDO@F8I,LR<_E%'TX)$:X1$^\_GG&H+7!/@9)0$-JYUP@@EHB#;98 M8.*+;MPHW8BGNI$PI@PU&!FO,R5:),@%IU 4(C >%*>4;^VJ;2Y)T8U%-Q;= M>%XW#A)R*+;MPHW3A+DC!'>CE.,L&X#Z@%T*"CGM&.*!)V2T(L@&&B+WF"896BFUR8D!6!7MN*:) 8^V,2U9,D8$;RDKF04;)96G644R.0X#\0C6$Z-."$!6!&LF"Q4M%1[K!.1:MNE%:= MY2(P18F3CJ 8E4,\P4]&$(6"QCB 7G54IZU=PK>-5$6M%K5:U.K=QJ(9ASV& M W:!JQBM4(HP'(0DV%G!2RQZH]3J+(O!<44-%A&4*09CE7&.+!1B<,+! M4JLJQ4OH]:M1*VJUJ-6-5JL4C!D1DC.@4KF&_TT$=B.3+@6!G:=%K6Z46IU/ M@ B18^JB0"R0B'@T"EDE%3*!1ZP]D]KQU25 %+U:].H3TJO)4V,5%IH;SB/1 MSI,(&C8D[['GO*1.;)I>G>-4P(1*+C3"F"3$21#():$0<8HH8R53TH)>I=N, M%(-U$Q,KKI>BUC0BN]O$BE4TRGK>'XZ&%<5"_R0.[ @&VXJG)[$W?!+-L\KS MR_/+\\OSR_-+=ZK[I3/*0-OJI];)>G>I>AC'\!'[?JO,5LPR=I!>]?MA^*P7 MWL7!U[:/PW?]3B@NWDUO@4F&(/W)4],)_I MDOO-BL@E(CBW*$TB("L805(H,!58%)&EE5D$C]]%VI!],"\Z.FVGP M,2FP "VC"7&M#;*$> 109IF4L*3=*%S3B))H](1P[):DHU!6.FB!8L6+%KPH2D[BA:\,RVX0,Y! MP 4F3",=/4%<29+]88RBPT(D$BA5+!^M:;$*XN.B!XL>7(^U6]/\@J('[U0/ MSE(,DK..),86>DXTD1'BAUW8!-FJF)3@H/KFF)PO9RL1YQB\"YV MX(JC[=91[,6![52I!C9TV[WV<)0)-K[&)YEM4)+U-@=,5YEMT.R75_5N 4A] MMK!7"JK> E7GFZI@R\$2$A8IRA7BT0:DE8_(D!2C3X"IR67?@BE1TO9*[G)1 MA_>2=E!TWOWKO%F20226.JL)PB$0Q FX$,XEA:CD2F88R.3(DEF ]"8]>NJ M5]1AJ=U<.^6XRL2#HASO0SG.,A",,(1H;Y$0WB%N,GVS4QYAA3TWEB9E?>4= MRU+F7E1E496KSTXH^O#^]>%\+@*QG#'/+6*.@KD8C$.:!XR,)]1Z87T4<6M7 MK*)9:-&'FZH/BR?]$'D)13G>CW*<)2@$:;PAPB,6$BA'2SW2D5FDJ4I)&N&Y MY)4O35GQI=$>DKK6B7+\L#^RG=8P'N64))BTR[M[E)2XI]R2:M6TY)F) MIP&@84&@&R#0WN&ST1P"@0D!AH0@2'*K$"=)(TYL',U)14!0G_AR0&U565,PN5.JB-8O6+%ISS?(-BM9<650S__==UIQ@;/J E8@4 MC$UO$9<,S$[C)<(D:2)8D"K%K5VVSTYNNI MUI1>2TX20R(9A[@#%QU61R&B#$LT!$.\!F.3;4N]BN+.IZTV2W_T&\_BZY[O M=V/KETY_./RUE0;][B1/H=^[77["/:;&K6P=+]T8YP>\7IOB?QXNN>G'<[:F M,/W+:G,VAC!G\-,- /M@DCA4;]9_PU8MF'TCS'XYG[\!WJ@VGF+D@]6(:XZ1 MRW0,1+H8N%)>N\S\NRWD><3^=?WWU_HII?7,LRY@4L#DR:2R% CY>0B9RV:A M@!(8ZX0BDP)QPA/2*C"D+6:*\1BT=!E"F%@%2U[!D8(C!4<>%X[ MJ5-28./.86..7%4);+TD2$H> #8H0U9[A83#U'&=+%-A:Y>2XG<4O+A5-6Y! MCWLL9]Y8+%EMSE-!D+M&D+G2O;2^JFC BH%5 JHW,Q!N8.F( M%=)$.6U4(DR''/.2%_1+O$OWI>#.X\"=$OQ:%\]]H['E#C+G"K8\#+;,9=$E MYY*6$NE '.*!1N22Q4A3*7#,M<$Q5>7J) IL/'9*X7M3Y1B&)=:KG>Q%/!J #JOJ]NN]QMP]O M]KWZP[J='I3GE^>75@=KYI,O6@[S^J18#3>R&O864G^)9)8Q\+6E!U\[,H]L MRL<.F.^7Y3_+Y*]O"-^/66R^5>*=9E/=&DK;11M:#'.?/\B?_'/2[SV$\ M[=X8)O1@RD'V1Z7!Z^L.L_[>:_?Z@_;H[#6,?1"'HV>]L'B7E_\=P\=[<73< MAT^^PB6Y$5LY\[B9G?=F/GI!M8 53S1S&V+$C1#().L0P&N@RD6-B<[=6S"[ M9T/O:?,;K@%:E><_[><7:Z58*^M@K3Q(&D6Q5M;76IF/2B7AL07T1(%ACSCG M#&DC).(Z8N)TU(+(;*YP<[Y.OI@KJPI:-04(&@;[T.<#92AE*$]Z*)^OBS'5;$B/ _T07@7YM?4V#J,=^.,J(S+$K['3/\EF=BLV M"='5!^]BIP,OLMTZBCTPZ#MU_F3HMGOMX2@;^%_C[ OQU'?&(<+=KDBX;/53 M*[5[MN=CJQ,M?&_G&@&=T!Z>=.Q9-DOC#R2T7+KQEY8=?>,=37]M+1=9MWOU M=ASW;*?3]_ !>&[7W\_;<(/:06_.BK>KB_NCXSB8G![G/TRV?]G&Y=(+MO&_ M1A9P?5(P#_],OE)MQ'8O .;\1O3<%JOVG($_=.W@J-VK=KF9;;C=_^,&_]J= M"MOR;9>^U/S:: 9"Z_M48YH&BVM#!-ZJ8T^&\;?)#[]/7JK=J]@!JB]=Q OP MK1U&QYDU8 ?7= <3W=4\H/E\I_YL*8A2?TCY#J;L\L^O_#+>(5=]*-AMOWOE M4\V.-.)^1LPT+R,N(][X$=_;SE-87O.[/P@XWBGUY=T?VSW :(BX:S/3QVQ' MW4<2X9*AJ59@:+YKG[:Z\(QC;N4,F$=F A9YW&AY)&9C MY;&H[5N/YC:[Y(<#OGC/-"71-R#B_(DPPBIVT]]Q4)W\Y^#W0;RLR4F2DS4V:FS,S]S\S#45]>-(MR1XF?Q?E5F*1_#_IA[$>M08WWZ\8, M]G 9?>M5*_2 /;$6UV?M2B!OTE31!JF(=%XPR077AC%&.(Y:A& 350U? [F" MK^':A8^-_3RI>LRC>]\>'3\?#V%.X^!EE0L-T_IL.(SP_^'0GCZ. L;N!WKP MZN/G@_=_?=[__OK[P>$;\:'[9_OCJ[?=??J?SH?N7\=[[__J[+]Z>[Q

"$]Q]X9:3CCV"B 0VMQ=$2DL+6+N';E)WOW5(P MM'BA!4(+A#Y-""VAN*($BQ(L2O!)*\&;^!&!8)X<910G;A.V"CO!@E%>8!Q" M\2,VRX\XW9LT4(!G[!]]BL3B1$U"4C."N- "618-LIP9S73.WE#%D[@[$%VO M//E-2:&[E"KQ9W+J5I&_^9/=%F]&U?V#,6XR"L$\D"3A7V<"5]A:+(C (D2C ML)"1E .A#4*ALZ6\LN0]YRDR)+1WB =MD&'6(\,C]EKBX(C=VM7;2HD50-#M M]MP&0= #ZL76"DP$B!D0(CMX,1 M%;2DVENOC>+:4LV,292&%(+WCK@"(QL%(XO9:5*(Z$40B"@!,"*20D[*A&)P MB5E#O2!J:Y?B;.ZZQ=#;QY*VV\&I4T11TBI&F@B(;A2*G>\\7#NBI<99@+I!)EB.0/?!' MDC>PEM(KC*D6FF_MJFU*R^%(P9&"(P5';HDCUDG'C22<R*;AR&*B%\4&*^TT4@$SQ!7SX(^D@*3P3%HNK1!V:Y>P;2D+D*QIHM?* M,JL?)LNK8I6=I'3=BHYY):V8?Q)P;I;B>"EO'_XQ==\FHY'QS&-A9/14<.ZM MBR8Y,':C)!0SP\L9R^:@T?[SI80O<&*(2M;DA*^$P,R0R%& )B^I-21J074N M7]3;3)FU2SJ^UH[<(* J93U/S.,I '0M #)4$<)&\9183AGW07E@5"L_R9J'38@H:9H3%%"62H"O! M/1($Z4 =DLHY;0*-G.*M76JV)5,%G=86G>Y+;ZW?M*W56 H\/3P\*\19U(A;H9!FRJ*HP/@(TII( M2)4A+=7Z4084>"K1NP) CQZ @@Z84)I2B)QCJTR,PI/ @F3.2U>2&38+@):3 MXA2W3'--D%<)<$BJB#3A!G&2#0X7":SVZI+B"@*5\%V!IP)/-_"/L&.$:H4! MF[ADPB2>I PV@N.$HRCPM&GPM)1KEV#!$M?( 0X!/,E\T"0D4DG0P(VT"4OP MD-0V+''!IPU,Q'ODGC8<6UUC^) SN"P;;BZ4GL#9]$M_+R_/+\\OSR M_/+\TA'\WO"UU4^MD_7N#/XP/N$C=OM6F=2>9>P@O>KWP_!9+[R+@Z]M'X?O M^IU0O+N;>'?+3;!=E"'00!#1&N*(BB*H"B"= JA[F9G>TPV"0#JB]D6>5GG[!98O0FL+G>G M9519*SE%.BF"N \<:>,]BEA'%C,;A\M<47A;FM(0:H5.6&%@?R1.6 &,!Z$< M+(!Q9X"Q2"XH@V>1286(8!)QQA-R'OY1 OX/$V5H5!5@<%*8U@M@%, H@+$! MF4$%,.X0,!:3@VAPE&0V6FJI!< (!CE'+-*,*,IBPBJ:K5U*M@DNG MCC+5W=?X)!/+"HW0YD#L*A/+FOWRJMXM +3/%O9*P=J;8^W!0)EXA1G7@QIL4?7;1MBDI]3X%. IP%.#8@$2S ASW 1Q+=%2) M ?!+@6),&($+"PEHAAHA'G7"$#F(&$$-PYHEF4(D>KL%I%/D&!C@(=!3H> M)72L,@6M0,?]0,=2+IJ0S$I #1:$9O=2\O45 O# AQC<%[,MQ?KQ@#VV MIMZEON:).3<%7=8MP:N@R\^ARV(J5Z0Q<:<2LAX#IBC-D%$AH4!9AX>>57^A93 :+TANF'494 M\80XP1Z91"+R1GF?&)56VZU=1K:I7D5TK4#/W7.3%>PIV/.(L6?5/0\+]MP> M>Q;3R7@DU*K(D$A2(LZ31C9Y@9*C3!FE/#:QHKX$FZ%@S]IB3PFJ%71YM.BR MRDRT@BX_AR[+.6=.\\0USWW0@D <*X:"E1 MM8(]!7O6,Y6M8,_/8L]2TAH1-!@2P;=A"G$E!=*.*.0"_ ?@1P,&@6^CMP&% M"OAL8$K;RC*G'R:E[=_]X;"5!OWN)(FMW[M=\MJCXQ9[5&CTRVJSUX8PC_#3 M#7#I8))"^;KG^]V8Q;) TPV@:>_PV6@)FI25GAM"D2,.W**H)+**4<09D3'! MOTJGBCA&\7/(].O#I5(_-E J)3I/S.DI,+.J-+8IS!0LN6LLV5\,L26N8S)8 M($6)19PRCTR@%!FGO))6!(/QUBY3YP-L!4D*DA0D>5!Q?]0P<@1"$ M6?16C ],1\X0(1X0Q@2/+$\<69$<\U)2PEWV5B3?#&]E[?5H 9@",,55657J M67%5[@U(#A9=%LP,C]G9[D_[ZKH 0?''[X1*7 AFB.)*P0XL0YY!(C*$3J M5%)"I.BW=JG8"!A9>U59,*1@2,&0E>2*%0RY1PQYO8 ABF 31*0 &B(A[DS. M3/8$)0;[./3'KA.OA9#KM[/7:BP_L()*5=U: MC&55JU2VV88O8%FE]74)KUG/<#U;:Z,=/VTH94J"Z^<<5S%J88S'0@E#J),I MW$N>0ZD6^BF'\/5RDD,BU'BB(S)"!L13D)D)P2 O':<$1"/Y5!' 87Z^6NA. M7<+;;:QUU8B%Y^ 10$6QR,H"EFVV.:M4MMF&+V!9I>+XK+_CXQS#429/'<8\ M"F>5-U+P8,$?(DRFFYQX%<=G58[/\DD8-3IZ$04BD7C$#2?(N< 085KRJ+/G M*L'SP=M4W?-AV*/W?!Z.!>%&1U[KQ(+P(IX,0!%4] =51Q_;[<.;?:_^L"Y) M*0_]_#62^K4:RT^8:V65RBH]^,RLTUC**CV"52HM3M?GS&?1K9FWFO7F/.=?!XPMV_=U5Q) W\$ M^K^LTEJ,I:Q26:6R2F65RBH5OV3MCF2*7W)G?LFYHB.A F8T(F*-1YQ2C)Q/ M'JFDL.#<2*[PUJZ^H-=.<4P>^IQE9>?W#\@V[6+J#V*K7949MD;V--Z.<7JC MBG$*L)>,F+)*994>?BQEE39WE59F6MR,ZFV]YNY_-J*ARD8[@ ]2C#3CI?AS MT.\^A_&T>V.8T(-IXY(_*LNRONXPVY5[[5Y_T!Z=O8:Q#^)P]*P7%N_R\K]C M^'@OCH[[\,E7N*0;>Z.2[G6LVU MDGQKE[!MJ>^9S?5I-T0JP+XAP%Y6:;W&4E:IK%)9I;)*3WV5BL-9',YU<#@? MI BL.)SKZW">JR^SD3$O!)*):\0MBTB;E.!7J7!@/BCL*V8-28O'^7"'H@T] MGX'!/G3-5!E*&8G]=C*EF0_K:ZX=P+!<['7B1[=91[(%5WZFKOT.WW6L/1]G* M_QIG7XBGOC,.$>YV1;EXJY]:J=VS/1];G6CA>SO7B'V$]O"D8\^R61I_(*'E MTHV_M.SH&^]H^FMKF8*\W:NWX[AG.YV^AP_ <[O^?MZ&&]1>>I.+N%U=W!\= MQ\$D.S'_8;+]=UIE'Y=+S^_C?XTL /ONA$^^CBWLC[L@[K[^W=>AHPH>*J[_ MR4VKO=KN!8"EWXB>VX75MLPV2-<.CMJ]2A'(V9[<_3]N\*]9L+9Z\-QM3_K# M=G[6;X/8J43^]V_M,#JN6?$; X?3'25.)LT'SGW3NF&_,Q[%WQN5@^=OL77^ M)6KEXF/>4?.#-N<5R37W_**BN+9^^4%(9*%) *W>A?'%B9S_]W@P4\E'$;E! MM%^03?"2O]G.-WLVW/K7PER GD%+$WSIO%T\2Q4:L([/28\$"YX0XS)*(PF(JG/3";%WR M'".-XUC[R'#DU!KCHI!Q;J0\@\PU>HE7M]V'K M9-#_V@[PPW#4]U^0 U,O:XYN1HMZYAKDF !5@!]:G9P"GP;];JL_#2.W?H$/ M1L?],0PR#'_][=*-?5YDJK%,IZWV.&!:.O9D&'^;_/#[1'FU>]7+55^ZJ#W& M5%9W<".OC9'2/*#Y?*?^;"E:VGQ(=[AB5WQ^U9?Q#KGJ0\%N^]TKGZIVF) ; M-6*]P_15:[!^(U8[AM_VNX]NQ)I>L4%^9L0"TXV:XR+'*QFQN*X^_L'IS35A M^:$JLAY@-%SF-!7AA2;6]ZL[>'-C@_5"GSZP^-!C*TN/.5XV(J];"#] M->[%%L/;Q=,NESY8'&ZM-,QZC8:2A]!W-^_QNG[*+M?!%*UVC4OO5,Q_5H#* M!KC##4!,V0 _!3^/D57ZBN=O[@9;;D^[BOWU=QQ4F:WYW/EE[_M9]Y:T&K?- M<;@;_5I6_W:KO]__&CNM/]K5Z:4]B6-XV[+^3V?]%\_&R\(_F84_[(]L9UV( M"LK"YEU3>O MRESWFNH;E%0+DH*)1"0G+$_$.(I)P()+I>!'IQH.+W[MYC+_/WMOVMPVDJP+ M_Q6$;L^9GAN$!DMAZSZO(]26[5%/B[(M>7RM+XY"H2!")@D.05J6?_V;6578 MN$B4K 6D:^("\;YVXW*ILO/[DGA_W!^>@8GOES M>'[Y[NK\XS'Y='9PW3^#\5T>.2>'G^Q/9Q^LQ?1O\9 M]0__@+$/!L>'1W;_\N :YD?ZE_\9],_>I\?7UK6 T3JUKCZGH96F'B,FMWW; M)$X0FR%EGNG'B66GH1T2.]U[$9#E?IFKD:"Z=WRZQW,TAI;&*M$254O4>TE4 MRV%V2H@51-0B 8MH2D+?3:/(2YCOQ$Q+U&>1J%8E45UJ)9&5<#,(/9"HQ'', M,'(3TR6<>X3;+@U HCK>2J'8:D"#P$]-S;,\D%IBGD66[)D^3F%J^11*' M[+V(B*\EZHY*U.[("BTN=A4I\@X2(Z!)F+A>R".>$.*1R'<3:@4!CQT26^$F M$F-C?$@M3!Y"F)#:/+,]Q@AS31HDL4DB.S)IZEAFZ,5!:*5>S'FX]\+N16ZT M/>)$2Y3ME2A:G/S4U@>U76*YL958<8)=;J@7!+9K)9YO6S'UB (=)ANW.=4" MXR$$QK?CEZK9S,%G*XYX9-O$C/P@,(E-F!E%J6VZ)$A3BT6>1=G>"]_2,3(M M+;2TZ#RQ;[.T<#@/O"2-(Y 4)(3_IK836:X?IXEGQ4 MN 2D!0[2]C%J#9.L3HD]( MUT[(E@*)=X@P.S04?4:V!VS])UF[+@U%'X_=[R_3(6[2:E462ZMN/Y%DD=FS$L)">1AF3O*#+)34NDDVFUS-4R=]=D;N2$ MQ/>H$W$.'#J(6&"'"65A8*<@>OT-9*X6K \O6*V68(VY35+F(,97:IG$9[9) MG3 P0R^(*6Q*8OE\[P6)B!:K6JQJL:K%JA:KSRQ6P\AQW, ')AW'"-\?>E$$ MMFW@1;83^VFB3=FN25RG)7%IZGH[:U1;+WIQ._&I7A)Y.^6O3^U!9O0%V'I922*+2(ZWC431U*/"M@(;%B'B@, M<%MC@'=%[M:][,X^7/7??8ZN[ M49C:#C%#-V0F[%QHTH1PTXM3*W'L,/43AB%<$NAL9"UUM=354E=+W>>6NH$5 MN[83!A;8LL1WO2@EJ>\GE <4Q+&WB3FKI>X32]W*TGT%UP\^.RZE#@\\T^&I M;1*/>";FPIEI$GFAE<;<0[%+>I9G:['[_*TD_4EG&BOMUE">H"N67C"]8'K! M](+I!>O*4/2"Z07;A@43NN$_9Q2>A?\FV=<70A='6RP;SX4A].)_X7(Y_A&= M7F1CJ1@[M?+[XG_CZ3]K+X)XCU3I^_,1J+-L$=_!\OS883[W Q*%"4VH;1'* M(LZIE1*V,C5WP6AC Y[,A[PX25_F8\0IFHK1GJ3OL^++']?XYVNP)O+I&7SV MCV'.OFRG'3?D_WI_??XQF<0. 9OLW?7Q&7//#\$F^_C*ZK_Y\Q+>D9V_.?K^ MZ?L'?G)VG_;-W[O'%YR!):.HP,,-L'IHD3AD&&UV3^C:LN0]_ M):XTOF'#>7* %K/#K21)B!^Z/"2>'\61SP.6!MR/PY ZZ9[!P3B>P';,IG.^ MMPF%K/7VK39DVM;/QD;3*N-+?/BW; :GARTA2PVS,3>K?J["8W(*ARQ+X<"- M9\;+>0%GC4^+-FDWIBL.:S9.@ !_LT/X9F/^41>FW[ ]5TRVFJ Q&]"9P2D; M&)0Q&.",)^A",6SK;P;\9Y1/N9&G1CZ?&C.$RS*F_"L'BBF,*PX_T0+N'@[S MJ^*WM6NU@C0$YZD61[(TF/R03@K^6_F7W\MN,-E83$$\M,@6X:V_7V7); !S MAS6TI/=+F;WJ ^KW??G;@EM!_NBZ^Y[CK__]QH=O_M'=]XE[SX>M??NF'SWW MOL\^VY#=D.@AUT,.-G]XA5K1X29,JQGCQQ'A4O)&B0C9S%VV@J88J"T M=O/95=JKZ6QGO%3FO8[^<]D?]6%LG]SSP^.KXS.\]X-W_/'\R\G9.^=\].JZ M?S:$,5V0Q;S7\X_'SB<'>GNT[(UT:R^,V7M*,<#-&&+$D=I/4CVPW(2Y-8L:2T+9MC]@V]SU7 M5060-54!FA$^)B/\7C%"UXY(D"3<3%+$3'7BU R9[YDL\*CMA&[(F;OWPO4> MC1%VS9S6!WS# ^X[GNM3%B96X!%.G"AE-J?8-1H"&IM1VL[FAG>AQG&*1@, M41Q'44")11WJQKX7V0DG81(R$M]2 ZF9X6,R0[?%#!W+LV(K"4W/27R3! XQ MJ>,R,XBLA(>6ZX2PQ"]6H/ILP@RWW$OV" GV'3K2E9?LCXYTY=VZ%;P;4^34 MLGG,2 +\CD0ACSUFV6' 72L 7IEJ7]CS,<7KAB_,M1V"#DK3#4(")B +S,@+ ML0,D9T$4<(>X8 +:S@-IASM_1KHTEDXU(=^^K;P3NZ-1D(8L]EUB@3ELT]A. MXH2X)&">G88.UQZO9V1WM61SDW@!,V-N1Z:3^JD?,8O[-@=V MM]R6[Z'87><\7OH8-X^QZS'7BRA+ AH3ZJ34"BP* I'% >66$VF_UC,>X[9? MB]DV3Q++-R-"4Y/P, !3SK9-FS&;VW'J)6X,1WD9LT9K+EISV>VMO%NLCC*7 MAYX5IV%(W"2*N$]C1-&,8CJV=D>6WO%4D9]XB-?9:<$%B>[9IA&OD( MD.F% 7.9ZY.]%\[]$A>VW'OUD^1XO>R(LW_K5O#_ZFC6SRWU=WXK[RCU_=CR M&(DB.R7SF_N$[IW_Q MV0E)3"P>F"SQ/9.PV#8CCX1F$,9!&G,[M=P43"17AW1WY3#_!!KD3^+-?J6- MJ">19XS[ 7?2*(T(\>,@MCW*F!6[OA=0-_1T+N8SRK,R%Q-^8U>?(XN!V/*Y M&<6A!=+,)F:8,,L,4HN'+/9BXB?W3E#_"<])E\:B_49=<(QV3EW;]8V[FZQR M(M_QN.O9P/]@=$YHQ90REP4<%'H6IMKVZH+M=7SVSNX?? 8SP_*8FYI.$,4F M@3T"N<68&=,DIK;M!0FC>R^<0(>G=N4P=]'V:K=%V;#GPVU=4>[QFCM"S+5W M8..-NX4 'J)WA/JQ,*:<\>RK:/TPH(D1TR$%;EI@$PFX;3;@Q@3&E">%,9GR M@HOW;=)@8FE%[[ 1K5.UU\'.%+ZW'X6.[DQ1#]G;\.$MP.Q]3F3J'Q$6S]^4 MX*!D*N\KIJ(8R1.(E"V@+(UI^4!D5Z*<&UN*"*LIX[$HXQ X#YJ< MI GC%G-#[3-9\IE<_ID=7PXN^Z,/I/_]BWV"L63GG7=RR)SCC_W+3]]?7QY_ M_V-T\O'5]T6?R?'HZ/KDS;%S?G;AGIS!\\+O\@7>\^G;)Z=_>?P19O?FD_?I MK-_&'76)E6 $QHPMQS9)Y$9F%-FA:8463TC J!LZ*\MW5O2*K_7H3IRKKG*H M[OJ9-&-\BBJ'F%O<)FGJ.0EQ@BAT8\=F/$Y8%)*(N NUC;;CVIHQ/A5C;* R MV(3Y@4],/W(FK&^#",42=!WUOU70\G]H,< M?GG];J+$W>;CQ/4ME_I!Z)&4A &AW/*]R'7@'Z'C^*O[D&L^_A1\O 83^W9\ M^8X E+ CLR YH2D]@\ 49NIV:0QBP-.>$L"5?6K#T\-[_?&>HJS^E, MPFJ'UJ138[DEP4<+A <3"*"L^Y'%?(LE*?&].+*CR&<^IZG%*;$CK=@_HT#X MOB 0N,-#/Z3H]_! ()#4,RDAH>G;(:5@G=E!2$$@+".0:X'PW$K\3^*_7E_) M^*1NFMWFV2XV5TH0;LJE)(R#,/70/>,%4^*-OQP>?W9!;3NI[ M9N#ZM@DBEIDT3JGI=TQB/=H37IU%B>.DO_ M!P1"]W;R_VJWXL-H)*^U%?D$X:'(2BT:6WX:682#>N)3CS,O(21./8O[6B-Y M+HVD?]K02,Z^6,<7GX$.6.18U(P="ZS(F,1F1*EKA@EQW)C'\(>OK4CM5M0: MR3,*A.[MY J-I%TOHMA%?PYB-V.M>H/69*.-RQ26'FO4BT3+"_3TY2+BP[]E M,]A9MDD!"4I5%)S9>"Y$FY1?#K>2)"%^Z/*0>'X41SX/6!IP/PY#ZJ12V,(S M/#F8H;3E8/1[;L "8I/ ]T.2,N#G%G+O-+0LV"NCD3)^10MC*':G^>EJU9]C M!:.'7<#;%X07HF9GC 4ZRTMAM"EP>:F:-)D7&5[\;Z_.UW-5CB M[ >>I,]53]*XR(?S&?]=L1.K^8J]6PIUNG8$;MXO;'G;6MK&GX-I?I57L9HGI-&O2;JFH6DF,W JY M2WUF>2[HO[8=6V[J<0^HT8M]YD5K!]J-"KBU)S)8O<-O>'XQI9,!2CCC:)SF MTY%_Z5 [M\/G.,O!J!!Y173&DS/X^A_#G'W93A-BR/_U_OK\ M8S*)'>+W+]]='Y\Q, %>#S]]?&7UW_QY">_(SM\535/"=#::<&\?PE4%AO ))GAAE MN>>S 5-TH7A8$]$=B.@T^V:,) GQ;I!0-V_51?//4QK]+(="%\MKBEBDB(4" M>=30H3XW=V:66ZGH/6+F.+K[MNZ$*S=]\?B9G/>N MV[]=4#XWNJ9>F:=>&2U-GTR:Z@3NGV"7]$%[_BW\>?2IS?(ME_6I< MH[T"D M5] EA>KYZ@2ZM3Z_="5Y>7OR_>=%LI#L[SM8)T[BP E"XEI1Y'(G)C%QTLBS M4C>]I0F.">=79@G!N[[-?AO/1TD^4[\O)_94B3PO\^L:& MXVYG;HUH1''G'9TEV?'AD'[\YOA(MVK[C^/[SY?S- M!_?\\OWE)^?#]^/1^\O%\H!/EU^^]9VCJ^/+#U>?OA]86![0/QQ^.?_X_LOY M63+JO^E?GI\=7Y^_:14L7GV.HIAZA*5F9'%B$C=)S(B1R&2)$Z8)8U'$_+T7 M?B^RG@)9;[=J VZ)73]3HSPM%[1<>#"YX(1QXE#;BMPP)(%CQ;Z7DEA4I,>. M;P4*2H0H*!$M%[HM%VI4P21F?ABRQ/3C(#6)15(SIA%(")9$Q**!&]%T[P7I M68&6"UHN:+F@Y4*[::8;(Z>PPM1U"6,II9;E\""QDS2QJ>?<4ARLY4*WY$+= M-OJ,??M,4MK6,O03^6PE3NR2U#8IIY%)$F*94>I1,[4M-W0BYK!4^MUL5XO0QQ*A/T\ M[+X)1=L0 'MU_*HC+91V!O!I61BE,4TX=6)FLX@$/D)44,8M'B911/S U@&@ M[1%&_9>- )##W3BQPL0,21R;)+(],[0"UX1_!7X0A(GEVGLOW)YK$PU7^72V MW,YU4=IAWFBS)**.[?JI3PEU.*4V8JDC&$@:IA;509"MXHUU$"1,[(A;5FJ& MS'),XA-B1FYLFP&GEN.D#F6NCT&0@#R%GTOS1LT;N[%W=PD0>XX=QG'B>-0A M#H_P3R=*_=!B3D+BVU!"-6_L%F]L!P(L&L6)"_S1L5-F$LMW3$K@GY[M,QI[ M'N(Z[;V(>D[H:?[XG/Q1QP&VLVN1%B-E/)F&8)D&86Q%$0D(J-#+QN]?> MN>O<4CO#?ZYJD+<'+W7W@T>61I9'/9^QF-N)3; U=I)8?IIPGP=IQ)Q0.\.W M2!J=-ISAKDO",+ #TPDH^G)@QL9G)0?)0ZD:NQXET^ 0Z*KL36:^:-SXP M;Z0LL5(WPF;3#HFL. XCGUEI&'#7XDD::6?X5O'&VAGN$3<.0N:8)*:V27A, M3>K8H>FGE+LIIXS['@8*/XZC MD^)U4KQVAFLQQ;X,EZH$92GS&J6<%- QH$#DQC4*JG>%;)4;:SG#; M9BEQ8LLD'@GA#^Z:U I\$"BI[2>1XQ./HACQ'*UF:U^X1IJ\H=U!/J/#JMG/ MXT:('@SIK%M+^*!U7'>+JVVT;-LORR.:6$%@6>@K(ZX7@BD86&GLNH[E@ICW M=2AABV1YU@@EI"2U(BM(3!OT,Y.$V'O9W M;^[3Z%G+FZ[*FRKD=7SVQ>J_^YQ82>0F+C$=G[DFH1RD3D@",W5 STA9$J<4 MK!PGZOFNMG*Z*W5T2&Q[<**T<.X49]AFX>S1P/? ;,"\%&(%5@A<.G5=WTK" M. T]7P<2MTHXNPO".4PL+W1H:G+;P;H:PDS*4L=T.-C[#.Q^FWD@G(,>;+$6 MSCK0N&F@<2 7TH>%?9Y\Q,<82H/>7*"W))_'0_YP_73UFNDUTVO6S37K,!/^ MYXS"5.&_2?;U12FC^W/1\NG%_\+%\A5B(;-QPL>J4'%$IQ?96*Q95,O'%_\; M3_]9FR/BK:V7/H#WIJWWG;(!3^9#?I*^&L^RV?7'+.&'6<&&>3&?\I/Q&YY? M3.EDD+&#*:?%7_GXXJ_L*T]0#YP51^.C,0PR2^9T^#J? D6-7P(9S:89+_ZX MEG^]/H/Q_C',V9?M5!.'_%_OK\\_)I/8(7[_\MWU\1ESSP]?#S]]?&7UW_QY M">_(SM\5,J7^H#Z?5_^MJ"+RQ]]:S^PH_6_W_CPS3_Z^TY [OFPM6_? M]*/GWO?9VX<<;/CP(V35_4@_]ZUSM_VU>.(ZV3#]09?U*7JB_SD?<\.U>@8* MUONX>1^?"/4&_\@&'W+&1S&?&JZ-FXQ1^<8F=RG7=QMP+SZ,LQEPH-,9G74Q MUU?[VN_NZ-LA1[OMII&5^FY"'$ILC\:N%Y$$#2;;BZ,@^'STP\'OM]-\ NM[ M_79(Q[.#>SW7"D7WZP^B-THK_/SC_^.3S^_GYT\O$3Z;_! M<;X?'7__9/4__OFE_^;#MT5'.EA*SJ?+#U?G;_X:)'5BDQ*:FA8/4]A*YM(XQC8- MX9-4XSS.P>H>-^I61E6'%J938^EJ:%O+VI]:UJ8\8)YEQ1Y)4V)Y)'1CESEV MG/@V#2F-4-;:D>VXMI:U'9"U=08S]T,G#1@Q4S\,4-9&)DWBV P5M9N%?\/NA)@>8"CK0TQ=&F6'AO(P"W:W()?RPZMSVY&PUM%X M1L<7& M\A,,^8'"^S]_]'%U)3Q*)31S[_R MH?%'EL\&? K:_AQFJVE#TT:%U=79!(@MB R5+H>N!,UT.$B'@SH1#@I2SPXB MXA%.(A(G=F3'81HFOF6[L<,3_P%2+\JSMR.AGR_?C[\SJW_YA9Q\_&3W#]]9 M^,SYF_\,CC\>._W#/P;GHP_N\>&!M1CZ.3F#L7Q_YYS .,\QA'3X'MV#7\X_ MOOKVZ3N,Y9]9U#5X3!8'G.X[I!B0UB1TP,W;3P$S]-($- M2T++1QB!'O%='?K9T30++3&TQ.B$Q+ LBEC]5IQ2C]BA$[/ M3 R%#DDM6V^ M7F)HL? 08L&JQ (+29#Z5FAZ=FR;Q$NX29E%X0^?\R!, L[]O1=!$&JAH(6" M!DSIHES8+=&0IGY,8CMU[) 2VP^I:U$;1$(86HPXY"'RN+74N)_4<&KD919X MC/N.:1,:@-1P'3-*D\#T+&:'$7$]-W6Q49E#-.I)-U+);*\[J5&[-I8G2&S3 M2Z:7[*FR ?'?*)*S\5R4](ODJ,=)@K+V/94'<^<4J"BLTJ=^.-.EW"6R:I>> M*$R^8F,P)TWH)5;@["66"\+7_QRX>XV'UB=LKLYR MZQ0"1; ZPZ^?S[AADWWCD9-.7TYYDLW^RHOB=3:F8Y;1X=&XF$WG6'O0F3S3 M:Z4OCOXSZG__Y)V?+@?#_N@_&>I]G[Z_'BWF MF9Y__.2"SNCU87SPO>_]-Z\OX=O?^J,_LY,W'YSSCT>H]UT>?SQ/028*:FR&L 9=Z0>V'@9F"&PR*;6LA$;K(LN3VW?[T] MVL"*FPF/?<\+]AX[X[F:_NM\6A,B+T[&BAC'%^\Y MX]E7Y!)%MU*?GYXDO<\TY*GMA=QTPR@TL>N"27GLFKY/ \OVW9BX;)=A>0[& M!AW3X761B52[V8 ;M'6"F#Q!0T%%1K:KZ=!!N$^L^R+SW)*H&_DWO/B69V_X MT=GW;H+/^<$,X$U3PW4"XQU'XS]T?]5'2_E]EA2CP91SD>-;9-^,$7QM4 @M MU.# 9!-#_/VNJ#L=Z].XK77M?W#@XF,8H?$''0H!\2<%;6EZ;=CW!T!ZS'C$ MLVSKXZ3[=2-442WH#S:)?N@PW0ZVCW8BFX1N&D66[Y/ \R/'@RO$CN,T3B.> MK"^07V\0H 6,E8]_Y3"3V@QX.9].089T)Y9Q/T- ;G_"?\]'YV?'5@P/NOX M^[NKXX^OR/GA%^_\(P*X?[!/#E\/\)U+0.ZCUQD\.3P^?$=.SM[!> Z^?3H; M?(%O#P6 ^]D' N\"X^+/=DV\XQ"2D)"8S/,BDSA!;(8.34P:V]RQ0\L/G6CO MA4NV)Y#1>=9T]RC& VE;&PNG;KW'[#DJ[!VY ]IU/\X06@T5AN,('MLYA)H[&"9P,+1;O M(A:;S2Y3DG@NHYZ9Q#&(1>)[9AS[L>G'%HE?<32< ?,,^V00("(\AA+AD7[D\Z0JSZPIA,^=4@C>[[!UE7UWWPS< AGX:IRTG+H_BFG_Q);?X^^H=ND^M'+]4[IT M$R?DGN7[?IS:Q")I9'L\HL2*X&J<^O&F)4O:I?LH8KO_LB&V/6YQ.[)BT^:! M99+ C\PP -O52@/;]T 9LQW^1"[=ASY9765-]TY,=Y\QY_+N WMBB_#AAO($ M"=>=&>5]UW-5GB[ >>_.:J)VD,9W<^X[\K MYF U7[$B":V5#+*ZKV!7D]!EWL M_;.=:P;37EC@I75;G]V\0>K:#4BVR_FCSYX/^I86L\,YU\F?2\F?1U>?8^+% M81+8)D]BL,T=VS7#)/3-R YM[O/(M8(;46^WZY2=#;C*W$1K3_"VPH@Y_-LH MYB.8"[RL,"ACT@Y'T::HKGK$>L1ZQ \UXF@?1+3.IGZDT3RX'W"W M$)0?)%5:W_KLMVK&H!%?GX%]N+;I6\8AF-D: E@3! S%M\U($X0FB(H@(MM( M@!I$R1:FBFBRT&3QNX(*%P1AN))"-&%HPH"AJ,BTI@9-#16;B&7F49=SF;<@ MM>=@V7/?M8SE+A;A=FL3NX@.ND,I6)11ZEA.['";DS#V0Y_:+DV"E$2!E3![ M,VC0.R168P(U+&MR-/[*BQDB0*F([&ZD9EU>7!T[K[X=?S\BYV='Y.3P'?P7 M[KN$]U]^(7WL+'WYYY?SCT?.$G(HC.'3V:OOQ_#NX\L+TC^$;WP\NH8Q(IJH MXG#@KT7=@\(24L5+56T5.DZL6^S5$G]T E] MS^.QQT#=#:,H<#WF.:D/O[A)NFFMB!8=CRTW-!RH^O$OLURX_XUAMH:Z8!((;4UXA/+CYAC MN@D)3&+[B1DQYINVG?J)0VTO\KFP1K14T5)%2Y7N$[N6*C\N57:JK/WII,JW MXY?6-R%9#CZ'C#B!CX(DC"V3,!*:L<6I:1-"4I:2- X]D"M.+XI\+5BT8-&" MI>O$K@7+C8*E3(NIYQ2:CEF]1W0;(P MEB0Q#](TQ( ) 1O%TZ+D^7%2.M3-<+>&\@3(*'K!](+I!=,+IA>L*T-Y0*"I M]9*[F\7(^M9GOU73C;Y5TXV^5=.-OK7+MZ[I2:\>N:E[\KWPXAZQO;#&B],C MUB/6(]9X<5L-"_6<=?L/6E+^%.7YAYSQ42PP/!!!SHXT@MS6WJI9A4;XT AR M&O+EN0E"(\AI@M (I02/(=2:S4"/(Z8QUG;%^<\:Z8\'9 M("'W./-A:"QR;#=Q$L_U_-@G<8 9ZW9D.ZZM@1D6VGC^9P#7O/[H?'3LO'+Z M9^]'\ PY'_UYV7]S;)\<'GWK?__B];\?68M)ZN.+3V2>[_^;\ M\OAP,/HT.H9O?"#'EZ_V&'.C]=ESIIP=%Y8M]FP1%RXB8T8I'K<,+M(/0"9A'X4D2CR.*N M%AS/+SAJ,+B(.V$8A*Z96#0V24H"D]IA9,8@YJW$3L.(DKT7@18;6FQHL=%U M8M]FL<&C)(ILRV:&FH-RU7M%SI/+%KN?+30[T]I22IH=XWAO($*$EZP?2"Z073"Z87K"M# MT4AO^M;.UFUW<]#ZUF>_5=.-OE73C;[U&9'>E">H/Q_Q:<;DO]$GF(WG5+B& M-L6"BS;&@IOD18:O_FW*A_"-KURAM]F6];??E4I(G/U HI+&13Z[=2; MHY8H7':=;>CD:GO&-G:HW>*8$WA^:E5L1ZR#L0E\X(JI^9/'1!0,/?=^B(+A M?A3>\/.-S][\XF#?GB=_0VBA7HQ M;UK,XX/^P9M7QZ_Z9W\_-0Z/3E]^.#T].ND;!_U#^/^#OSZ='IT:)Z^-UT?] M@_[+HX._C)]Z]./_QU)FXY>?OJ_0'^<+KL>=\S(=N$3X7(+XQBD,^'B1%S^)TF1C;& MIR[G8QE O,IF V,&0YF/Z1S>Q1/Q4CXNY-]$](;BY?JKQ0PNX% EA@P^+:0_ MW#3.9[!H<&7*9SE\BPWG"5SFPX)?X47\_&P 4WDWIU.0L<-KXSV?Y-.9 6-Y MG4]'\H#:EOFN>G=C7!N,ICT"O++ITMYM6=-\*D9WS>G4X&.<98G>)^=00OC5 MJP!SQ^T[&(,Z-ER8MP%3_O?F+^T9%(:0#>&&:@=/7[T4;^/Q%!;W6K&Z$!]P M+.-7O.5__D_H.-;OK1&(:_;O_]@WSC;<&%0I:2;7X(I.$W.8YU^0B!M;@:,2 M>\V-$:=C_!76[Y0+JE-#LU_A-3%TSN936''8N5??V(".+[AQP&;XLQVY1,R6 MCN2"B(GL-6_;$V/G!6\.0*UZSXCG,X,"Y0%A&,-L)$AIEO<,_FT"HU&[.>47 M,!$QRCDJA+#+_.(:'R[@Y!:% 6K&N.@U: 0H0<3)QXP+*DGX5S[,)_+C4AF& MMP$)X@N!4R-(/QQ=?R3!;XFW$%Z@^O468:'4/^%R%K!30SP$WR9P_@JQ2?#(5SK-Y);M&Z>X M(#>0(*YL,8\O8?ZX#].L^ (["(P/Q"^0KZ V@8&%S,)(*9OE4^0<=&:(B1F, MX@; =3PL)1I\!"XJ?A4\E69K"*W&^,-PAG*5TFH^,=#Z;3WGU M)C4UV&Z86#::#-7.%S?/:]]XO6ZH\!YUC1C8NWRM1N_=8ES"J8 M\\FG\"\A$Y#G9R7/5E/>? 9[=QC[LCR;BCO%^;Z))N\@_N"-0![PE)CZUXQ? M%3ACQ3%1"MXZX/IM^\9'9%/E\9:D X>CX/^=XR<4[2XQ,F0I)7%5HP#"DLQW MW_A7?@6W3WO&U0"$D7$%W)Y>P_*H,S>?)/)KR/1N.JJ8)C+BQB2'/O0BWJG2OG1W"PZOI:;U5AM M-<*[[N%:BWJ=,KS.=[.9DR1T]AH/W;4S@##MGUTI;UA$*WP4?Y32_01H&#=M M\Q5>[=IY]HFN<<9\E"P]%T=5'7 I9CF<[\D4=&;4YP172$ W0!# KW0XYZ4" MPT X*?Y%#9B9L%D*+C0TI=R .!5Q?B4J;O"J8@:"=P;G#PYB 2]D@O#% M)TP&=LE,VD!27H*4QK'!N4<)A7LDCQ6\%-B4,>-L,(:5NX O"L8#,J[D$3'G MPKY!A2*?%W":0+#"8V*X&>IJ4AU#1H'L ^;C6);3$SPM'XWX%)4[6%H8 =X& M0Q.?'\\%+#>,>0QCJ)<,!"FH#SA+N#*!-9B!YFV\S!/^+1/7DCE3?!4^-8$C M/N;38I!-I-HNEA86#WC?%%9OA\D/=Y(:$UASSJA4TPSW-\-+P,F3KZAY*X7H5.RLW,B2$D8TD3QWAF(/7IA5E0Y%^?V& MJ"M5#-RZ5U_S80,7M9A/GGIA_7UODY5=X4@228P!P23&^:3;5"$EFSI)8.T" M00-M"*NIW/MKM+MF:&<) 0T'"HP(.& U"Q$G" B'SS*,/DC"F%'434[@IQ5O M,O!@@MJB=(+&N06V,T4#C$ERF0%OS"Y0B31C"KIP;X%"Z? B!Z-U,%*, (&B>FH'O[>-S)E2[(O2 MBFP/)Y_/X%]@5HR%@E,S+_@D:#.9N J*2I*QVH,Q!L9BP!R56V-I('CR8EYM M#BZ">#^.7PD*,8$93A5U\.:(^7A0'5(I.7E*X3@)L2T-47S3 M- <1FC%C !\V9P.8_<4 MMXH@'ZYHZ^'2IO7$/J'/+$MX0YCA'\K;\.NBF9D MDJ"637,*"X1B5JX:+GNM#P$'^2KY!\A?1F=T>(T[!E^?H]MD+BA"K3N,+>87 MJ/H!%#/D!^@6_,K5]F$9 Y.'7FPD\BG: MX#!2J1*Z)KQH7.FS^01],M_E+6(#Y5 +R<847Q2LNJ81'%)#Q=2\I0.\I6(H M-9/9-UY5(FAI>^$OXT3$!0JD2?2=@J2%:Y)V.)+VRN],<^$<1+X@**F4X)+U M\$00)!@I*N8 CR.3,E8R*5A74&Q!T')40!;.AHH;B$.E0@N%\K=7AZ]T"PH/ MU@W$7 O@\O0H:5H?0$'CL^L)$@=,ATY5@ ;.&,X.?8W"LIO.QRH>]%6Z4Y!= MMP:.SA/!0LO1#HL<>6A^54= ZA&(_1)G=S8%TDBEQ:1,-W'@E#FYP#F46;2S M3!:=@L69-KJZ!C;6:W2-,3@6H&G?(P%&)_#H5FI08F(,<%B M%5RJO[47H3XIZ)?))CC08DD1+IWQ4^!2Z,H8"Q*1K@0I)K7[@$K-C@OAGF,[+WU.>'O 5& SIXR?-R4 MBZW82('A-YF?@"//EBR$2M5:PYZ%-T#X_864 ADI,]B44&M%9C3]/DT"^*:D M"P+X%@K"X+ZT:0?\6F08()W,IV-!62)\WGBQ\/7(3TH5BU>V*A!6?C6N"!U5 M[F/T0V'_G3&HV.B7-([A_3+'[@I]V#/AV>EK8NT^9>D M/./@8LJ%Y[N5>-?/OV*(H=!T^(1T6&U%F>DH8Z_57KP55&<?FE5ZG:AC\&<_BX,>!T.!LP.N4[ MZ_@[* S^%?-ZZV!UF5LLQ!2FJ"4+JI$1\^L>FL NL(9-I"CH\8"&J151!:QF4:24 B3Q], M?WRLP.1 >$;JB?))HR3Z5A0PS7/I;A=_@2L8J,; ,>8"(?886/LR!#\NL+S1 M0+KI&>F0?LU1.4VG%(Q]D>,J\OHOIAD#HW\^+9T<^,&6@ZVWG&"T>OF:JU.I MP^JIQ?AY'9XT?MWKOSG=^X?46/,AO&)*,6@_P%QAL%9E_<6O>V]?OO_G?^$/ MN!6_@,'W;#;-&PZC)*,78U!3,M8*A6+.(9VB=TFF-:JH DRQK!E8J\8H_1B7 M27%7N"SRI$"S?X_N(^.TGLDI^AOPY3UX.=N',8M;]OY1)S&EV51$)G"EE+*% M+%K21FEW-#PD?R\,8-)G!"0L"9W?CY*=]8 MQH;59X%?3H35.AS2.%<;4L]0C/5@",=*W/W77R\KMXVR1CVFF&N1*S:S'-FA9ZQEE@O&]=4LG+<$3P:*%B MR:;99(:_J%'L*JMLV6\QOYB785E)-5JH=]!LJS@DQ;SE M.N>BJ'(LY$606= M"/E5GK!&I%9E3N*9:F5!*B$@KS:-->F/D(QFB)5L\$Y@^2/CBM:QR$DN$L-% M!)+361ECFPSX^'H()SH?@_RDR'7__0'X%T9T41>!E\,%X>/%B"@,7!1$U [W M)"M$#3(^(?T@(O(I&8^JPQCCQA?RAZ)0PX ]&@/38EFB!H&-+#,!$4)5)\7L^'__!_'=7]?LG&4B=.XXU]"VS). M%>M"3BIS*(V7A__/]&V;R!" FM-M^W?;BL-RBGF4U6A*%-TP(OX-?8VBY@2+ M[29E$"R/174-; S_!ARVP$214GXU:% R[F8&;SDO*5% ?9+#6! JM!U6:(N+ MS1:02GJLUJ8G/AW85MB3VS69<@9'3<;[%H(8\NQ4/Q<2N44-OQE M2XK65A@>-JFV"I53Q)2:^H9CR[JCB:AA$$FV*O'\6I6N5#35R-H08ZY3QLJA M2FWF6"@YZ[2!=4->XXQ1%OX9_<(3NLXU<#K(0"_\E[!2WH!RAZ,]$R,7[DQ4 M@GJH(0_@B]O_;M@ZOE!\8ERRX:H^F'$.O.ENUAM>N MRZGST%'U5(N:E2JJ*D>#1>14*/-)J:,T%6YA+C1/+%@&>9&/! W"(E[P>AO$ M]^,A:N8JX%4R*R9H]5XZR585B)SR"Y'&NL/:ERR3%C*@"@3 89]=Y?6_"[4, MOQEO&WF^KY1^C%32%V3Y1TMZ;'-BS^95_7(A5ZS+]DY>QPJW1&E_O%BA*'?. M#57&F15E*0,O2P.J0H>B-/1%-(\GVQP_O,6A)B3 M-1Y]9%]9[T9GV<=Z->[I'NN_.96UWLK'A3=)6BW=7/)?:WU=2UE3:[Q>.N'F M81)N(IUP\]P:Q$H-:H=U"%F5@Q%^X2V67O4K(Q<6)/8WR?@:*57!JDC,C;*^ M65;\H>(A972] M\:L=CPN[+'=6H%JHX(2,12IC6?U.); '#$*$*Q5!)2WO!7I6IJIL0I0@"[P: M=/E?+= 1_!N'G/#),+^6\>H5L\*Z1_D=HYAPAF6H&"O"-&]8"A2($DZBDK&J M1A2KS+F)Y>;BZ-PX_3H;&5UL&($"&8PYRC,:9R) (9!H1O-Q?L''8.#/KG_$ MZSJXGO!IR^LY0M^K22]/.I+/=)8$:8>RWJW:H56.%XV]2) M^^=\*!RXX<(\2_(> %TD>:DS2V)1R$NJ\%=<,U$C$,?M[0 ]4S853YD<^T1) MKYW4>L5BE+/<:)"8GR.-T1(51OJWY-W9Q87R]?Y"]BT#3NH0[X+_PH+GL+D3 M>BU]IPC3M'X7Y'=^L6]\AUP4])Q4WU5P7I0-D"N4 Z>BT=9'?^C_F'U M =SA:LZJ7EYAYI4DADE_PFYK(MYAWH\@.T5/L4STQ^HV6L )$]82DIAPJXL\ M%)ETD6'\:"HYS.I#;P6+&+'L*Y#1/,KN@9T_P:WG-MQF#2 MB,@QG!I3,@>)4J3X1'D$EMG*4MRC.@!+YZ?&0:R.S0&F_\K"P_+,J,&7,Y(N M=\3IP.-34[N,4[/\8BS,X%_UXB9YPG\EQA%^2A+PATG]*=RK M>O5N7&Y:H%V;B&)N&/T$#6DAP$H?N$):6QMTN7'!>C6!242I!D=1Y*^NB'T% MIB3@) 6)]:JWF)9%*G0:6C2A2*2[K#Q&:H'@ ,%'EU9H5Q7_50*TX!B6FF&- MZH9!GH.-PW63^;284YGH4D$&"8?U#62&)%1_3_+FH7#57'"=E_#4YL%JI;FJ M_A=>-ZD(-5U2Z_>W4J YZK_#K!@ P;TL?68OA5T*!'*,B"G 0_KSV5169M;A M$41861U>OH6T%NA[=0CZP6AV7:"Z87+?%#&N3*Q&R!?E_>VGLHQ^FQ4GOBGD MC# M><@I->.N'L-;DE)P+1<33.0JJZNK&?LJSKTJ Z2B1Y5LW(X^-3)"KNL@ MV2V)(<)(9PRXO9 38JP"-J6!F%HZ?@02MGCA:QJ#R#N4K^L9;Q'@J?ZGA%1Z589/9<)2(\>N'K!WF%8X-J<\!1H0HV&T&%0F-Q#M+^&^5QH@ M.TMWKX5I,Q6G+>$R-5B9(JVTC3)- ^Q)CG5+(.EMMV?LJ2R6GO&&XUY.!I5( M/A'O?"^M-M@2!2>0C_=* Z4OZ;AHA(,L1(T8D5I4^ M.?GQZP86O1H. LJ4OB*%+#Z'9Q6P=24[9BL70,0X*N@845A2 \F,)I3-6CRC MMZ;-A4@S6-$80[Z>3T3]TKATN+2PPZM0"M9 P%>K398N&'0CSS"0 X)GKLQ^ M!4^)R0OM3,5DWDCK%-D2(EHAB:.:<%9F-=^3HQ=@ MYO#[!9=0=M-Q\Z3VE%=7KM0,9/NXU,-PEMD,EUWXJH5C2WVZ&F1)<_60ACGP M8]R)"Z%TP: JK%%1L 7\LKI2)I7L1K27_$K2N- RQBNPRT0T)[]0 ;IJ2,J)K0#? M,2H(6M=T/JFTK<81*R'26L]60T,2E#Q'W%4&ZNJ)K9O4OO%:J@HC 6J_\'!9 M[%7WI%B=:?SKWOO_H:/)[X=[_ZBSK&17@,8:Q^7!0E[;YMX7Z#@8"YP>C%!5 MZ<0"%_^V-6GL$*JD5X-\),*I%1UPF:4D5&Q4+8J#QHZ1J6J3:X M=N\@V368=\V25-&QL(@*.D3VKY:I7*32 R[[S(S+U+,6\2P3VWQ<4C!R>H3, MA",O\(3QX?^BS9"EUTT>UY "B&M<<4)!,2H14\D8JCSJ=Z&"9&K*W.IW(J5:\E\M.&X*Z/\BK^].O> MB?@+\#SY;)M2II&.L$G-%+V>>3&?5M7@[WER MA7;Q2Y&'\1)('320<4;14"X#6@+"C18EMU2'>GUM2,6Q]N'UM]XD:V^ GTO5 MLT)[0X#T:MP9EO?-BXETNHJ0\BA+S-INKQRQ,NE"I,T<3."Y59X%V5/EI%GA MT_"]_E50!9R AI1: N.H/5 M_5YA$=/+O%02)0ST%+-HRQVV,V0KJ?=UNTBQ:2S*1E&B:T(^+Y1C0Z:FJ-R?I8WHP=$7;EC1E5,U M)@..W>A(]L-.LXUZ-G7>K;0V@7J-B^V] /,"N2*RD8 -',A$QVQW2[%N@\PX MI@5FE2Q7R%8*PG*)[/'!T;KZV..J*N, U)]1/*S*8IM/U_6LJQ#91.A>=IHJ M&Q0JL2]MYU9C@*)$(*E!Q_$U"'AK%-=C5"AD#]?#/IRA#P**'78+K,"3@R[YX5!S_(LHQA01'2&=\)4_HX5H +_^V<^&!O]#&A$]37![, 4LZ'87$PZ1UQU M- XO\PS3K]22BI2%.*=3H61)GUZ.,D!.&Q>GM74]51&>9M\P81:("9UQ*1<9 MBZI53&.VZ^8I%DH8_K3RI^Q*$-K8@BCTIMGQC3QR)(4VXDQ]^DK?;(5H+#HE M5(<*'ZL.%JH7M78O/$=%G1.'V97*,53Y,>!@7V3*DX')@TVY>3NI[0L"5DZF M42RRKS%?76:Q)!6VM'"0ET>KR5=$JS UUK+MP%+*'R;#KA/HS<"9TS/VWJOV MUMA(5 $^*K=OK_,!LEMZ06Z+ +R[%E"IJB>UJKKKC1[/VJX^U01,EE3\8GL- M*54*T@+C$$D[\13L>6'C_V([^^Y&3Z!/1?D5RV\6,@]XC0-"#5%XO:4E N(. MP>:$8==X0^EF50_L;&S_;7N>M^U/N4;"P #U(ZBV"7>:U,D0:B?]?6?#C2SW ML='@6MF9RO 5S\=3*GQ!98;)SN[+6A=:N5'U&<.=(/MDTR,FCJ2U8J?L9B;] M32=. G>CM,5< MLMY*KCG$GI8552Y$X92OK.PA64:95GHF=O8HERP6QE0(A O1IDXXNGWG;[<< M5]G]DZKR1,__VVV'LQ2'9?%H*DXYI'&50M$,T2].8W=I$ SPX5"4'4H$8\DV M:*,H]"M?0X_6 CV&BAS#ICISL_KSN,0X!*:CYE/G-Z2\04.+$=:2I)8(99FL M=IE_)\J#2:5MDLAH(:"9XJ.*82/Z2 $N^?T6]B MFP;Y4 @&6&N@%HZ]6.$GP1;FLP'&9(6/!WMSBG?)IT6B2U81SD+A[D?>*DRU M&A:LZ.E;#:"F[!L-K3F_=2IY5?!Z\TQT6LT#I=786YU6LX5\H0\,<9@7Q6U, M'8OSP()U:^$PY2H-6U89CLL78E3MSA%9(2]=+I(<)A;5N2KLMX*"EP"OISE296P#/^8&M? M904OJP3<5+F9'\2+IL32:>GP%VSG M^I4.A5]^P=%&]L.6IRWP:DT([27888S$2E@[%W3N)5WGEZCI\Y&/E.6KZC&[ MIX@.CYT8D3#'ZA19I.\JJ+WHY;4;KR]E6_9-1OX*0Z9PB6CQZN$%#8-B@\=Q MF(O(6;$83)5C+TLWL'!^V#;[%.)XB5V$,^VMW@41#*KM3/A)P-?,RQ[?^?@B M;S3:%N_&U"K48AB=8-A $CQ8J/.I(OJK?/I%?E?>H-KXRGB,")H*S*-"XEB+ M5A_ 1.1"[.Q)J%,)5@'/4^ 4M*S"@)W%-*U&$Q$1591]FN82(#2?3O,KS-!3 MQFH=@)#^+2IRK\1;Y=:K6[T5=P);RH=?Q8YAG(]ZP1F^X!!?@,0QOL; 0BD"5[ZEUS0A9.Q!9,Z626DEQ(O,\6NT M7:%P-%4Q:4G2'"GY3"/";E=P::TVK?$'A'92$@IFFZW=NUJ8N8;O_0&*T97"E\M5E+@\J*M]EO'U"F#T+5X?#75^@[>VK)UI:8-N M':H37C G4FZP8&,WV.9.V5U=VUNB,C=Z9]8&91AP; $,)F,F4J+!;\T MXB$ M5,5GS?#,KB[UK4&'-GE;"^3M*NK>/(WD!T(.ZWROTEPM??>RWR Z@%>9P!MY MBA=#"C]9$.#^,0#;A1W-YX6HA0 R*$-2SL8I$#] 'FK79 HNO@4A$Q5RH1RL MF,Z>SW*EQU^I +MUL39Z9FII>XX;GMYO;"68U4SD78[P0^D:D5.I3D_ *!X@6^/XY8WY%XL/+R=F-/,RU@MIK5:M2JUH M:]UV*60:.1?/FUNQG(2S+@%GB0I,&1IHTL(--+ ]6M.:(H0WI_\VWI9%.F=U MD8ZH($FQMFN3II6[>D8:G07(*A>VSE'N',:I[$F>\D4LIM5-+61$!0_!KFSE M-E0*5HQC3Y7KOAG2;_GI"/[Z;P'X^BMN"0:VWC9P2,M83U$F*;1+9+%A' H MW$PJP#A7=F-&$-)= D;?AOV^0V5HB2"[#),^KQ/A:N@2D>0'._[W8K'SELJ8 M1-4?FPO694#KA95.<;M3BINC4]R>')^T!AX>&_.)"<8N]@0"\W<^4<%L59U? M-P2A#:S[6IN16&^+K8%$G$' *JN'T0^@O"3BJ1)$22(GP25?1-3K9B&"29<2 MN,2QTZRVBZP6!27<66]EZ9"NB_2:%O=LH=ELN7O0[>FU]79W M#YRD;EG.^A2 MVX;M6R6%&T>P.I95=U,^%,5=LKNQA+?/$&!6^LC01;:S*NPZOTDS?6"N^KRV M?2>[Q9:VP=QJY-.L]U"U#!*OA+-L7?5[LBC[ZC;GU*UJ[!*B=LOLN5FC+2L[ M:V0KO+&%Q7E7G5>TP9E(U%$<4*LR;A'D_A(^7^$'EQ.OT-AE M]M1"#Q1TZTR%IT9T ]QA!G.S;ZL)_RW+QQ"UYELVFHM^ALNX=\('6P-"REI* MOACC )K%^AS9!>7@[=%>V0F]:(9(A+TL.9FRF+'-X]3 KBL+<9:6B=U\1(OW M3HIW6?0-.U]3&+HE*Y\C;IOLR2);!^"=C:Z?K78OS4T7M6)8T!KS!:_NO! ! M'?&!RLFYNTE2K<;)*\L8@=$NUB_NEM:P#<>E]GH(8()BAE&,LLQ6;T1G^-9\ M@JU11-HZ;)0X)U44IE*^2K5<[6/M/!AA^T4J+)J\X/7+)'KX: Z\R!2)RY@E M(EGCRG=AF7"M%)8U5ZH^MHW,$S5A$%:E&\O.,3!-[%0QOK=N5>>>5]QD.?FE MD>\B60SVW,E5 Q#1D4MD1#36FX\'I2^]7";\:@;F8(+3N*G$N/X$=D$$TP@T M$8'Q,"L_*C7*U5];0CERO*H61ZJF5AM%]'95^L0Z. M12%_5P!*=$A%3V.%VM+2N,?9<.&[N^N:?C/,82U@Z:K-ZADGDYM*)-955"Q8 M?8TWUC_ML(IQPF:YLEM7(%J($OI&0<-"Q^[3G&5\IGY#=BC*5?&4]N5%>)(; MI_L'^\*$&XG"^2_C_$KP-'PQ9\9?LV0?;(CU=1,2\K"'?2ZPRU%Y%B?S*3:1 MJ7J7PK@O&NY>@=B0%9/Y3/134CTR##;$QF-5'E]C]]'_ M,WT;$W-K=/W%KO5+3>'KD==V&O8_+<.-;__]89?-U+8?3+K!EAJ5VZ0);;(V ML6@E3<(!EMSUE\9+Y)4E7XZ\+-+"C"2O[,PTFQ:S$F%#-GZ7UTS,$A/^R[>B M18I-\3%N2YJ\A BI^T<68Y'BWE2['#RM8X]-^YKAJGQ&,V' M599(^26A]5N"_LL3[.+"SZM6S&5#;KJM5;SHD6]@XL>K[ Z<;?,=/UW MEZ;?G&BK^D;->&E$KWD\K:PEJ8*59%9^OAQE ^9WC*4ZT^7/J 89%Z+Y6$VA MZY9XI<-04G1C043=?D,SD3!HB/BB6EXWE0\$8!*35,#"/-FO>M"KN9?OD8X2 M4+!0&:S1AV5*CYR"6/F$3[*J\6D3KQC51^6<%'HSICY-\V%) HT6)B(*@Y]O M&?IB 46%8XECQ=,4X5&RL4"X$BY"P0,7BV]D^U7L1362;0T77J!@IY*Z*>N, MBT2QYO#SE1A$EIALY\H+QB5^<5 M/[^3JV+J8/QALVB1KB6P;/=/L2]1+JVXP^G\PCAH% W",9(1_=>'!Y4[>B8, MJ8;)+:#.FOA%LNV8XA_ %;#7?8+O;B9D_KIG'/6QS3<>U$H$J4;F"B.JV<-2 M]%:J4!*D+)$M#Y7^$$NGP43 K3$NH5A0I8"=FB?"H)?AT6OC*QP_.$Q<(-VO M O4]6A!^-^JR*ZUI;(\>"_\&YKR5M2N]NO5[3WE2OSF1%HI\CB$DY;PK,);PF# R&" M*7=:I%Y-5+!3?-+4U12=JRMB+\'4$/W(!%GUJK>8ED6:XKR-P]=R48E%A)," M'UT"?OVXW-)L*?!T2UE\LP'+2E-3'F1YRHQ?LW\L+1<C%!79KF/$J&:6\H #Q!$":T&-EY\"T M3KP66\55_#6NWUOI;.@\E.8"C!"&"+0R;<8Y>@@0"#H/RE6*S6XQM"E@VTON M.,J29,C+]R6P(;-"804!8YG#B$QY421_UR/# R9-U9VU/E?Y.63^_ (LY&T^ M(BE@5!?/6^]N]P6]X01,&MY6=22E$G@3DT$&4G]76BVH/4^!/'30M%O!ASJ[ MXZ8RP_6[744JX [@+5DQ4/"5<^P\]E+4@P"Y'/-$R)/^?#:5H#,5!B-%V()F M&]0-_*%7JYTV;>O6:;))/%TJPTM")>"-,* 6/$/Y_+(7(6WWG-Q]?+&6^JNZ M$]]R[A=85DL65FSJP1A*Z?"DB/6P\A<4=/'<1&*V8ZF7*STI=P)B O45$I+Z%Z(](! MSC:A[06X7C6<*A #>V'O+M%]W"R/3(!4R3,>M!T7[HJ^EP^40^8LYI M(P(] MM(MDZV-AMU+[KA+R4:."-%P=O'J;3V?M@X^JF+J*"I.R6K_P:S!B>)4IAYPI MSG*P_NGP&C'N:UG> 20[ZF$LS)Y)2JW;#<'9F F# 0@UT8&5&6ZC%KMODII MW933BS-8V4:Z*F0=CQ$-O5W\( ZR[%9Q2YR[=)16(E]& U:\4 6@Z].)ZPHK MXEI&@KT4RPS7JDF]%!J_--LO5.$=::'#V+'A?8'"<.7C2U7EBW[=9B6@O2J. MI)">[OFE=8N.WZH"+>*#)3H\]AB\[]<64H>1_H2@JY*(;[+,PSI4L!C46(%A MIUI'"!ZLR&W!E8+@],8DSZ36)B(6(L5Y(4Y089V4L83:SU^VR5W>LUM\\(VV M+RL/].)F*]?Z4IO8AQ!0XVQXM]?=5!ZH7?-WJNJ?1:\=.5>O!7U#L;!&^/7A6TJ'U 9\'7_:EF;6+U! ME2?FLILQ**I\ACK KFRR5'FV8*-]$!M#P6D[7<952+?]9S/!V>%\5^Y26T[AV;XJ@Z9@U M#:8%3("FS%TEJ=^*3B@U>S_ /F@(K2[M&V3IRV_MJ5@+6 GCZY8I5<]Q@3"5 MS[_7NKAR\>!:SK#WM_ 5\-D@3PH9)6P^6N3I[$IB0EU@,]W!2"8%E*YT&"*G M-79E.5;A#R['6* 7>)95S4)8-J%E_+R+2-8J,D5)G.\S&88F ;"!T(99U0&$&;"N5W 81#CJ 9:O44P[#]H MP8<]XQ3(XCN?#N%)%;5O1\)7[EOU2E%N5E51:K;14;:A"FFD.R(3,&45>=14 M<6/MR@T1K6YV'"@]'-YBPFDQR*9=IS,UZ[3*7SR3;T(,'L*)!=!3KB\^GUHNRH/+FK M=(IJQ049M//)RXB5!)*<\T3$0(>Y2,YN0A+!5[(1J@XJ ('I>/-6?9N,%0!9 M912T@42&"UJ%AZJ-FVPQS$6;N+QL]S86"7WU=-8K/Y6Q>]0<#W8I+=6B1;D) MA(;M;%7DH4KZ4AE2,B]*%2M7E**RZ,.:7*0M76DFF)LS4#GQ*U$-RLIR,^'8 MMU@P=U$?WD@[*[$,,.ZR#IN@FLLR/$&9F2$>K9%&ZQIV3%:0#4V;?FL-6M"5 M_)M5.H0Z.8*N'N; B%P$[+1=U2I-,G7^FW)X*#IEY_+G!K(K:MDH0X#\BPHI MW"R#'FV2KM%;2X"$"JKJ1M3.8'C[B)<2&I*"J)DCSH0YL9K&TG0RF('A.U9*U MSF/"&RL0%)FC5&8HY?-9F>9=HO. T2SVOI1T=>"WUCY&,8PTJ8+Y%1#B>+5* ML[JRJM0T5,H5D#H-6=C0]H2RMP2AT(*CD#E@ M03/"_NBE= +@(+_GZU8 BI59\SOGR-\"+MFPG7^^K+R?+VZ.;*'RA&Q8<7%[ MT%PU2ET3QCT=H);]+Q'!>\/'' $9S@0X@ZBE.1JS?> I("#@J]=F?H5,%QTB M69*I/"WU_K=MV+N7^;X"K&@-HS:.I=NF4IS$+6QR_B M,S2:6]PEQ:QH!4;4<#;,,2L]*#^69]9JO2L]J@M9S6$SB:Q1'2CQB%?)M!_* M+(.=PAUMN#?:!7-JD9IU;U.>C>+YM*@2WV[.W99AHF;:_(HZ.22B4ML0VI<* M%)6%<$Z=ZZV*YVXM5EPJK.N)/BBR3$#0"B,]'P)7']*I<5 !P C MHA1DE2PZ/CBJI.#*"J")>G=BV#TO#'J69QD%"#A)L/#XWPOCE(OX[ &R#L5: M98MBY!3-3-O2X3WF;%9F@"O &%@ERJ31*%!Y!QE/2ZGT%0V]%+CQM&?\F0_& M1C_#"'=/.GTOZC]V!)M=[6)=5N.0\XD Z< M D-XJ.*LX@-WX:--C1@.S3IU&']"Y[/RCAN'?3C?^1#TC2FRFBK4@=6I0ZQ6 M@,.6PND7FLE,X?5BOVNSCC*7D&HU.J)X#455N[@&)8@7F> K\+%FZEQKF!) M?594:?X%8EJ4XEU ()7<[?3D8ZUFEZHU"MAKW8>IH]$61,25GB6Q\^NH#GU] MHOH4BY91415ABXJ8\+&*H/9%RD_IRRN:WKYFX .]E(V@-1R;5J1Z4Z&W+ZA5 M&7'"-R>(557%PI$8\!&BS^##XJ#5<(#R-$VS$IL= 6&*0GD&VPKS[:>CT60> MCD%-_K !Z"Z^R0$GX-LE],@&'.#VHRS:='X#-4+T0!3!4K@!<1DY+^JBI*E MEZ_7>:U: 4_ G%>F&HA=*^8P*31+X3LJ4ZY"M!=>9SZ6ME\VG6%\MG0\RRKT M:_F\&L=5/A]B!@601S$7R1CPT+6L6$,P#A@6]AR5.342!Q^T>;"%IV4 S>28 M879;"T89]I:K&>=C!)PLRZ2+=F\)$39VQ-+0E<-'*"U* MUJ^@"2I.*]2ANJ':(A02WOM*(JZ>SH7X7ZT.O7QU>M#2@M"[5CMHTAS+-EW:OC4>/# PYT,)@/#_L_?N36[;R/KP5V%YLWO&51Q9)'4=YZ3* M.TEVO2>)?6SG[/O?KR@2&G%-D0HO,U8^_=L-@!?=-1I1!*G^(XXM7@ VGGZZ M 32Z/RQD%&/<5JQ^X7YJ;@3X(FT\PQ-\?.4V<^$0;^C5IX&=NCSM(@;OBN M M#/<,?9X0IS1S%0DDWGD!_W[^T+:Y9[Y0T^G*Q9HD@O_EQ[CWO]034]MD:] M*GH\Z S,?L-Z;%E6HWI<(8XKZW%O<"R.WW!6%LR,>R9@+/[[E?6J6*=W,8LP M-Q/FXMO;[-]R'P-_.M(&;^YKK!D-\9DP&1'']L+D<^[E@0:A)J6#8E:G2GCX*^&A(CPT$ Q*>0EGEM\E_%FU.G-@3DE* MTW8_2BDT*M69)JI&,[6CB?ZF4E!5JC.D-_7XY14L-/[%<1A;W71IT]*B/-D? MWYW"/\^33;4SFHL,' F'A$/"H5H!^C:[*U2?;G4*)&B-7X(:92: M,$JD:(T?0AJE)HP2*=HEA["*99W-6-JCE7+4@"']*', R-.WZQI1D^24$]/& MLOMY!^!A73)2#SY'!V:>6XOVKI20GI \NDV3GQ7QOYCQ8QCF0!RWJM\M$%<]@ (7XZD')Z)SC-W<_N\,N 9P WE: ]W1K3 S>;("?W?5K MEP,]-$_; R1NJGG@S*[>M8B<&D5."@E&J;X<6 ,A'M@WS;3TP:!//'!!'J#% M4"("]8A@H%N#$?$ \4#[>8#F=/N7+8;5;XFMC)X^'@SKCF$Z2J2J8E2M($_2C?/IAJE;1NW'RD@W2#?4TPU3 M'_0JF.60:JBB&A3PM!__AG)GMHC57CZJ8WU@D3>L#*W1RDXS5WBOF4*&^KAK M$(40A1"%*(;WIE"(H0_K/U9(#$(,TNSMI;9/00>J'+B!5S9/>O=AG,3\I$VX M8)&=0%\U]FW!@O@BQ4->O"I#[5/[U'[+VU>(+Y7J"R4OIU&B4:)1HE&B@$FE M^D+*='6CU*Y%!:7Z0J4SSK72H853;;&_A$8]"_?-6YL?C&L/"50=<8J'-A' M]P;V#858L.:1@-#W:@B7R710!7H44\R2O6%>. EA:'TL4D3%>* =G, MS>?VLT#/H,SJ5656IPQ7)^V!=/51GU)>7C+%E7(K,>U&^$@WAQ44-R2 $\#5 M&#M3[P\KV,8F@%\0X)1];^_H62=FZ"!NJIN;#'UD4CV31I&30H)1JB^42/D% MT\R!;HZ)!R[) [0(2D2@'A'T];Y%/$ \< 4\0'.Z_7.ZGBH9U>>>Z_JL@5LA MGYGO0_]T[8$%++)]OB5BNW,O\.($\V \TLF0$]>,^R8%SCH\ _KRXM-&X M]K1D!' ">&4)M4R"=[/A3;%$^UT4.AC22&(RAGK?(-^2PD&O8 6$B&#_EHAE MU)Y<7'6X$Q$0$;2="'2S_B(#JJ.=>* -/$!SNOVKMBW%ME6X8(WWTUA4-D>T_-VLEME MSVX&NM$=UIA \UIM6>L"AMNF%H-:\\J26I!:J*<6?:/VTS^D&,KN*[4]C(R. M!K60TFX,2Q];?3+U"C :K>8T')K$' ML_0!*73)WBW%]XWQID7*0C:%X0V15OM!_>P]YJ._#22ERR3BB0VBIL4$HQ2 M?5$IXKYI)-#KD^]-4?/$ M?- C>&>=Y 9&( 8@#5&(!F<@?V0T<7V.QH]\F9 M#\F,17*G0[O)\K.]UK6 )6ILX3?-,AD5S%$IC6AURDCH?A;GCD8U!J 0L@G9 MU9W"I?S/S88WQ0;M![C1IS,IC:2FFUJC/E7'M5JLI)!@E.J+2E'AC=-_TS"( M "BRFQC@6AG L,8T.2$6:#\+T!QNK_@& SK=<89481,V#2.6;7LD]C5VQ=H&K;U*(W/N]\CM2"U*+I:M'K4[+U%BL&Q3+M';TA'4EI M'Z5ANK#!J$>F7@%&HQ6=9J[K7C5]&/K )/H@^B#Z4 COC:$/4^\.NL0>Q![7 MRQXTZSS@8= )FI?*\&,4/GJQ%P;:-(PNLJ74[E 'JUM!ZC *=:A.%PG>SXKD MJ;TH!J&;T%U98KPQ':)I-KPI &L_?>LC8TS':!I)3I9A$CDUB9P4$HQ2?:%( M^A<0. 724R ]DV. MBTELYSYS=D4V9<%%-TPG/A-7-R2MEER_4W#G_DB)*FKV;P:ZU5,RGNI9%HMB0)/][M*'APEGJY@]X((B A(+8D:@]H+S1 %T3%%]4;/ M4NZ8(AD/,AYJ211/?8[' W)?U;8=M,Q RPQ$U-=-U(8^Z-59Z9:(FHB:B)J( M6BT^48^H3=WJ$T\33Q-/TR'G$]BCN^V0\YO$!CV%_[O>XP_?PQ^Y$,/82[P0 M ,U\._$>V=LGSTUFT'D@QIGLM]D9]L67;GO2G@!%I E[*P7?+;]B]9E-L<_M MZ,$+^!B.-X5YY&>ORNIH$1\8*M\+V*T4@6'R;^D-PH?>6?[3_8R?O5F119S^.PU >^4VW8I_?#])'KSP[8>;7_4L#K]_4_O M>*ZOPLCPAN^\!.#CK(S5VPE%L\S4,FGC/7LQ,&5Q$E]Z'+ MON5B21>7ELJ ,]5!L:P9;4"=\/.&/1S3=*'RD+[Z09MX838J&O23^3$7_EGC1X9 M?W/L1(P%T'/^_'%P:J 5_#)CTG;AIW(O5XMG8,FT!*[8<^BIX,,0S.5)QG$: MA7/^=!K8J>LE#"(,+%O'AB'FN'.P._.*%;@S] M@$8#?.0&B#F9A2G(P(U?[[:^FX,B/U6.BIB8@]1]>Q&SN^PO;UTO7OCV\LX+ MN.SX0]M8,_<\.UWI?;TCKJVM28B+5K=C#*S=U_<^O/=BOS/LC4Y\ M%CJU[V+?.O79EO5XT.D-QXWJ<84R'@_VB$+)'ENC'O6XL3WN/T/SMBR$920? M@'= MYYRZX%S<$KS:&56:PQ M\-9<[5\I^,Y65S]B9;D:Y!&*FH:B^YD=/# "S.G;+1<\4UT/1#Y[WXAFCAV0 M&O#_YGV@?XI 4,O0>491$B0J!(2QOC2D*!1KWO4-\)*NZJR5#%4\3E\6FZ)'AGM[O]I3-X;8I0/6 IV:B-N(, MXHRJQ#;0S5X%U8&(,X@SB#-:RADWAC[L]55,34)\T;!DL)4M2M24=6/TFI+% M'K%GH=:PJ6@&5+::@)%0-3D)%C$J,6D']A9YN6@.B5*)4HE1: MKF@*JS: 6&]Z^L R:;F":/7J:)56=<[!'Y9UU*J.FA$<3;JUBFB3S:/G;8HV M.92 ;B=LS7-+]074KIS'8'3U7A75\$Z3FJK8>X%G4(%2$L*?M^W?'78)X 3P MM@*\IUMC8O!F _SLGE^[:CP,S=/VFHF;:AXXLZMW+2*G1I&30H)1JB\'UIV( M!_9-,RU],.@3#Q /$ ]<,P\,=&LP(AH@&F@]#=",;O^BQ9#VF9JZS_2"".Y1 M Z#Y)4QL/R\TIV;XSMZZM%NWGM62L:KQ/4?+55'_RNCIX\%0V(EXZEZN;"[5JG,0TZ MY4T615V^4\^BC/6!13/PYI@4.JAS;>.(>ZN.NH2QQ$VL3:U\U M:Q-Q*^,1*L?=ACY4.)\(L3>Q=SNBDMJ^VC6@H*2+!26]26S@/_B_ZSW^\#W\ MD3W"T>4%+B!+! S-[>C!"SA2QP5D?OA^$KTID'[B6W:RUG:(K.+J:#@>@+7O M!>QV)OYMF-RZ?I+A1UJR7*!B^4MMZJ=.DMH)T\) L[4_4CL"U8,+$SOV8LU- MF9:$6C)CVJ,=>?;$\[UDJ7F!%J:1YJ0Q:"2+XO_2H'/IU(971:"*6NS,F)OZ MT!*>J\>G$V^.%\+I^H,.]!/[HB7P>C_N:.^A'Z#0B1<&NO;$M)G]R#0?'D^8 M"PU#[P*XV[$7MH-=@=X5;3.-!7\N060=[1VTK44L3OV$O\:&BRY;,#YX6KJ MS\5^+5@T#2-X@\-X7_/W0D^3F1>YMPN0R++<1A1K\ A_V@GG\!4.=!P^V0;# MNRH&_HZ\3UH:\R_@$EC,;&C582EG.-[T% 9, \'-\9=8FZ0Q_!##I[05CO\& MD0/Y@]NR2"-G9L< 0G1HA'Q=YGM@ 3QHT GQ+R!0&"TO=.%Z%,X!L#"B]A+& M$D%@+Q91^,V; Y0!O49/FT,'9O)6' 57@OQIYCDS_@MO3 .4 YDXS.UH_PR? M0$,B'9 SM_\31CD.V$8/'1#KA&% GX>C"OUU$$.^#_^8+ 4X),BU)R^9A2E\ M)0/D)LN.=A\&L>>*3X([X:TPB'!WM-06$:#'#.4%F M3L3L6(S\=V9GH$&C/DH0Q_ [HS/,?_ $ZR2SB F^B;UO&5*1FESM7RG VNKJ M&M;*U)'!%@P0\0BHUI%O@([@+LG)L3W/I8WOQE*!.@P/J$$$WYW1]PPZ#ZB( M#B0[ 0A-8Y;@5_B@"1$"I%R+I[U,M%9T"(13'M'R /(1[96&N)X1+LAR_]BKBH?0]:ZK9Z_16!W)0^N$" ]G1OLR*/N&O!U7RR8XW M1S]G'F[A5 MHTOKF?7:XW[*;?A9AS+M[!^Z%C9KT]LESDQE(&@0IA=HS.\.^H*)M3]J3./33 MA+V5:PS=\BM>;9+=R@I#L]BN-UP59/G/652LP3RPVPDPS-=;>PH?>6?[3_8R M?O5F119@/F[7!+Q3;L=/E3<&N/2H8:H@8=[PG0?^F^>LR'RX7>;W89QP;?@ M7 X0!:/[$SCDH %Q6XWJ!YR@9Y\=YI_-Y&=S2Q?!K$?@ MJQAF2_!B77M@ 30B)L&V"\CT8B0_H(/L 6$XIT"$X1.?-.$JCQ;/PJ>8$=?6-DG$1A_=>['>&O=&)SW8[ MQKZ+?>O49UO6XT%G8/8;U>->9S0\]=D#/;9&O8:A@GJF2;<>..Y^I/]6Z8&#\8NV8 ]VN+(-V='&>L#P$H?Q^1K/UK6=VK9J"45- M0]']S X>=F<()\"HE(^F'HA\WK6$W"#4M&Q(U.K,@<@J(N0&$3+=JF!>J>J- MX@X-J '_-^\#[4N^7%A1N.;+2*6RRD;U, YN!)\2O?P25)Y!A 2)*B%AC"\- M"1KUND=]XPP.L,,UJV=)HA:UL,:OEZ#WJE%=3S=[765](]4U0BVN4TV M\09-.FG269%W;>ICDR:=Q*A7QJ@T,S\#=_2,HV;F:F[!-^G6*L(%-L\0MV@J MN"N_9543LDUAOH#.5?,1C*X^ZE. ^?EP61,U OT:9O9'>M^L_824XMA3*]:7X/VL:-71>$#P M)GBW$]X#D\#=:'!?-O*M:4[?B,Z<-9&5C*'>-\BIO" QT5I2$]>3VTT" ]TR M#"(!(@$B@>LE =WL$@<0![2= V@:MW<1CO:4FKJG](+PM9'ZP/P2)K8/LHJ3 MF.\GR;KVP8/&OBU8$+.XVE"(4PZ!9U=D4Q9<=,-TXK,=V224$OA9SX<_+Z3B MI0)5T\$R,5]9[>=FSB-;Y="J5M@O41!1D(H49(ST<:^"U5ZB(*(@HB EU40U M"C)UPR(&NB8&JFY^VZJ5%T.]4YGUVPXR'^?GN*9;D)ZE]ZNH%%"3>)7#+)V< M:>PF!Q$V$;9ZA&V-]>% W85/(FPB[.LE;&)K6ITI4;4^ZHZ496JB::+I1@+'GJ3V,!\\'_7>_SA>_@C>V1N1P]>P($Y+A#RP_>3Z$T![#T/ M&>8FKHZ$P"INCH9;@5JCF\&6-WSG): 0S@J0L:BW[P7L=B;^;9C?1,%C'BN4_?:/*(QC[5?^J3LEP973"UQ03!$8M5V>]4FFI-!;Y/ AC;)B MS[$VC<+Y>@EHS8Z8!E;4>V2N!A_I1/8CBZ9A!/UPF/93\.<2^Q:S M!TP&W@E#8D*1QN)OW!^S M\>(]AE^\T,4F8<0#?.0&&DAF80IB&E;Y\\-YG!N,#X=H43+J,Q90/R M>D=<6_.!Q44+KO;V7-_[\-Z+_Q;YWZ;,MZ/.@,AZ<^6T^/ M>YU153VV1KUJ9'RZ@M35XX'9;U2/*]2\BGH,.!Y9QS_;&*^\]EL/'"HXTMFI M- 1D_*+Y\\$.5S:;'G7Z:Q[<\!)G'F818]H<6IG%X*J[X#_]*PV89G7UVN;9 MA**FH>A^9@DNW ]8U@/KF?:!]R1?V*MI >QE35%9,M!X:,;MF]Y3=Y)>@\@PB)$A4"0EC M?&E(T*C7/>H;45#$ E>-AY/.$1$%N#LB'I4?[\H<@:N1H%J=J30&C0:]I M9K> MLZT)*"7"LYXB>UZ>WZ.DIN91L9[>[U9PJ+()U00V8VA#WO]C> !]02G'-C4Y(CJ)G U+%+7HA#FZ+5R M=?6(^8GYSRVRL3Y0>#)Y51XB919I2@*HEW&\4M*ID3+5)D:CIYN68H6CB?]V M\)]R@E&I*S7S'SF35^-,WO3T@672,D)SB50YP:C4%:7J6[9HK<6RCEIK43-N MHO9;%:MHJ3[>[K=GZZJJ=O594XBJ9O$-?3"N8(/Q-)DI.A=0O#@0P7M?S:QA M_05/"-X$[\JV?;M#ZZSSM9= 6SE/@1*'7_VLK.6)PV^L\8G[W,3==4'V[[H;M'^F MUO[9"P($1^H#[N.6JC847D3A1=7OQHRZ_;HC,BE6G( M)X@GE(*Z:CQQ,QA2L')K&**ZN5N[5@N,4W=\B=V)W1O$[GW=&M#)9B4XGD[V MT1&9'I"I$%W6$&D 9$ID:DJ72$R)3*]7+:U[IA6'II+I,H)1J6N*'5, MNFD#>6/V*)A#K6".XTXZS#W7]5G3@SGF=O3@!=K-7W<7$KU,,*849\E266"I MW#"=^.S8 A6JV?U!?4=)GR5.19%Z[>>4VJ@2_0HRK)%*** 29VO_17"OO'?4 M/A$F$>;U$>8^ 35MRJE25Y0X"-9*WJCOK#CQ1DO7JE3JRM&+CB\>I7,XI H) M3J&N7&X,:91HE&B4%%['K_U6OI'P)K&!V^'_KO?XP_?P1_8(1[ 7N(!>L<@O MULVY41@7L/SA^TGTIAB$$]^R4Y^V#_XJ8HX&6H%7H[L%L+X7L-N9^+=A2AH> MC9-8AT<#][C:DP?]"=-HO6,2T@?E7+K3^X*\@ M]^T.;Q_%FL,OM[5_I4&3+.ZNF9V3?@S8O&".8GWR/RESD?< MCN"N).2OXZ_MBO_+5SMAA,^$ 1_6!7Q/Z,9XT>P:8\T%V,"S' >)%P;\2C9( M<^_;[@$Z2?%*#QFF"J/(&[[S$C!_SLJX#K>/ZR<6,SMR9ES"/P*(_7 Q!XQJ M/WU;L !4KZV 7OEPM_3A3'XX "V(/4%,0O^!3-((P3D-HX*, %S_ 0 C/8 Z M^#[^'[Z"\XJ-N$:(;V_*1MQSTNEH7V9PEVP(2 ^$"1]=[L.-]UIC\X4?+AF[ MC9C/>4C2W-/, MXPUWP\=3K/96]:[$#I."H/O+-=[6A"O$,8B8H[05/S& M-1:6,@RCI<;^2#TN-/$@= ?%\4V. 7]Y1SL\IL MV3^ Q&UHUTOTD$& M$>.C/EEJWYF= 3"E[\.8Z!H@W3+^J@.O1HB0@MMWFY9_Z9)?52UH+.UAYRRYKG\0>:A>+'CT' M7L61S842:O>_WO,V(_:0^A*QN6K,8#1 !]&3< 6$L+RUTU=TM"I 4\%^A=. MIS%+4)A^"*86%2+7(*'=:YTZLWE;A+&'NGDGOO61O7WRW&0&T -D293US,ZP M+]ZX[4E[$H=^FN"J'5\ [)9?\6I3SU9F<\U2M-YH59#E/V=1L4#ZP&XG +:O MM_84/O+.]I_L9?SJS>IPP6>O"7BGW(X?VO;Y+Y_!XH(.ZMH_6, B.3=XYX+X MP&Q*^]MV5R:7P4-)!O:J#+9Y-?5Y$S!WPSOX/"ZRH9_P#]DX]B_UD^SR!NMN M:\F&_R7"8V /F3L S< P?F5)Z>63U//Y$S[G>OGKAB?"Y3Z:MS J;/PA1Z&3>PI&QUQYR?!81^%$/R$^_GM?X#$(,/)7.]SP M(_*FK.02K/F[:QX"4*!P5!/FS + PL-RCV^PQ9'@+^$7X:/ &(:\^%)?_NEBCX=/"!/?UO0_OO=CO#'NC$Y_M M=HQ]%_O6J<]2C]O;8VO4HQY3CR_6X_XS:+,Q.U)-NO7 ,9PC/8M*0U#'+PHE M.]CARC:V1YW^VNQ@>(']Y"^[)P6U[3$3BIJ&HON9'3SL+K1)@#DAY+)E$/F\ M:^&@0:AIV9"HU9D#@4U$R TB9+I5P?/NU1O%'1I0 _YOW@?:EUF8PIO<>/>1 M]XH%>FRX^6JNEI=&F]?#.+C\?TKL\$M0>081$B2JA(0QOC0D:-3K'O6-O&'$ M E>-AY-.V!$%-'G(*_,%KDF(:G6FTMQO-.Z7\)I:ML2A5F=(/YKM7UZ3!-7J M#&F.2IZXFJNA3;I5L;*SSP/FU@CEJG&91WMZ/-I3O4SM6]5=+1FJF*V]++;# MR9-J$5M?W7*2F])3#W5J%HPCPB#"J&QV;E:0;XT8@QB#&*.EC'%C#"P52\(0 M6]2\9?35K4;4HQ;#X^JAU#.R+\Q'>^ZJ32?DHJUE4"VS,;4$U=,(MI6#JBBJ6-#1FHH-J70M@4R:!$O(!V(_-HO=:U@"4UUQ@Z3J+*N0I&!0LW MITE,5@!M] M=8LA$S7MW>$UR>@VA)44$HQ2?5&B;&U3]=\T#"* RQ +3 3 ZC' (8UILD) ML4#[68#F<'O%-QC0/E)3]Y%>$%HX:@ TOX2)[/\VNR*;6BM-3[,X) M(7W'2511MVJH<*SDZN6R[UEEN>D/USM36;SK(>E1TAJ/1!L3L5Q Y59-PU8,L'9]I\+X& M4391MI*47<5^,E$V4391-BW0J$:83A- MNI6'#+U);" _^+_K/?[P/?R1/3*WHP @KAK. 8BR[X7L!N9^+?ALFM:)://OO">GM?TKDM?=74 MZ.3S1;P2:K4.(:1/;MP.'Q9WC1^]*>$,DI7@ODU+\))-2M!7D*RDXX'\K"%\#]-G! MO([EK'T.\JF?.DEJ)]"\^'<80<\#S4FCB 7.LJ,1=-<&\V,4/GHQCA<(*X/P M%_L;B]L*WW\S0)L3/@3PD O@S)"W$DQW#OSP85!!^IF8@=M=.PFA9?N;)2V8S MYG/5MW-E@RO<=*30Z\A+EKR?..= M;3]DKT!@4389V@T!<,2);87B,Z$L2>4 M>!J%<^@->_1 MJ2V5%$+50;WCZ/UN4"@NJ@#@)X9/YZ@L7B0TW##0L(!O$WL.1ZKK^6D"H(QG M8(%09;PXLT=,A)LL;O/_S?^Q]O@>\ BRZ;>\XS/,UF(?KG;*P/&)&DC'P. M;:/7Z1X+.+/W,FP;1F=P=%M[]:@ ]UY[M6FA-M5^K\3.!?$7(W>K/FQ3G!=# M_(!MRTSI'?\Z\ />/GEN,@.D A E*'MF9]@7;]SVI#V)0QS+MW)9LEM^Q:O- M/J\L2C9++WOC54&6_YQ%Q;+M [N=P%!^O;6G\)%WMO]D+^-7;U:]"OCL-0'O ME-OQ0_OB&4AVYO3\,MWAG7QB<>HGG"<^"'U"QP[4X3-[F -(CEO(JJ[;.Z!P MPWUMX7?'.A" PQ8)4@D"&P 0[Y[?-WY2^$D:=1BD6 S2,WQGOJ2U%S.ZRO[S-UJ2]@+?/'UK?P8"72I49CSO]@<&U1IYRE>^7&M41&K6VTRB? M[?3ZUN[+>Y_=>W'8&5FC$Y\%;W#?16LT//'9 Z(8=$_]VGIZW.]T>\V2,:&B M^A[#_&[8K![W0,9[7OR2'O>M7A4]MCH]ZU3:K*?'%7)%=3+N'?OL@10/1SH5 MU1[2>5EDP\$>'Y."7S9PWBS\HTY_BZ];=2#$E]WK.10AT;);55!?TR#U/:/Z MWL_LX&$CJ8R*X%,G49$*:F#TZU>#\Q>2J4<'<$VV91IP5HB>8;@)OY7BUQ@3 M?L].L6-"Z+D0^I%%TS":8V">]E/PYW)>"MQI-+2JH$;"W=EP]UOXR'SM[QY/ MH&@O6 J?? GD-<"!5& 5I *4-8;;E&K?W $G]2/' M*'13)\E.M%=;\ODYDMLIIW$-4CIKGN&7E,+>ER^X#L'T]'ZWUZ!JX77(Z*S% MPI4H\$.:W7[-_MM?1J9AOB7=)MTFW6Z9;I/5)LTFS6ZC9@]TLU=!M272;-)L MTFSRQTFW2;=)M\EJDV:39I-F'R&8&T,?]OJO51&/D>M#[XV+9<28[<4 MWA:!N_9-ZM.#-0:=8;\)^]0\2W*V*;V10/MBLMN9^87BR$X7F9J\-M3[W4'= MX3?'"D\YP*D9>58_3Q!5G(+V)K!%)3$1E()X@GVL03IFX9Y% 041!1 MJ 5UU8CBQM*[(ZO&O!G$$4I&-+3ZZ/V-.:9,,90IALS>U9J]BD+VR/21Z5,; M^)4$\[78_AT(YIN)?@V@GT]QQ^^AS^R#O+F MO,!E 3PU*B9I/WP_B=X4*;76'YO;T8,7\,$+%[Z]O/,"WPO8+7]H_1/AI6^?/#>9W8W'G?[ X%-K.3>3[Q>7C8Z8=J_- M;>5%D&;/V'-][\/[+@X[(VMTXK/=SIXN=3O6:'CBLWM;'7<&W5._MIX>]V'P MFB5C0L4E4#&P^@WK<=-P;'5ZEM6H'O<[QKA9J 9'VV:#JQ,*N'NG/W4LP/N M"(OV.Y+RE8>V\)ZQ#+UY(GIX@87HS]XW;0YMS&*-@1_F:O]* Z997?V(C9?, MG0K"@!WP1.G6VF]505=-XT6Z>K#')VMN,Y7W?F8'#[N3ZRL$O@O>V@"39?3K M5X-C E"45P"S:W9;!O^J5KU.&FM";G7(-<:$W+,SZUA%>#83H1]9- TC>)G# MM)^"/Y?SS81)S836&<:)<%<=[GX+'YFO_=T+DQF+[ 5+X9,O@;P&^(TO6^E0 M%66-X3;E68CP43,'$4*N!2$\D^2E$4F:#2$%=?)#9((20V:!!7QOTC:.3 M1 %7C(:3CCZ3^C=WP$G]"0V7+.-002D3E=:'/\GJ#7?5UWDY^_8I]8QZUJB> MU=V^NI*AGE'/J&?4,^H9]:RE/5.KQMR+)R>7R.OS,0K=U$FR$G.U59C;D-Q. M.5U9+KE5!*F6.&NL#[H]2IW5H+QPZLA%I:YD@T/L1^SW',T>F8;YEOBO0?Q' MNDVZ39X-:39I]K5JMM'33:OV$M>DVC1IH4D+T1]-6I34<[7XCW2;=)M<&U)M M4NVK5>V;GCZP3"K0U2RMSMNGZCO[JBW666I1<5Q?;^$Y,E2--%0TOR1SU6IS M10"_^F-#EQ#@)Q8S.W)FFAVXFLL>F1\NYBS8&:IW+MW=%&N+='>D#X?]\VON M:3)35'-?8)HNII*T];-MZXKTOP;A"\U9&+2ETA%^YDV0UUTZ197),H@.#]G!F*I0\&A&_"=TOQ;>J6 M1? F>+<4WE4$X+4*VZ>%-!"LZQVU'BTK$6NW%]Y]8NVZ-_1/#VP9=(;])NSI M\VSJV0;^1J+]B\GN>?EIE4)AC6%W1TE-37(S1KHU'-<=L?0, 2J'.S7C]8@Q MB#&:%25!C$&,08S11L8PQ_K &A)C$&,08Z@)>.48HZL/AK6?5B?&(,8@QF@& M8U04^$.$<>V$06QQNLC4I ISJ(^[AK)<041!1$%$H8+(;DS=' ]K3$!"'*%D MM$.K94[\AO7YW*'3T#+":21G?+3-+W G8K!\(P^43]DSR;I$VC<*XE M,Z9]9-$TC.#-#M-^"OY<8FLQ>^"I2%WF1,R.F:M-EMIW5L?0H$^^%P:Z%D:: M.?ZKKB6A]MVPT\\N:/ N_MID%C&FS:%'LUAC("]7^U<:,,WJZIK9->%/)YPO M[ A^AU<1S0=)/AQK,):)9_LP/.%T&K,$$1,Q)WP(O 1A >^) MU!PR^=E<47\+'_$[8NWCS 9=U=[]0X.>,8'H_.)]Z+*?'D,?F#/_I'11_1<- MMAZVW/BD-4('QA0KK<,>+M:E"]4&0'OW (R$1*CG(!12MYN@29KO.2P 7;*S MS]">O&0&[W8 -)_9'RD+'%2ESZ&?HB[$NO8^<#KR.:YD::0!H+[TM!]_>_>W MOXQZ(_,M7'Y #9U!6[>+DO&8ASYS4M\&??3LAR",8;"!,M&BZ#S)==:?*

    9IV(4/LS%/)7C)'GQ 5ZSSINL\<7^RER[9 #E#Y^3 MR$[8 [#.?>C[-DR[;/X2Y)Y?Y%M*E+[-,[ ;@:[,_15>D@=P63*@736'',C>HPKUA<>+_[2^F9;W5_LEL'ZS49\<#\\1>;!L.3.<686XR@Z^#SLL/Z9DB_<2K[4_:DQ@-*'LKMQ"[Y5>\VNRS\'Y $@F+ M&F;0^MU509;_G$7%%NL#NYT 0K_>VE/XR#O;?[*7\:LW*[( +_YV3< [Y7;\ MT#X+)H:I@LAYPW=> KAP5@9AN'T0[L&SXISV ;POP"SX:3]]6Z!BQ4AAGX4S ML1/QF[+D*R3Y]XO%*@<9=!&SN^PO;UTO7OCV\LX+>)_X0]M<^GP0.UTYD')W M638@KW?$M;7=>7G1ZIC=WI[K>Q_>=W'8&?>,$Y_M=O8\V>U8HST]WOOL@1X/ M>N-&]1C\UMZH43UN'BH&'6,T;%2/^YT>>+O-ZK$QL*KI<=\Z]=F]K5J=\?A4 MVJQ+QEVC63CN=QV(+9*B0V;E^5T.]ACZ>;NW1B3#1QQQ/<9D76;">"& MET@ MWM-Y8A@TLS%"L* '=A>HUMKOU4%]34-4M\SJN_]S X>=E=>5 A\%[RU M 5;,Z->O!D=FJ5!>!W!MN64:4%4TSZG#3?BM%+_&F/![=HH=$T+/A= M$5>U M 59Y:B3S0:2@+C[(;!!"R&S0H*\-^D9>*** *T;#27G=2/V;.^"D_H2&2Q:PK*"& MZW;Q;8W'KSSX >/*P^GZN=MJ"Z92]8<3A-;2Z@^&/AA74,2R,ODI!SLURU,3 M81!A5(7WD6F8;XDRB#*(,M0$O&J403X&$081AL* 5XTP3'TX-(DPB#"(,-0$ MO&J$09,2H@RB#*4!KQIED(]!A$&$H3#@52.,&T/O#JVS5O@CLJB7+/+V7UC; MJX)Q;$CAKQMK3!IQN< ILIQD.9MG.6EV3O:3[">I1E-#$"NH+LL3Q)9EJ$[6 MX:Y,IAXS.W)F/.FMRQZ9'RYXOOQCBEQ4U/AIC[J#PC>!.]VPGL(+87WC6$-S[I#2L F8*LP=#?G#85I M%:Q/V]LG1-?M: ]H'DF$W59XCRN(=FX5MAN9RT;YC>3/S(=?'W3M@04LLGV^ MH6R[94%WS0F %P6VM@C4Q=F.Q;1!EU[VE?%Q4Q=QS79\=J0+; MQ5=+>11>8$Z+V0,_>NR$<1+S_>-PP7#K.'C0V+<%"^+-RI47.^^]\^C\IK25 M@N994YD\+P[DL,C4I+NQWAU6P'C5"$\YP*D9.D8\03QQ=I=?-ZKPC(@GKB[$ MM$VICHR^;HQJCT%MF/HQKC.%!5D/5M@/1MF(&\,D[)7 M-"9[!9D],GL5)/L8UY[L@TP?F;Y+#]VP@DKL+39_]:4!:6K,UGT8+<+(3IB( MUZH^L+/$HA:PJ!NF$Y_M,-O'\4?=,:5@IVZ-Z%A^99X+:3Z)1DW1 M$"GNJUTTLN@(#I%B.S6?VB=H*-0^G7!Z+O7^R!81IWFU0NIQ81*;Y^?^'VU7'$5>I*!@["B)+MDPG8-^DW M:P\*)A/0:/6B]JG]:VN?]KJ?2Z(B/\ES\I)<]?(0M7\!73H86R:OR*8.KG8J M-2LY:Z3C\_9P7BI0-;?'3$/O#BL(A*Q#MLJA]5KVU:C])K5/)HA,D$H"-4;Z MN%=[O0TR05=$@=0^M7^U[?-EGC>)#13V@ZQ<"7]D_9C;T8,73 MZ$VQ&73$0^EDYY=55,ISV!EM(=B54I[F9BE/*3]>S5/3/K&8V9$SXZLY+GMD M?KC@N6>S]1Q^X9B:IOD#[)OCIRZ#M^V)]-#"J3;U CMPF.8S&Y[K8&G1R199 MO'"MY=W7L %RQ]:%RE6 M1WWRW&2&M5,[75$'-EM8E W(ZQUQ;<^&RW ML^?);L<:[>GQWF?WMMKOC,:GBJ*N'@][HT;UF%!1?8]'\.)3M;8N&1L#JU$] MMCKCAJ&BUS%'@Z;U>#P^\MD#VVI'ND?5NJ%GC]%UP#UAT?ZYMGRE<2#5P@MF MV,,+S+ _>]^T.;0Q U'YDT32,YGPY]Z?@S^7\J$# !N#J[(Q(B#L/ MXGX+'YFO_=T+DQF+[ 5+X7LO@;D&N(LO6]M0$F*-H32UR8>042?U$#;:CPU^ M0.+26* 1)SM!7* <,LA.$#;(3M"([PBC)\V_2AR<5&V"M+ZAHTU:3SA0*IG=.TS$MGS=2MGF24ZLOV_'?$J,2H55#"R#3,M\2I2G!JFS(M'$\6 ME$NA$84+V^-\43J$1O($.14-<2J&NC&P6L$4S7,2M.T9G/J M=;I?-$UKQ#2M/NU^H)3#FQJ_D5K\IX<&**< M.O0,TH4+!=&1J213V213V:;9-QE,,IAG&53:"E0W!+6".ET\C6]9AI=*KKQU MN7 EM[)(\[LK@7(F[#A=7+KK@XV$#%O[OB6),4\*C7F8%S_(#,KG9JUVE^$T MNOI@7,$J&%7BK (^ZDE&J;X M.7*$[[;B6S>,(<&;X-U2>#?)-ZE_UXM@W0Q8XZ'/)NVC$&L3O)\SJ1P3MFN. M5:@@PD?Y6(4CRCA3V,(90H2:ML;5TX=F[7%5+5[CHN/1;5GK;CZ[KL^8M//%BJ%K,'C!Q L@L3F(>FA N M&$8E! \:^[9@0;Q96?EBV2IV9OWH7E?FI>=%&1TE-45);ZP/^K6'(#Y#@,KA M3LWX1&(,8HR*&,/0!V;M)ZF(,52=(YQI')LV>[ ,W1Q5L%I_;G&23JAH1J]?NZDD_[AE M1I0L:-O* =P8>K\W/FNU$.*(J[.;#;..-\,: :\XK)5+;4)6CZS>^<\T656< M92#+1Y9/;> /:E\J41S;JN2(:6K4U7T8+<+(3IB(N*H^-+/$HA:PJ!NF$Y\= MM6:SBS_JCAHET5! [6F1(F8598):%52K>, XJ3Z)AECQS#63^D:3TI 1*Y+J M4_L$#75$\XSV&U+_5:'Y\H]L$3''LQ,O#$3FU'D('_8G_T'9)39JGY8XE4U4 M-![7OK2O.NLHOH)/[5]W^T1O>W1WU*@0>*(W:I_:I_;K;I]VU?P%=.A@Y):_(I@ZNY*FE<6<-Y'O>!L5+):JHK]RS]'X5A9;K$*YZ M>+V6;2-JOTGMDQ4B*Z261*VQ/ASTR J1%:+VJ7UJ_S)A"&\2&SCL!UF[$_[( M^C&WHP^(2M'"J3;W #ARF^QJ_>K"H+?/::@'?* M;;N4M@WMJ3!15>(_AY%F:ZX7.VD<2P591*&;.B+S,/X[ OT,4J9K,6/:J[PD M^Z'4.#GOHPMKH&P+;^ MJFM)J'W7[W2SW[.7QLP)H=D_4CL"!D%8F%VSJP/FYPL[@O?!<[ON,\8=[/'G)3)N!]."5,V:[#@QC(C8WTB3V7.QH].@Y8,\.VM9C MY)IU1LC56).K84K!&MW.<$.RWC=M#J,_ Y,,V'2U?Z4!TRR0+4IX0\!.&$4L M7H"0<8,&5-,+77Q5(>9<,%O%?)KDMHW!S@%#.?HV.%KI8N%[\ -OI+5Z^0RO MZP0H6:"+R2Q,H8NN )/$DMGIG5M)*_V2;L=:48J!_([>JA,2[G$2 M.E_YR^$+A?N;?2T7Q''4)-1BNUZ!$(%>MO-06]7C6'K]+431_-T+X1^1O6 I MS(9V8%&81BO"MA\BQOC?>"=^8W'B_^TOIF6]U?[);!]^^NQX#*D(AVFK^9<_ M;NIR:_7O!%)_#HK7?4@CLT_=0D=KM$\O^I3,'S8*3:W+1)WN\):-V^V$?^R* MB=OJ7H/^XI16?G %VK)K&8"BGF<+MB_N+]D7JNERSY,-W;"YR=HZ4!VG-*,5>D"7[F*XD(XBBQPOF_TLTHGO.>*OD?>(25) N4!@P4. OOJ>W'H>@N2J4D@@EP1_BDI0M!1N79.7Y*Q%]W#QKK)=K/ML.?$V]TD!+A MDV#4[ D#"Q$ PWQNET MZJ&M3;@XXWRDL(FMHR5(;F[_!\8A6>9"P);L0#;)H/5'VX>WQMPMF#&?D^3O MG<\=;6('7T'JPG>.T)D 6('\T@EX(AX,']])&QH)/F7LX;/:<,R&TQYL0 M].U%&C*:+UZ*G7? 3D3R4CP+H^06+,]\2RAD:_T$')YI"$S_A)\+NFF#;.?P M#%L':F+[B H!_/6AMSG&V@T?(S'C MC5_?[93WIGCY/E N7['7#?+S[47,[K*_O'6]>.';RSLOX%+@#ZWOOL!+Y>KW M>-0966(!7 85R_?+Q?&.N+:VRR\N#F#R/AKMOK[W8?!&]EWL6^,3G]W;J@'3 M<:/?O"[O>?/*PQ5$AV_7V^I/,8^VN!F5YU-]'P"/9[IY2BA&]=+:TYM*AE?N M')Y_@-<3A%QB@%>F,32^K1O?S.9JF;E5) LB&MSG5711/5KM?I?'I%H 6_UA MM!0K>X&2/;6(;=C7![VQL@&Q%/5*I$&DH1IIC+MZKXK,+M=-&O5E[$+?KG'N MV[]75[)42S%1_:CMZI9:P]2($JKU9(\9ZOU^!6>1*($,:3=I=]V2&8_TD3$D M[3[-#=IY8NB%T0OMV G'U[''?^GC#L M)4B\0(2PB*UFW(']RI9:PIQ9 %_TL%P)\5I$X7^8(Q/1>'/XYR./#(BS>+#[ MT&4_/88^ #(_CI N+BW*0>>4,UWH"'-0#GL(RG2A-@YP,!(&X\4"0"_CX0OE M<5OX=H+!OWRL !_9UOPDC>'V.%Z-W0NX6?7M22@@(D*6 NBKDP+.YBR*.]J' M+"9@.ZB>/-]?P=2$:?9T"H!A/-(B<+P%1^MDJ<6V+S>E0:8QQ@:@#LIW^I[# M@AB_!SM<^B:,8\ 8!6TQLZ.Y[?" ,9X=:0[?Y[%8SX_[R&,^ZU\&:A'MBA;- MPR41UYXKPL/RS]>%TOABVSPM!W+Q>"^]%*0"H[*K%2%%<2N(@4<3Y5OXFW(% M&? X$2_!" HO%O=%S&'>(CF#N#)4Y)_)XT 7T*L9GB'8GP)=H3-%WZX9.R61[ R=R6"2(?&^>F')><@G7-8P*-: MBP\ &>!)AS 2T2_;X!&$P2V\)(+OVOTY[3XE\6\1Z9N'))7&& 8FYP)!)6!X M^-P[AXR,NEQ#&=X\#7D@I0NW8@@0CWN:,-]C/([*3K@5 K' (S[T5T(QBJ2Q MR7&7HTDO#PSOTX[;N$F3(9GX5CG@VS@'NC]-$5$R\G//,-,!V&<=@#6;?P#V M1)]2V9$1X4/O PTG!]S22]>MT.M=6Z-Z=B %/C!PV NC$*THP #'H'# *E[:? M+(N7%E&6J\_GYQ&D"2K%;/).0T> &U:[OJW3/) 5.IUXW MT*7H<(;&"E^6+D+!D6&:@/5E19AIUN,PBO_VEY%I#-_NMD%E XD..'Y[)A;@ MTF2&,;N DX[VGL>N#W3AY8,196@\L0.8+\!'JBZB\),(H#05H?R-<> 1QTUU MX(4.KGEJO[+(^2K!C*,B_DWC<;GQ>)<11D?[.0^U%<=#N ;)A )<94I#EVE/ M-H8Y30;ATPI5!EV\+&N>,+',.#T#%P'13VWKF'RW*?IS [KTES@D'!S M\8_/__-?,4Q>'/!GXVD*#C4>V';L,@[%U ^I/7\IAU]^4&$1)@ U1% )@%F3 MMK_5X'&< :H?F)BA?=<'?RM')\+5&G6*'\!ISA:&^ ?]:B]Y[!KO"'=;&O84%Z, 8PP3?,DHN,:P_"^^F@(N$4MPO8.&Z7+#M&U],%\4+!DPZ05. M/3S/ [PR2Z%Q7-WRDYD#=JRC?2R=^N7N>P8 KN*255P\!9DN@#$*+L'7K>0K MX8=WP#/F$SW^+L87")&57'$0*SL82GI=H__S?O^1X(U9A;QQFUM43+ *W[8X M*HZ#[7ZF_Y%T7!^^B M'8T%9*X6:1&AE?4=%S&A7%GRQ2?FH$@1F'SP^5*N]2#%U$^\VR5,*[/3S=S( M3QA? )-S4^B"XZ=QZ9.V6>F/_'F]4%&^[ ^# ]0/S0>I[1>NA!@:>%\(8;GI%G.]*R1+679^=>10VB7GK:_1]J1@6MN>* M@-2TY/EMH4P M&S]NGLJ/7\G:D7T]OJ9,;3^S292B:R5R%;Q?^V7OX&?'HN%%.!M=Y,N!$[&D M%(@TE#&TI>/A4=]] N+2LR6XVPGP"<_X (-[*WB*G_',*"L;J0<_G(#@-S<< ML^EM*9_EQC"+T]$;HRM[6\:I51H$*:;P(0!==0L?!Z&XEKE"X[?N6'*3VP8= M[?=%<8Z<'\'-);97Q'89:0=)FX M"/VH;PY;E,&^:J#X6":X30?;R= +1$;4&^_UAI!@9@R&$=HLK<06 MBRNC?ME;N/'@!7S[6>;;V/J,V>]NIMFS'Z W#V!=,VGE/V0F#@]FN!- MM8 E;8+&&W>"0"%B M/D-')'+Q9H,I/XK?A1QP\M>H9J)3;1VFR$?^7ZG?NO M:PL3GS%##7A##LPX5C81=J])?+&_,M>6N,U]T-79T*TPJ;C#'#',QICE M?'%T4Z*084W!K<-GB\ZVEW: $<:_,[+[% M%VJ?RL]\SI[A=QAO7Q]B-C3?@4+H+I818HDP:<:T5;'FB#B]F@,/Y)3GCSI0\^ MO029 &8ZVN?R+%8FH=I*67EO710G>Q" M7(O($Z%/WQF#3J_+R8 _O#+"'V6&G@\R0T_6P8[VCJ\AN2(5%D^*@AUVF$R_ MA2\NY0PKE';]C3KO*)I#T$6'YRYZ CG#W&#<&1?S'HH).4],B-7\F)!F29Q/ MV&$VNGOU82T[5499?*%*JA+/M\1)$#T#/X0.B6DMWP) _WTS%5;9@^9>.LZF M0I\'3CBBR:ELLO2N>,O+1*3XRHJ;;#8S*S23*WL>)5V.S$%BMI MH^Y?\7_[GA(K'790FDIO MMR,_)8^K \:>>XF8&B(VF,L#BT5^R>'*?K8H4\%I&M.6<9X&(SOWTGD>/QA& M8$ELOK8*QH>/4Q:LS+O_&2:XN1^QPR1B .@17_$$3C633J$;V4_9JJA<"2W0 MCO-A/G&6X.*V/\X2,.H1U2@(-2X'&5IEIWXBHKM C#]")_,%WW6I MH.T5V')%GDD?)NAX\^J* *YE2/,.8HOY4BYN\H$J+F7P%_0CX#=@7CK?A^]* M2S=M%5G!#_%7(/8^0%&&3,?="L'I* MODXJP\WO/_S?^Q]OC;&&)V7 ,#E2<]9_UF8\ S"+T?:X/ ]C3HY9:E&Q>2[" MY0$O(3X&DQX@0@RJL;GH>.-\43T+YA1G9;)S'-G1AYBG*Y[C9#(+_,R/\)03 MGI9.I^";>59.T?BR%)4KNP,ORM?SQ7=.4]\7EJXTY4NV"H!O^+E 'P[.4/E" M4?XO#_P:)UDY:*1+@8LY8>D,&IX/*/&*M'3R]3P6"N$K%\A+RTN9YXDY2 $& MT&HI#);'+0=!F/#31PZ,KIAS+Y E\"227B(N;O[3TE)?#*UD&5 %?[-/#U8/U.C\E$*92WCOT?R!%D'A*02^RL+1!Y4 M0=/H'$9BR8M[@;+IO),9YHHN\82J.E]>06Z#3MF2Y42>62"-_!=0_J\,G84O M(3>MFI SP"P@/.)HPA4XI=]?)!,%YK9"E@+<,19=1Y<8BDA,=_ MAD\H6[U(0)_%44OA%A&0W/S@+GF(:T"8/3SODHSGSM=2=*3[*%T(F8(42UC, MW)F59_.NX5@)Y5S/?RP_;-='@4G!O1)P(L*(Z>L/RV-F&<)WKMK>O/KT-WN^ M>/OCJ]?%&;5MA^W$<",IK=+< Z;/Y?89;18F3A%?B-[109F41@@]@J=9.!?Q M'QD.6!Y4(;LCMRSM..:S@96MV@R1TQW<(@#;!E@89@I$2,8A?.(%"!?[ -3%ONBR308DN,?P_IXSLZ",/ MT0A1]ODA))DW7NRM?9;%\HB1,O?I?#_?L=-L0Q^\#_ M^/1$QJE(J'QB[A,>^+KG MBPCWMN\!Z06>G7G"?,\3E^'FGGM;;'+D.;VY3 ,>A/8./'W!36AN)4BE+'Y-_\H":K2[7&8ASIPV L/ M @DN/\LH#K1EHEQ/K!V@+?#S5SLVC"OWU?&<2D$'.XRFG^=H!]3X+C=T+@QN MS'(#+"9P+O/M)5?K!&,[2,H'@_;.:N34 M^]&&:37,!(77O CW?]&"EQJ%IH$5W@,7:,8[F*'!HS@%PW-,SYV6M';KZ]V. M>;^>!4GMSMN.NQ?#?JE("]ZU>DS$?K0]/[-5V6IIO@:QL0S 3V&7JSNLG4[; MF_!?+Y]/SX_'3Y8[3F]+M2]B&F5?A>N#%B=;D8T/%$E [< *!2MG%F3Z>B]S M4.1Y8=^61,2#;A8Y-0 OB,_G+YJNJD/VLK59QQR)2L1ZQNLSAD(OY>&,C-:+ M&0^/BP5CAJ?W!5V7"]B M0CW!LB437.;9.5)LF!=RRF-\N T2'FO^'2 6[*28'L#(HR;+:6E!]86K)[;A MLF4IL;O)\S/@$J,@,X9'DJ#L@:WH\WK&"N' MXT7 1#ZA%##G:V*KA*\?>8!7ANK*:4=N^$2-$!RH,'@(^4B77HUJQ0_G;JGA MLK6JA(1[<>+73GAU:K$@%\ 0:88IRS/12?LS[:KV:%?ULA(O3QO)2)&1VC!2 MVONLB%)&B[)T&)\SXBYH7J2I7)YI&XN*CF^L3W"B$EN?V7Z*V,,IK=#)59M\ M82M?.>4O@<<04G+!AI?J6J_J"$,*$N2CLPH%'.$\]THV6MD(X0EFWD^N'QRV MXDAJ"+-K+UXY@IJ7J"I6LV9L=5X_W7;,927Q2Q:EG(4^;\9,%TCU.#RS9>D\ MH&^E"9ZL!D903L;S[6NFX4<82P!C%>R7(D16['*/ 1J%OJN6.S$ MB3M"@.]"^1QJO$$,(>42$L$6^;8YEV@^WJL[C"(@3>C*9'4?9.O&&1\MO@RR MOB2)$\UT;?V^\,/EHGIV;(IWLP3CC3'%Z26N&Q2HF]J/ $SY@E2.!0_\R#Y^ M"A.%K6\7K^2;!O*6K/I;^:Y\A0V7#<3ABMR#6[TH^>7QVSB)W.$:).94=QB\K%?Q$,3Q/9!*,BQW]M4R ,/#[:]ER-,&H0!.U K;^NM+5)**H_9@/*)E97\ MJT-QZRB9>08!$B"J X12]34;Y^+\QI*L7KW8ZM^V%TR5\=95Y:JJNIRIJ)OJ M]5YN# .+XFWX%.J)3CV\405-XHFKX8FA/NZ.B2:H9J8*_IHH^70&?ZW"6GMY M^^:YQ_68RFD[^J@>KYC@?G3/RBNM+S5'X&X*N WXYY# 7;=IO(:EC')H^XVT MDZ]+43CJ+FRYT\VCDO&7:M&]UMU/5!S+D[0/F;L>F-]U#?.7W.X]0A7 M:!HY$.'VJ@L1S66>!.K&9>)OKWF.&K"B^N;!$XQ2RF)1F3B8HIHS7OUPTXK? MR2YX1'/$$\T4J>Z'7UP:A_?N_MBKGB@%\GH[,MZ*Q: M<5Y7U[$2ZN#=LE3!#J93I<_*=NP\PN2Z\X:'_&\[FUU^D378>7;W0-'LO:]I M^JD5G1F6I1 G<%RVB)A3E)+Z MKEODA=>U3Q]^UT1&'$QXEF >)=!+>29.)AX3G2M*9HC\@7@@5!;%X&?\@KAH MHE=D?.YH[]S22?!,R).E/#8>K\D;>Y$EBK+S6D-<]E9G5+SU_AE/YQE];.V[ M4ND/+9O[XTO2 ,O:8 &-/*F4/.F^6DNO_,R6O-N8<@(+R_%L2.%TBC+%9,1! ML>2P7NR)9YR2]1KD 5"9+Z<8*/Z9_ ZM!FE;.7[6IM1Y$B=');D=*Q*\@S< M1ZBD44IB=-Q[3U/)X4DJV:];)JY)IF=%=!#X+B1?Y6'+\#G@#5=#'C MF\Q&MR?[RY$>1G,]@_=Y\,V5>0;;HHXR5>BOI3LK69ICK;D\#LNS.RQ$>1U_ MV=$.=^'(!IYX]FG>?FR46R C< >$/OCX9ZMU\NB_/KN_?_ M%6N?09;P[W?KI89X/[!(G)C1KLFCOR*/K*58GKT7&?AY?I8_4F\A2OF>Y\N! ME9_WY3NZ0_F>SI/OJ=^X?$]7,-O[.8\3N3).WQ8@(SB][(P\@\(+GLG=G,3^ MQF)1KYA3A,A@PJM8SD3ADB3Q\SJQ,AN/_61';MS>#*/WZT%+NT>B7,WL:,H7 MI>NR(5A]AZPAFA=-D][_0I976_BVDU5NS0M0C84A,XMYJ+05I5<4+B?/IX,V M,5QD2<2RZ>#**_C7O >+T7'KG4NS_WO5UYW:#%[-.Z.S?&D-W;ML3GH6E9_ MTG>[5J]O#?[?V'C5A 0NI9.9VX 8%E51/A1545JO'^3"W=9V1JH2Y3EQ7OLCDX3]8AM7;PJ#<;\;E#2B1T=,3"QZPD M!ZZ2@D((L0W;J59@:41ZFJ/$K/&"\5:$S)##N-X[KIA#4@U2#5( M-=8'=J0/AD-2#5(-4HWU@1WKO7X%YY-)-4@UGK-&H9Q>&(;>':BK&$W4BN,. M[@^VG9R^2+;.X[JBPNERU65TEZMA M$;_?&1UUXU2 ]@E/H<<\B$_6"9][@3=/Y_+T>7;.68,> ML^PD>^ PWQ?5U]>W7[P RZUCZ6Z;'W[9 MLM2U>Y DW!=X=D?#DPL[.F5/PD<&".0UB>49'UX8&8^;1LP6%>6Q9+C#\L/W MT#Q<\C7&:]:*4S<=[7V@_P== M12Q+_^K>_C$RS^W;]3OZS\?:U*&C_*TM^\:9LBSQT#101GN$G M->!UXJM%(6=^ONA7&SMI#K%I^?=Q1_L97F07A_J] -X\%X?_8\:TWT+X6O#U ML][=@YR\9)XGM\3S+] B"QSH@NRJQ@]VB&=Y >K? SMUL3PWWN[B:7S^-^ZM M\Q-+\@ AM/\Y+PE\5(WGXX^"[#O2I,9!HYVG,'<+9@@29@N _TEQ)G%Q)G+*23',E*>IF0U]7"3AGN8A-?B[^*"M_""'!)3I98GG[M$%B33W+UAAW#'%9U2.74PUI[ M6S5-<%8J.WQ679>/E7*+"@?7$8>T;F&T=P\1$V>)ORP7C"H)M^YP3C' /X*) MH0%NW0!+=^%7Z2[(PUA5UP6H,T:UP>>'U%(NI4:5I':RU.JKD74&SJQEK^Y7 M.TBGF-SG1^:P^00<*K-KFLINAQ,0 M]KE'B\CS<:5OH-KXU3=F:HU0C=69%0_8&'9[=4=KJ*[>2A7):BI'_L@>F1_R MK)?<6,YSXXD[$W)M-BZ,I[JEEVF8]PSS9[9(,G?&&"L[AE1A>-]I(7U8?^T= MU8&N5)7AQK)%$L$LZ,%S-+XS _-8N9W&D[L[/#%];A%4\ZUIB(^;)$?.C =K M*#M^5$=WGS$8T/Q #5-P8A%='MFAN@AY=J3-^ EE_<<\IAE MS0^A@_F#7_"G']FDB(9.%QA9^)W1+>KAZ:)6E_N(88;%L^_D#\6C/"K=QI)Y MH?_(X]#A$WF HNA?]N2G_(9?Y WB ]8[4:[RQ[<"[:T5_C0@B4BDTI_(:D&C M[E]Y608@&0_OV/)41WNW+7U^$6J.8>QN9#\%(LP;8TG7Y-S1_HT5SI;\-@SQ MQ'MV?1QFZ[>#)58O8UC4 FM,B C58LDO#\N?V[BN"R.,FYP=[4.@?7"2$&\Q M^!V6+@=2=%!('M^5#ZAXA=A7W=LM1(470#-Q1_N%OW-NNVSK*R?,CA"* ,D8 M'IR!YCS,BK[B!VJ/=N3Q0<&%"4V4ODL74C:_O/_[AT_BRL)/8\WJ#/Z*M>\D MLM8:WMGEU7ZL-FL' 99)X&VP/_"O4LH/$8/?(GS-C?=:,SI=P(@XL\!K344X M+OPQ%-F-!_?T\1XJ,76F$E.#54$VH,14PZW)AS1:B1PO-&N-QS11T,9)(U'T MQP;B9@$26IQ.XL0.9/54^ /5!P/9%RR*>1!_7I=-S#UY4E:\ =73QTCYM'23 M.#^TWKJ,1!-1AJ#0N !( =4-+"SB']4^)E2!IS MQKCERT/XH]!-G22KZ!IK/NZHQ7(S#?H+_^']#O04_IH_QZ/TY;W<"HE30"C, MK=^#5LP8OHVW=B_K/G^)*+ZYY+89WQ/.%]Q" &%%,/!3/I?'N'X6V;Z.GY:N M':!P@9:9BZ.;^+\ST:YG8Z5"H'WP8SP?;11\,%9'!81E\HU9269@NN$]"[1324GX^%A6 MVPGD.H=!X/N?T &P"FF][B M9051X0D$SCXOXPGL%PX7_W:/'XO+\55\?59::\/W.'R:!ONPZC&NG*_MWV.68^SX#HM'?E0UEMG1^] MVW&,E:N3Z[G<9^?.._)H"$*:2"'%7$CEDVLZ'HIU&2!4U!Q\#_ $!]RZL5_? M]%YC.Y_80RH/57V^_1^-ERL-YZG_P*$-=I([[S_=UPWH80L ?0\S"%P7TMZ) MF1I2S4>@$2'WJ>> M#U=SGP"HAK]*GHP7=YNCC +9-QQ^_OY,#K)@NNV*@IO8L%*[7? M%SR8^N;5N\^_OWK- W%O#4LOG1]_#SY5E(JQO,U\D5_"&-,,W'P)%YZC6>;@ M]9WV*[/1:\H*8Z[>B;W?]DJQP@2-@VO2X:M?M]V>#G= #_D"#C;ZCS!TGSST M.N%><80N:[G?A98_>^A&39?90'[!Q0&41O[@>T"?%V&+NBQ%BA,?F'D 4"9( MZ

    NOCX;!FWEZ ^!]B\[X&DIC)+GP?6+N9(=PT>8 M<(GJLAS2-6@3GKA_@.GT/ 0J]1C.FI,HS.K7:_8">FD[,S%]C24-%.P)/WJY MJN!+F,\5:1ZB1N5-REG>7/21S_3L.? =2!2G 3%HF; YF4:F8G'6UE[!_"G" M=^=G.^0\!:9<,._@+7:TW^5ZA1>+7X2L(Y99,GZZ/N-P,3'TIHROKVY[K[9B M5+.I*Y\DAK@N'$9B!(LW\@PC-I9IY3XD9];B?4)ZQ6513%B(;U4.N SJQ=DT M?ZT/NC1^*"2<.LLBR#P/3&YDY3O3LLB@>Q,QN17_EFNL:Z]'.P>32['2<)JG MJH;_N).T=NCJS\?CM*UT]0P1Y*DFQ+9"L4VB:[C&))<\<*E0ZDT2X6)]<1_\ MA, MK1@AFD4B(KT\%;L54S&I2(!FOLH2HQIX ?R5Z]+*>[/RQ]E7<%\RR%8< M-_@(YX#@"XD2X_G63>R$"R0)6TX0Q2)+45>9;R%+)F!(DF+UY@M?B\H:CL2N MD'0G\?6X!H/+*UZD/=I^RO)=$2$,<'C9B=7BFZEU]SN(G1-X6_6,)\7B5C*? M8W&@E8U/,=?(-(VO,=IQPF<-Q=H=:(TGEOWF M9BVVMROLAEVK\F2O-OE ;1[,6*G MXX,8COF>JY_*]69!B +U$F$;J)2/%KM0^YS S <\HB- \ZDX'YQQ_2[O:\-4 M\!Q+<>9MP?W(VM*/6EDY%!W!JU&1HX\[B\_SQF@S^4R;R<-Z-I-?L*#;)J+< ML4[PG/6:MC+G24L$*ZM>KRI<]GJ5+PTL#J\'Q.+-GEP2*"VBXNL?LM<72P4Q M;HHPW^/Q1/Q4:L(66O(4%M2\Y2D-G!,@V']LN<+_'81/2*VE*3"T(I?OD(Z1 MZZ&M%"S-?\7@MD<1EX5PQW%1E+FQ<*ER+UW:E?*RJ%BHP1& ^0%N)/%^.$F6 MN>_,6YU$]\^B^]%NNC]^HPP$\ZHI1N*HE67Y7CG^@T5E^1O'X\ZH;YV6OG'4 M&8_V7-[[[/X7#SM=\]B'54F^M7FZZ(6'BRZ18.O]EY]^E7M3G2-.%)$P]PGS M?W]_]]N7]U_>?7G_?S]I[W[[48,??LG^_>/[S_>_?/C\^Z>?/FOO_O[A]R_: MK^\^_<]/7[1/[S__SQ'G",X13V!TK48$%#S7._W5CK["!.X3)LW]-=\";ZT? M*@/09'YA=!Z9'6& HUC(*:41GOHIKO.(37ZY99SM!6%>8AF])Z;KSA)]*GZ5 M1TO'>A&)'>5A W)I%ORG,(JS5=2Y& ">M3A?]Q5;L%Z,T79B4>JC'27:^_>Z MB,@9OLN"#"Z_IWY4JO1F*L/[;,P^X4[79_!GP:E\I*,U^=&:G4=G#A^0.7@. M9O-X2T?[,;*?XFS5B#?GUG#D8F>7+WOD0GL?8+2QK&$AXH'SYM;H1LP9Y?VB M=H/($YC?AVMT/!$&-.*RTHU9U!$2C*B=P?.WKV1F[\#D7+!"EO&=A^V*'$&*@,?\_^W=ZW-:2-+^Z^H]IPZFU1A;, X3K9JJXB-=]G7 ML;/@G,M'@0:CC9!87>R07__V968T$F!CP [@V2_KV+JT9J;O_73G@"H,H"95 M)K_G4XFRADB_8+J:_/E+Y&BV=?Q?KUDFR\69N',G)J4 -P&8O: M+R'%AVC4"CP47>T8!0Z234_ED)2;4,6_*PM8*$M0?)VXDEXI@?INWFD8C5F@#,C0,$LQ/TD;J!L-A%&#!PD MJVWN$RM*%A>66R8>>35D<RU*4:I@16SA^"6 G3>5LMY;*O3P9.6AIFX4!"+?2EYAJ,HU"D&/95 M%1*HWD RP_H9VUI:-0,T!3_YJ+MFWJ+,YQ6(*)_Z6!R,C8HR/F"XRA+;4]XF M)D^>*2KPJ*"I!#L [PE35>U:B(/JZ.<^6$@HH-]R!/A!4^!QQ M;\)9%?I@].%'ZY&G>TBJD@D_O/UWAK9+C\N@_/W-_,-Q0*,6"!3\R7YA'3Y% M 2P!"N<6G*YQ/Z ):6"N5S6Z_U.KD\]6(PE#U0(@#N_X_!$L4$(!JH@YDX4 M"O_']II/##-#1,7Y(QJ%SI6/@4=6A8.1+X8(!1QDE,Z*AB#:15QQ_HH(W",) M(DQF/\+,%K"$Y\>"HA/LO)4=0N0?N,^8S#+)XB1S&3.A-3,Y'Y3/0XTC!J.0 MI$W>C35DE1RG?E*4-E3*@*H,^*O QAC40);-D7W)R,5 "?SR+I*@#C$46(4# MAR@:?"4>QC5RD+6'/PD$9=C!$\"/WP7N?KTN,TLNI#:KRDL MQ-IHIVT]^3>X2FXP_2[*\G1?.5H="BW ?M,VN@YZPW[J&:D%S?)< )9S[C +8P[G+F^I(CYYK/1YYCQPZ+@:-["LWI MKU,58KJ;A50B<[^2K4Q$AAO48ACFX!>=S'/KJ]NNM>7/4H^?^Y> MG[7/,=_\A"YUINQ815#L9ERUG=<[X]0A3EFB%X]=,^)(=I+Y'$<#<,WCO?80 M5;L)*QE?*OO?;9S_#P+)#?C(2J'C1 >9*A(VSB/!*LJ,P( MY(&(K)!\XG$62M-8IGURL+[9GX8CG@3M1R>Y[/KJ%C3Y-48A>ECH$*"]93?A M.!'< P14"/Z(E??TW0'&&0>R:C46M^!%X\UZ#_*#L+?^X?6+[H9@:2-+ACFN M60IY+\-\>8N3_M3ITN&L-=R#6O.->$L7UYJ>_)=T2TRVJ3H?E;]',-Q8W/GB MOO(,'XQ?("%[Q"[LVBWQA92-U;80BW5\A\N#P6[_;JR M2.3F@I:2P(/8.N4V=BJ>:E= \>9<0^0D& M'?_.W#CE](1,@ZN^*(%*HZ%V0\1J;##"U G\KRC?TVCVALK3E@7DA1BX$N:? M%H(E9]?_[IP?U-YC'B> Q\$1.@ '$''SZ"$F>=]5*DD!MY@:#G@48Y+Q&>SW M)FMRM#CP0U6Q(JBO'0'QI: Z2*>37')4G8LLQ@0.O0JQ#23(Q5SS!%X5DMPA M[ 96M5#H.I?*!DJA@"SSC=8.**H4X(%@_A)P$5"O.=E1+N!D7<*X##0-K'BX),/: D_UIC ZEX2T9*^\G!4_/ MI1'!JE\9I=2*&]N'(S[T.>^M0^>+2%5!L(_:Z52=ZYO?VUVG*V38MO'"?LCOS=WF;A. ,W["(R7-!M9*^LAFA%3-"E^W? M6I><"FJ?=ZY^>THN:%--,4U1<[1%IW!Q$D1U \NKUUR,[J13;APXS=O23@1C M)+ __*VT'6-93*HO"L0M3TK A@58%#K'&EM6!30?40$KI?>54K4:8#\TP!8) M($.FMVR"?]W51*RX<]$ZN[GN6DF^C"2GL+.O\D\:@BP1R+4-(Y!=V7%:QR;5 MU!2,#'"$(@OE[U)?]Q(D5(%$PR Q?2PCI<$O>;D%^N+6YQ49QU&!VYG^Z[K=CQ$MDE$LG2]?8>TXGB'C MZ"J>8GZ';H+NXI 6"CS##=36&X-:LI[424:TF 3QU.'YHU ML"H1/D,. :2H(GM_ \Q8 AN%MQ$NB\[IP!=X8NP/@)/4/"4.C_IA)G1E.Q_3 M-*K(XGNPF+# -53_JB"$6L2)T.FGTD%?#/2;<]B7"V;5Z]7F+L:V9]!ME07Y M-K-.H1P9O,4L2HAG&F='4QI._DY) KW,^$BU$<5Y"6KO,5:=);)> >0FR$B: MWE6?I0_Q:=:YAZ, Q&1&2QFQM M(B$A""J-;]W0_UY .7HX8PU,!4X I%*)&(B>5$PH7>#>1;Z'VTUP/A250\XW MF(N##?52B<;#CZ5/25W*L8XP:4#J]CZ*O^I.*Y(ZU5R%.("&KH!]$.0?;TA1 M,)U'M,]4NL,06DQYJ&UW<0?HK[3QR$-FOK;$391S-.1%448S&@)1^W'@X:G> M8UE]0]D7A?\T4OD@9+1DU8R)Q1DAGS"M4S%EPR=Q)-P =@EL1X01L52AW2B" M<6!3<1H-G\=!C)!39EID\U R/!96["E)-^!<"(FGQ$WIK#3*X5C#CD)FX$L0-J5 MW&'&TN)5+OF21")XYXZZ5-!)YZ?26$1./YHK?1>AL C4U9H%L$$P \C#V<4D M!+,K31FJ1$&921A!GZI7-/J'!SIQ70CU@J$L-N.6!N[$)^$&#)M2#WM*8B+D MB"M\4JS=K)C5$ DHM]C4AU)6@23IJSFO)G*JKL(/Y-,-)!NI<#FLNPO?C'#TIJ>^[X5>D>0"J, #VIF;2/BR$ M1T:$^M4P(\59Y\Z//Q+?EPZ\F./ L ^E:5B;<&4*F=9_2L 8FXY M=(;P#_1R=46O4?:0FQI?Q52.VPU%0"4 :JR9ZCZ@Q3SML&&/D/[/N%H$ZSXD M+I6YTLM261% ^TI6ABA]O>3 W)F0\@KCWGT<8,L/Y@I@H9KM:/M"0CM)/A[. MGD")=U2"4PMKX6DL*MA0D2D= Z.L"6L_Y,'0Y20%J](X?HD_^*I*G_+3Q,(( M^S@@'_KZ-[)^IGBQ-M?(X!ZD[$.9QAZB:T%08..K*)NP#2FB"GV B%CU=BF2PI M8VYWL=.8?@(9S4 &B>H4W7[9K [!2GEE($D,$'W2R9?OX4H[S?'2-$LRJGX# MRPGL-K*E"K:3+&ZC*><#5(?82";YI?PD-BNY&!U4 (VR(!LQ!JM2\'.YPT7Q MZ;'(6__H:68F2? FX/%I/BG4C$@/G>Z_W/'DEW-EWY%.K1C7PNJ_41+0Y=Q M4E0/?DE(O/+P/USP6,RPI:Z0G-UIXD;2Q"7>-7P(S"DHU5?)'9X*[X5/QMM# M![&B%3H(#AF\,Z.S.E0#9J((D2F-P%O%T;TIZ*^,D:2*W5P?JS'W_3ARO=+I M-@\U=G'+A1/[N>K4FH%);F6ZN3B\'G_VX)'[QY#^>]%9X@4WG,X!FG3HYU%_/+5;?]6Z=WT^ZVSYU>Z[+=FT)&6TE\BY+Y+'O>;#2Z]19FS7X/YP/ M'BVT;FQAH34_$^7G[HO7E\J;G?/E\?072^ZISW36$N!78+RZPCZW WG.! MO9-6G^UYML'%_-2Y:H/I?-$&B]F8L;4%TG;K96MJ)(G7D++OK)2U4G;[!$,N M99M6RJZ[F(M!S"O(UU5;"NRC??N(#%Y/1=D$_9,2]/6-]&!H/.\HXJ-U?D\Z-J[:$[ MF\V3E>]]B.)F]?3X_6:DBU05**!_0.3U 4ZUA"TF;+D];6SKTEG"EMW3^O,J M+J)B!&,[>+3+33? MM#NUHDLJ&G51>QZ75#I\[G92!K<-#F 7$)[V07P;^7T_Y6WQ< 0#E0U^P!%@ MXI>?G%$LAB"FTW3RX?#P_OZ^"C=7;Z.[PU8\&&'CTD/AW;KQH>>F[B'XXD>- M=\U#9(GWS2/PIFOX8ZUQ>NB);XU:=92.?_JU->9F$EB8V!6$;_:<,SP&!%VB MFN1.")1,(@.*&7G89%K.-!SZ@9P!P3,><'HXS5>5]96$O9_YQ[D(W'NLX(5' MMB:Q'\A2J'?4QN*(@7REEO7SKGOC:^JX>3C-_2,X2!HY;5Y1!T2CPOB=\2"Q MGQ/G3VX&'DSG="OY4Z/P5,MP7J=/"+$O=-PXJL@5@+L_N5-)WBG_[2VX8VXY MNF"-E_TDS!HO:QDO=6N\6./%&B_6>"D:+[7:^T:MWJS5&^]P8/*A=WS4/#IM M&C9,R5PYIS[L.2RI)ZCU00N[T6#+*FQJLS4W5J/L%6%6HZSCGM:L2K$J MQ?JG<[S &8O;VM=UP>(GNO5*O]UX'U+L-O.T4GC",/@M612CH3+ M3/UG/5R^K0?07\MI\ETU,?0+OI7&:O-4[>,WKC'WGOZE(MSP#-G'JS"2&_Y< M>]\XKJ!7Z[(_;-W$UT.85>KK*76;^;9*W2IUJ]0+2KV^A%*_T-WVK%+?4=VY MM819I;Z.4J];3]TJ=:O4K5(O*/7Z:IXZJNT5E7Y_%37/#<=KI\Z7:J]Z5G60 M-]_]4FLTCZP!\'H(LP; &NJL=F3U__/H_RW4N'89]VT9<9K), J"Z!YKQ%7G M?V-H\WHU5Z5)T30 )$UY[G.'>CV CDY%R!,=/JJ!!/P"I.@2U'?F@@9_X__W M8_?RK9K,G7R W[P%.\#-/)Q4Q@L2.]D(GQJ,Q-AUSJ-!AG+22LD])\Q*R0U(R;/6I962KTE* MGKG!(.,IJ4&I.7G;MM*R]VXH=6['[RA4,%KX,(O@2!PK>J%%!O6. S@ M.UWX#?U1]3Q"FV8%)7:ZK;K"$K;Z6(_W*Y&X5R;^5M&BV/)1;;#>!KZ$!;DU_GMJG53&.+]E$FPV_2%"X[ 37M05MWX"W :/&KF)XV5@V0[<# MITY&?P(/)RH77](6#_<6Y/2;V M,.N+D1L,L5$G/HB 87P!/3D660AWT0/=+!U%,7R?MWA ;6G]7VZ"*)@XIRL. M#SRNGAP_,.-O]0FBQXUJH_;N.9Y9^CI<:UZTER6Y.5LW5IS6TTE2]F. M4?;(@=NN!=L&:D[V(&[T$D-S59MK#@IBK^LE7$&EH;@YMY6)EK(ME(F[R_=SY_BD MQ",86\1:'!_C:FP2NZ$"XX]\,>0?=:UG*;/V\H\7%-9>MO;R-JZHM9-Y7VDQAK+:XZ$,A@$ M;=V>H+G,_P;;UM%6,U4!DJT\V_"R;"$/]05XDSL8 !'4)FNQP?Q8_4@I_[U; MQ2-;GK0_.5Y<)W+8C[PI_&^4CH-?_Q]02P,$% @ ]JD'4:#C2S&^%0 MCP ! !$ !C9'AS+3(P,C P-C,P+GAS9.U=:W.C.-;^/K^"]9>=K6IWC(US MJTEO.4ZG-[6YN.+TS.Q^F9)!MO4&D%>())Y?OY( &PP(@>W&[YJIKDD".A?I M.3HZDH[$+W__<&SM#1(/8?>JI7_NM#3HFMA"[NRJ]?WEMGW>^ON7GW[ZY2_M M]N_7S_?:#39]![I4&Q((*+2T=T3GVF\6]%ZU*<&.]ALFK^@-M-M?!-$0+Y8$ MS>94ZW:ZGL9IIV?UK8O^I]GE MN=X_A[V.V=:G_=.V 8U>>W(ZG;3/NA-P<6%:9];D3##]\"X]7]___S>^XS)[*3;Z>@GOS_UUHL*<%9(P1ZY'@6NNF+O8=7TGF\"B MY(0N%_"$%6JS4I @WM #_>VP"*HPZ7K,4T0FTJ8:L+IO] MU8[H=J'#NJ>6TR&BVU*'[/ZIHDJ<\C$@Y+I<<%WTT^UTJ:9'526R_8@B'!$! M%]LO(]"#YN<9?CLQL>]2LBSLD9Z,,/JC?&=,L+0@8NSTBU)Z1$3\E_::.BD? MN"ZF@@M_$CY;+) [Q<$#]HB;]&5DU\]P&GG]U%B7X3S$CTM 3(+M D]SLB!X M 0E%T(N/DX+!G,#I58N/ENW(N_]A OLSTR0JDA*0[)S\]0DC,7U;5/=^79^( M [?6JY;'(+%AT$*'7'T+3LM6GY$@%_U/U-X&D[*U9R30_G]?\06!92O.2#P6 M5E4Q>T[_PMYKR+IJ#3$+\D=@QO3CS[\_W^6&8$+NNGS$-&*[-L0O'19&LW]: M>STM:&N"4N.DOYQL$FRP\CUH/;E?Q.^;%0V)PR(2P@V_H$R7[%"99.'#J"&E MS>M:T&7$[! L.K-(45,X9TAE^0JAY%[@"HP:C\GI/SMV&%=-:"'IT_, M5PL=M^J,.1SE7OL>!:8]]Q %FRX0C-7#1E_M^E U,L/R)W-F).QD10%;VM1,A[7$\7<\L$ MND(X1MT??@,33P+F"KBG$$H]_"GNEAV2L 6 M,M%B7(ZZ[5_ Q%9VPKGD,AQZG;->VK%FX*#]'' [[L[ 6@G,9@3.0!"RAB7* MN<32;.7^[]Q0ZDA!D9@8[@*C$@("<+6M@@J,9?CJAMB(58!UXVG3)H6B-,">0W@@BEKC"DF#M]8?)K8 M*!B;M@5:RE0.,/.[9VH QX1H:RD-K(4(_*'O!5C&MH%VY] ^0LH:RUM ,IX# MHIK4LTDEG0OJ/3T=Z# .&F>A,1Z:8'*\C5YJ'IA-*YT$ZD8OO8:2!N 8YX ; MK5EN8,HAEGNI/IO2J6!QA+YHB&T;3##/4WF# T* .PMV0I5W:_/HY?[I5$\' M\PE>6IQ9 PCUOHW_.6+*\4'T!9IS%]MXMGQA[[TI)#$JL1I\CTR^SSV8$2BH MRW6R_>H@[ZMG;)*N;ACL)=-)BY32UEIID5J?M(1B8LDZ5$U;Z=;T_7BK/D!B MON8#O3_[JBY8;E3GAMXI951"$:E9-7:D:$=C1,',YBD$[A!08"\].O87"WNY M%^-1ER:WF M#3ZWA*UA,3+P6R=<"!1HCR8;MJ_OGTH'[,0DI;ZD!=#ML^P9MO.!/GA8YT<*8,FHX0V9B]%Z]9A0Q+CN/J(G')MP>2N[V9-I5$/?,/34 MKIP4_0;<"N/#_AQ":7ER<^@;>FJCI]*8T?B!XFDS\&AZ.>V9U140FIM7C[1%FIE6%6D6SMP2IR=C7(4/#D_)KADW<,5:N50N@C([:7I" M]Z*73G%6@^X84Q:*&WV(G05VX>J T5)%_9@SJF\!(K\"VXDTTK'55[ M73V=4\GY:(*1%N=T["B4&CEE'*2#)?LOG4R9@\@QCHZ9#5O.UTE9R/V:8713 M&[6YX!RA^TK<8E;VI'$&J=QY]?5TJN7&)6Z[37CK-,AN. M8W1<6;2W&O?%L8?U'P:6NRS!:%BD+ M+BRY)%Z!L1S6A\@#Y1CC#.SFS989[MC;L;ENUTCYG%*NL+R?.6>D"&96GG*Q;$= M+12N)&E"5.,(5VTDG@8)N#M!-HN?'%'#Z*:FXQ)$@UR)4$(#Y*IIGJ%'"3+% M1;3L_7 ROC*@>T;7>5Q4)S)CP2%& M1#<*K-AJ-O_,=EM'UTTZ S6 G MQ_/4Z*7VY"1X&AZ4AZ^ 3',<;RL2;>T30&Z#P:3J%_+ZLZKCE,)*BUN\8O8QD MHR1J(6,MXGRIT^OK>M:)YQ4W$6TD^#6X MF*63]PKY2!=:^OQRV5(8'>-JBZR1*^5A*?.3>\&>TR?$V MS*GE4C4F-K2#F.#&#I(8W?J4M>L#D^7XCFBM$5A6R"#<2H3<"LZ,7L811;D5 M!#*U4&AH!I'8Q@9* E3BE-I60AH[J#\.B+W?;0B0P5B.][G1RSB@J#+ZQTL= M(\;/T.8?5AP!HOQUUP2)?*7B0D]?S162:X+^2%MZX%$"_@U=:(+1_;#LA>]% M?*1]Y;1C&*DE\P0F[.\87XTQ/OJ>\<(W(P/.@PT)$Z-VY9G7BAW/+Z!"56<@"[AB%WBLT!^C+ E?B@@A*S!KQ= M[?O#&8^KOD$\(V QYY_;9G&8"+O"#T_$%EU4M_I+\90&)Z<]/7UI8\C_DQ:7 M(,+'(%R,OI@1D](@FMWZY5):*W"6;L#P+)UT/EUY=(]Q6Z8<&%4V:K:1(/?/ M?+U_%[ ?]X9.*7S"PL]P@0DMG;*P$U%RFS@UC-1V7C6;"*FTE0*-=11!-L0B MZ3RX_>T9>:][-(]<67+[.#.,U!9A-?M(**!Q#1H#*0(M?.)-ENOR P+!'NVD M2*3<7,X-(WV&II*Y1'IHDV6,4..J-'93!.(]=F?WZ U:?(F#_DCS490LMZ(+ MPTB?X*ED15R=MM!'"Q1JS*F".54[I[R5"*F!G'4,8R<3F",_W3RP;?S.EV)8 MBPP)M!"]QZR7J *<2RY=6SC3]?3%_2M6(MT@8*8%W!H\RF5G%C"1K@R<=7OI M@\D2;(YQ!2"O?04R6N[&.\O+D5L*F?ZD=4;F5 MA!IP(PEUT&)*\/A+J*%%>OROF\LO)Q_>)5@L$(L[^)/@;]?%@>[B$7L"[> ^ M=VY,IO7A_3'T/8H=2+X^0&<"24L#$[[S;-*K%B4^;&DN<.!5*U7,1?SR:1M& MQ3XFQ$:7"['7PK6Z:ED^"?<5/)_Q1-07$1C!_N*J%11'%#HMC8KB+G9=W[FT ML .0>\=><"ZMDUS%GZ939,+5E3\#U[KU"6LYGKV5$]_839V FAJ.MU^LZ6G-;;$?\FP17\+!*"C>IV'3!$P>[S#.2I4+KA9YVE?^? MVQ#I@EO4R8*3_57I!1+G'@-7[C,V2]7N('C2'#^Y"6ST9]!%72OS XX%;KTL MF_HK'@Y$UVKCU?7!*#[H=KJ=T?C[0-QTP&]_D=<@OWSM55E=8A._8T5>&RE) M[14:Z!U]#%B\"-X+0$D7K%WY[$PV>3WD-+57:; @R.YV]-,"-#:+U:XX'R>> MIHD/LZR^ 97]==/<(;0*JYW7/W@2$:D@M_J@%0OV!FPNF8M=NN .M+?HI848 M5R_4-ED/?JV/.RM3"U[N1H!?6(]XT=KM,/QHW"TLF NER]6N^B._-P8PIFS2 MKCZ^%%'57JT7\ HM,&(1OP-,R'B;P![B>VH5!)Y%9+57K/*,\='G-<#3.S[= ML^WP2Q&[GI=F2]GU)#1\XE(X@T2AT;Z-_RG'/5:@=H19)*I?L$@4J$>N.>5K MK\HUPGR7#BQ$5PKW\N2UD9+47J$'-GM[+8CUXD5J5S@Q7BH%".N"AQ,@?%_< M$NS2T-'(VS^[;.U //!(DL\Q"ZQGLUCMBC]B%OHF>V5A<)!/47MUHI6*@=J" MQN!@%$]_/;WHZ\E%:VQ5^=7>%)FS-) ]2PL"4V!__:"!&PK.I^1&/COA7?_$ ML&#NRF>[M^B#AW=,<0L&?.4&LQ7+^FTF^<4Z5@GF:E\AY4JM/R=WCUS(F>4. MDZ79[,D4E(?.!V1#YLI<^.063$ZS2M8.6YC?]0Q-/ OV:5\ F4$Z9NWOW6(B M?JXTS^W59=D<[);0&"ZHP(8'_7(\,XO6#N@($UKD:9)E:EV^*& MUQR3*Z#:5ZUH)*+L.!J;W >3^*=I;$N5\.Q+)W_!H JK/;E&]66![.$]]!5J M@Z&4M';+'1B=S@BZV#-Q03285;)V]5<.^65.BI96L\O67H7TP',3"J2835$' M4PK)2O58\D:)D4R5X2$$I9NZKZZHH>MLLA)5SR8OL=KX(U,?$ELPBKL<\:(' M:,LK0XN6@!WLE[+=/ 8'&W^-@M0G//T5<\N[8V,-837PN-?QYMBV*&:1^8R- M/W,TF[-WX87?"\(FT[D-LR77W5M&J20OOD7@,XWC.7YC/*7OH"@W4(6R=K./ M9=BMOX12$,#*2&JO$-\P."^YP9!=OO:J/.(W0"@J7I!,E*I=[=@=;(/-RWX+ M5R"4:.M>=GAD+C5,N^0J\FH4++Q)*.J/7!Z9-X;F/;4^\]]L^ \(;#H?LT9G M7;S(^I1H:[?)[.S8V%3N>KDN$M_R'?E\'N3!$1^,> J-XX3?HAE,\%MTJ^5J M* O'.OG6\X_4H^;1\QYZ'H1/"[%@ZLY$#F_T[<[E"[Z&/)U9A/7_8C/.6^R3 MW*:KPJIZL+S?0&LP&@P+AJ58B=I[SV8@RZPK6&'\!I77766DM5,7C'JFL+ZY*U [*Q$P&R=R**("K+I6[0HM#@'=%YM$>[Y/Y,'.JW7H MO*K,_0L8UA_]1=<)\".29GCH2AK#Y!/4>QPK,N7?8J:LN(.F0GJPULPG1G@: MG&F]!:;HN0/3Y&M-WGKE\!H3@M^9'^*A98@8F.4WR99" MY.5\@MH'PWBD42$X.;C8Y)N-)_P"P-7.4IAJ4C;)ISR?VJ&4K?(/&"M@K_O6 MGEU%G50S^1>JO6"VX/1_&"%(D[[J!VD&J1XE-[GL68WP\)9\A,9)BJVJ$: M<>WPQOJ]6)H,3T3QCZ K.XP\PMHK-^AV.MVNR!"9*"23Y)2NO1IBPB(:>35K M*3"^?(+:*\,ZN.6;00IC@85EE*Q=_>QTXF>(G(E// 7'4()![96M?)XNYAS$ MW^N4@'M>YVC-1!![#[Y-T<)&R3;;S<&^RHKL:?19^ 0J[:ZPBCRCV9SBZ7'7A0XSRQZ&FZBR]QG&#-]800JMN_ @RBU Y%=@ M^_GSX_T)/-BU0(5C+-?8]3U^F]8#K#0&%3*KW=">,>OB!56+%ZE?X?& ;TX] MC[\7Q#H9!6M7?GCS^ZFN&P43UF2AVI4.CI4KGCX_I)RPL<^D,W]5M+R1+%6[ MVM&"14'60ZI8[8H7')*LGP++/D=RH*3MDJTM5?_@M02P,$% @ ]JD'4=IZH >X(0 DF\! !4 !C9'AS M+3(P,C P-C,P7V-A;"YX;6SE?5MS&[F2YOOY%5[/Z^(8]TO'Z3.A]J7#L79; M8=ES9N:%@:M4VQ1+4T795O_Z39"214D41;( DO9&=$L6+\"7F5\!F0D@\8]_ M_W8^?O8E=GW33GY]3OZ.GS^+$]^&9G+ZZ_//G]X@_?S?__FWO_WC?R'TG[]] M?/?L5>LOS^-D^NQE%^TTAF=?F^G9LW^%V/_Y+'7M^;-_M=V?S1>+T#]G7WK9 M7EQUS>G9]!G%%-]_M_M%<*J]$P)I1SCBQ$BD"4U(!<8E9D$$(_[WZ2^:"!T9 M]H@D(1&/G"$GDT.*.FN,#RHX-6MTW$S^_"7_<+:/ST"X23_[\]?G9]/IQ2\O M7GS]^O7OWUPW_GO;G;Z@&+,7-Y]^?OWQ;P\^_Y7-/DV,,2]F[W[_:-\L^R T M2U[\Y_MW)_XLGEO43/JIG?C<0=_\TL]>?-=Z.YWI_$E/Y'SB>6F'4H&"H0YSP@$ZE!DDM#J??&>GY79]=RS2B<;.]F M/+[NX476Y8LXGO8WK\RTBS"YIO._/0YEKM?MA3OROKV<3/MC>V7=.-X(&)B@ M7-B(+%,.1B8/(U-P D4M HE1&15%#0&7P[DKY )]CCK_K.U"[&#T?O[L:\QC M[?5 /L=F._^ 5W>'D>M/O.@OS\]G;:)F&L]OOI]']:)LF+;%]3\W-<@QE NO MX5%OKR(,)N/\9"V1E&(CF946I<0BXC0!0*$U@K^<35(+I7$-6CR);!V&T!^3 M(66M4HPL0-SN@DDD9Y'KWT5LH: MS%@-:QUZ\!^3'@7M48PC;YI)=MB6(Q*$1APU080KBKCV!EFL%6)!60!$E0-W MK@)#5H%:AQ_BQ^1',5L48P>X]M/.^NF_(+)^>=E/V_/8/4 6B(M,<8*2=1 W M!XB;K8 !CBE+(XM61$)JL&0=<.NP1?Z8;"ENFV*L^:.=QOYC]+'YDKWHW[NV M[T?!$(4E%\B2E ")I0]&6\P M81B[F50)L9PQY! W(FU,0B(:3UA*6..J@?QR6(<4KA5G2$&+5)U6C_H^3N]" MLQ G.(R1]PR@68>1"R2 /RBI8TII"!IV-:\^0'=(45QQSI2W3S'J+#@1(T5] M$EA3I%B @(%@CC25#+$D@F5!&J:JN.<+& J*'C$?D4D@)A>*(>VI M0H8%3+U4 9[ G0<7M_@.:>HL19$:IJF=TUJ %943Q"H(E"5EB$LAD,,LH6B4 MT\(*K%B50.-)9(+@X4%$;"@* M7/L0!,4N59E>'H=TH!G/8;PH8X!BA#B9MO[/LW8,RNQ?_\\E4'1D% Q444L4 ML 'Q&,,(?/V('/%!$")=J+-J_!#*4.&. 5T$Y899T_]AQY=Q%'64P0>#(B4^ M+UER9"UQ"%,-TSG,ZMY7"1Z68#DD-VH@#^[3?*CF"[I3Y^?M9 $%Q"!*)/#B M/ L*@A.8IIW)8R]3S#L9*76QCM]T%\@A.4B%C3](Y^4R3B$T678[/K9->#MY M:2^:J1V/,'E+! ,3I\ MC%/;3&)X;;L)N&7]D?>7YY>SO0JO8FI\ WZ[#!8[9R#>LWDMVN&\Z!"1()* M3Y\X-U6FAJ>A'9(G5)@DA>U2(Y]T- E+A [8"L\=1Y33O)V%*603CH@I^#MR MRB6O$H _!:R&1RBD]\G I"V=A/$;/%.8L#U2 B9TK\'@VNS#(SR8S--PAMQ_ M+ 9:H4I:-1&JF0PXKYD" "P#L@8+!)AD-)8+;JNL9S^:5CV8M%)Y^V^K]W+N M4T[KWZX9*D(Q(P2YX!+BPC'DL( (.%C%X?\00Y7DP!T4@V,!VY^!I?*O;*$O M=@R-]D?3E[;KKF#NF3NK5@;",0X(8F[P3B+@TH:"Z0*G!C-%2:75I770'=+X MMSU#'@0,Q0U3T&WLIUWCP1O)Z$;).*RU@Z"5X;S9B.;% 3OY GVWW14 &=E\,DY&BR0.#.(6 M[1#,XQ%%95W00&;CJ[C-BR .*7(LQX*MU5S,T,==O+!->/WM(A_U B+.$OMW M)928.4L81U;D+32$4 1_1Z2\3I9J0ABK,D2L@>V0-@N7HT5IH^QA6C%42\M M:$R< E\_> *#G_"CD628"S3=;*3VTTK6ZAB/&Z_YMW<;]KNDXH3N.ZCY'54CV8 *N8[_*>ZPI3XES MAF+,@PJ(CRS+2T^:,4>C]-976?1Y>H_UGIWWG5!FL$D*)S5&T=AD=)2(609] M1VV0=9HAJCEFUC$><945[GGW93,S1@5O0U:S/,BU'W.[5>1&Q*2\"X$B0:)'W.6\8* & M 2)K38C) MH,E*%D6P5>; ]2$>7L9B$&DJV:;2CM&/6:D?TF>(F[+HHR"%R24<$ MY\<(D MF/ Y3KG20W",>.99E?-:*U$=7C9C$$/*6:#*L>?[@+PAFD8O\OE:$!5[C;1S M$B7/B,A%'6Q4-2BQ M/AY3$&$:*4]@NFN5K@Z/3J>&QAHIN$/'Q=Y'DP)]ZP M%M*%Q)!A22,>8D".28:"Q"BF/Z+,>+WM@U?F_%X M)+7'VH&#@X4@B'MND/,PA27!/">*)%VG2L8-@'4LK7X<2V^EU[+G N92++@E M3"3IF>;(4!+R&5"!-#8*!>*^8M[! MW]7J[QW;#/@L3AOH\2ZD4L7X[G:QD\I\*Z2J4]/P9 H_9X%EFZ[=07BWF#X? M:;Z6+M>1IE"YP^^^\]L)8(KO^V, HYK1N MS'*+97A@_R5.+N,;&'J6'3M\_,B$AXG!))^*Q(Z1*@'W\?I61L6,J:CI+A2 M%EQ8\&ERK:68D+,TH)B8T%IPZTF5?1 [E+%8+FZ!9)$J3CTV*,K,"Y]]018) MDHJX '_E<^1[FYM:=(*2TES)#=:&'EK0M"Y7*\A%G&7+'*! M4^1DE-XS(;2M0K#' !W2HM&/PK(BQBV;1H!PMKW+_>NI;F2YX<1JF#:)](AS MDI"6QB(9L$A)"J)"E8E@-:Q#6G;Z46A7T-#UW%GKM=7*1"2$ A0F4&1$/D$# MWEF@S&MC]>[=V2U.Y,4QO'7Z>YR LL?0\%$X;R9-/\VJ__)=Z8[AI+R52*68 M3V%&AG0,#)3.,-76)">J/%WKP3LD%V(04QZ44\NS(VJQ^]+X MV)^TXS"*PB9L)4=>Y JKC&D0F2@4X>$W,$506:<>Y^.0#FGZ+\J00E8HN6DD M0C-Y2\*K^"6.V]F*T@U1 TY:6. H<3C"M$#)O$R'98QX'I/E=8[ZK41U2'-T M46Z4LT6Y';1QNICJT,09K3 BT>1E9PX,U8& 8WRWDG#<95EOCLH?J1L!_C6 MCF,- WW,,1[-YXYX/I.2S_Y:+I,(512VMVS'GBLG;\W6AZ'489*D<,X/@%\/ M+[^!RY*:?+\"%D1@A93#>=3B&&FJ(1"(##,7%,.F4AY@*9Z#ROZ6IM]\ MR7=Q06])-8X:RY2/%?VHO%SYE'3UEW\?(JBSQKY)G_O1_%Y7X?,NW3?C]FN= M1?C;UG>AVD=D*;0$GX\'00?'7?NE@=9^N_H,4-Y.OB>^CSP$P/,2)CH2FJC. M!91Q+G:*+7(6ACNA4Y#8>TI5E;H)ZT,Z0%,PJZ8.Q(55)RBR%(1'D%/8@JN B$$^M)T^-/VOU=$B)ELHL M**_Y2F&V)%&0*!F*(II8$)XXA& !SZC+7W8A >*UUA.DQBB0KE:A9 M'^0AG?'9&[L*V; 8RU[%BR[Z9CY_*AP3M\$@[37+V^$XLH1P1 )7D0B&F:WB MY"Z".*2#/SMBR=8VJ#C6S(\U/+CN=X09DY$1 :RTX&^#7$A;CI&-U,$TZ_-E MO[L9:!Y!>$C'B?8VRI2P7D5R7==W>G5]M\#2.D\CQJWB@H S[T0N+&+R;<$D MH>2L#3'BO*-V-TQ;!^Z&IYI^4M^IN&$KDO#AO8FCP%P401(D" ZY,K-#3F.* M*(2/'-MHJ:JUY/BUT^6DZYIRMJ^_>UAY44'D4GC-,"M12?QD]&I@N5J^U"W M*IAG-I2&H9+F+0@R@?A>JKRM,"#L@G&,4T[U+I.C]^"MQ2KYD[&J@N5V' G. MJ\8E+1P-5*#(\V#J _ATV<7C#'[18+C E6K$KHUQ+7ZIGYY?96Q8[N@8*.%> MP=('!4WOOK#PR>/8-7G#^WT9KRN?O/[FS^SD-'ZTT_@ZI>AA>)88X@U*P%?4 M>8'<4&2IQ\@PF2Q7GL90YSC:3L4LL&=H77(R:16QD8'OE*]/"D:#0G-5N:AS MQ77&#:FUH6BK'9=[/A%ZN&Q?LF.I!@=*[FM;AF_NX=_%9ZF1@0080*7CB#MF MD8X:'#/KI7$R&E[G-K7U(1[25LD?GZ-#.5";H_,M7'?Q!2$-#_D:.B+R,X0% M#$4U(HS(ZEQ5PDW >,A,#P M" 7&@JQRG\FV'-U<&8N%L8^[!EJ_R+?*7\TS1AB<8T6]0)3GJ_ZD#<@D%6 @ ML4Y92:@(5>+GE:@.ZFZH2F1:5;]\F)E*5C#W,8;9:=RW?7^9\;V=@*@ [-*- M&_\!AA* >CI*(F*K(;@2*C_E-I?3%DDB2C)>%AAV5?;"KHWPD)R1'1&JCO6J MD&MVC/'#Q>R@^.MOL?,-:&2$I3%: 0Y-0KZY/8+PUCC$DN A24]I?5(M179( M7L,>R#3<6N5(=#T^?IB?A+VA^:S,R,@J$5.^5XC*Q-5/MDD+(A7RW((S)^%ETJ MFX2QK-)%E!M@/*0L;26>K?03"EJP^-#_J3WR@*2+C^.C.-D@*4$R) OXG$/. M)X>BHL&2:(2K4^9O?8B'5NYG)PRK8\!Z!)LM?B]NTG$._.1\7Z]+^<@\SO>2 M6?B7Q )S4$@@I,J&JB>1;1C7_)QT&F2NPUA"'A&9(A%2Y0.-,+*2Z)#%,N:= M]I2D8!V-51:'!J$NH;*'-X4> 8NZ[@H(\Q]V?!E'R7M!L1:(0J4(4 M!A$/L8QR>B\W!1]2_G-_S"IJOIH%!5_%WG?-+,76IM\N^V82^ZV*JBUOJ$#] MM#40#JXWM[2/5W%JFW$Y9=RT5TLG2_$.5LUOMF_Z%H*KV -Q9U#M))SD)["[ M:M-)#U!F=KJ_Q^QA]>YI7'-O)-NI=TDH!;3V%K8+PG^:EOHJHX--"V;#2 MBEB&LX(Z7C6]/3WMXJF=SY37GQCP(&[<1Q7U;2)7!;7>;(+OOR[L@B^JU)4] M5%'I^C+5>&RAS4L[+JK">VW6>8Q7X*Z@IKNO_!7#J\N\JV2^([&H\M;JJ8I* M-Y>Q4)WHE<4-'J :4"; MKKXNZ^J/^/4V+PS626UWGO<:?'#C9CXLG\#//C4Q/#3R""?/;- 1.2YB/L3O MD;66(8.CX5X918QZBK65,1Y4AK >-^_4(#X0BQ>\66R%WE[.]FF_G7QJSF/J M['G<1*:L9I,XY"W C]NM^VH"]XH?TJ;.3'IH$:8^[ MQL<1L<9)G4]Y"A$0QX8@K9A'*DEAO;)4B$J75U:7[9"VGA[,@[![UM3,_3^< MII8^V$4]ZY4]5/&HUY>I0LBRJO,1J:]2Z&/G2KTOUV"U_A&GX[;O+^)\/^4V M6KO?1 &EK$156N;M$WO+&RHO?Y64WKT^!HQ$C[147@]U1I:7[1ANNUD):3R._G_R?8\"=AZ=/T9]-VG%[>C6;@U/L%KXU M6[MX!_-Q+F)\VL79MP M23.UI^.\>6$"7K0=7_73D\N+B_%5?8NMWW5U,VVIA7JV>3WYZ^H\[L 2*SNJ MJ??U):PX.8U;EQ=,OE\B/C_=N.31/($P=!I/&W]G /[^MKUS%7G=^6M'F*M. MST:/0&R!@O6[+*F$;>1NIX-]NZ$')S_<^^\%I_\1_;_OIPRCN8^RC[?S9XKPV.S-_? FOVMKA4R%,5;WT&GJK.!O= M)F0'[X?9O).JL\I:DNU>L]NE[[?I9A_:+9[$OW< QLZ/STZO3J*_[.9G^K=1 MY].MEM#>AMAWH*SM%P36;GLGBJNR;/!TM[D<1SO);[;IWJ>'#)PE^MV)VC>5 M?Q>,'KP)=N,^=L/PFIMDW]BFFYU2?1]M?]EMOR:TO*$""EH#81TM;#]"KFJN MED:JC(-+>QKP@*ULKY9F:AUK'&>?Y^0LQD$J6=I.D:-63^&KHH+M'YH5K552 M1Y5'9EE'"[=*%F;*DI8K*>LI&0J=(KCIYNJ/.!UY26VTP2'EI,G;/C&RWABD M...)YOL08Y4:=HL@AE_C"-_E<0_E7V_V9K\%N?>S[$7:4^KS! MU)@L'6814"6-E+?,P_]='G;OWP M#LD/*<:8)65'2UFFV-1TY/W\8$H,K^)%%WUSO1T?QI69_B?AZ+SMILU?=GX( MY;$REI@;8[# B.;365P1C!R&$=;FX9M2[)BI MYC!^$[^W#@/&'^W$7PMO@F*$B8@@$->($Z.18\DA8HAE3E-I>95[UC; >$A> M2!D6+1G_JQBL7&'JZ[TPMR<#1Q*DLMXZ1'TN?^ <1UHXA3 +,.,Q8@!(%8_U M 91#2I34X<= ]1>CP2/#]E*>.A)Q8@XCQ;(KDJA%C@>%8HS&$<699%52Q1M@ M/*3<2AWBU#)83=]QMOG./;B-9@M_YY&6"O@TZV <[!0N[V3[];R5[5532I4U MO>5=S?=IO 5G7P:(B[O'DGU92XMF25-+MX;5MQC2YKO)HFGY2DD@9O MRX?/WO\\:09M4MB\DVH:75NR2IH]/OF<-VD=__:AO$*7M%U-CT_)4?/1?CC@ M?,O_'%*>84!O=1_^C60ML$ORHIG:\:SG[79 +GR_R.[&Q_ 4%?7F;L\V#9\U MUFJWL&K6PU]49<==\V5676I^LVXAA3W2:F%UK8.]P'F.\_-F?K$2C).YK!=T M%2?;UL1?U5R1\QEKHJVIEP%G"IYLM*Z.ZIPB6-'?\+WJ:S=>67,U=Z>OZ'=V M^WR^F+>.#A\T7U>+JZ49N"8Q*TT[O[LV?N]H)((5)AJ)E/ ><:P)LLX3I"RS M@5#L$K%/*7!IRT/3?HOM?\0UA&&6_Y^BJ^&<8HEC!?!O9U,8P>QXK6[/7+,*$^Y M0#:P@#BG"CE..5*8:Q^H8L)5V?*R M,AK"349<@0(Q1CQ:U87G OO0R("4X0 M3Y@B(XE'4F"3HK$@7I5%@F)#XX>+F$_@3DYO93(6AX2-04DQ>-"X5LA2HI"F M(0@EDU2VRBCX$,HA#'C#;/Y@/6.8N@/G#20AAR4F&I(8?W#/H/5*/#.&> M.,:5E:+ Q+W?E^@ -;QZ.E2###$1?YLF<86)$( M&L953KUQ57: /(1R2$N291[9@>HN9_9+""AG,R"X_W%$$DE6"XH2N/&(:^Z0 M4<(B$EQ,DG'.Z]QV6,C>V^NYYJKRBE!OMDA^[1W-*F?,]U[6 M"&)7=E4WH%U?RII)@MFU[+8)@&"&Y79'RZ ,\: .Z^I]4XEK:O_-Y?2RB^^; M27-^.1^/;ZZPKZ/\I_NKJ_L-Y2VTT_1=A. [WG55OU\X\1W 91PQ(9AFSJ)( MHT75U(D4U@4X/,Y;T<_G26CZV96B,;S^ED\!'IWGOT:$ M.BN<]BB$I!&7@B$K643@&TBIB=2BSE&8K= >5HA5@7?WI_?Z-BVW6W$YR%$R M*F=,7!)O$,@M49!Q6@HYRYB63] _X[GL(*\'5"HA%WVY"H^.:%L6T)N M4(][GD0?+2RWHVDT^NB$I&5[G#;%.@/^3DN0G;-IH\AUJR M8'I^?92?@#\P&VAB) L2)9Z+>#@;D<5>(6&EPDE2$*)*X8R-D?Z0<^VN&+>Y M+?=#N:_M2% ',*E#S!L,SP73R"GG$4W,@A/A&'%B[X3[VAY6-O?0Z+:A'7=. MMC_ D?GT-8Z_Q/?@#YWU(\NI(%AX)$)>0O<.(YOO0-744I%,M%A6.4R_+> - ML\O__]!OD&7++"*NA/JI_2WFG.%1FL;NNS,@*3/$8PJ/B$B@&<^1"S(3ACI) M//52K+<_:/.^UV&2^!F8M O;['8@^QC/;0/A6/+. %Z'%9)2$ MNIG5N?Q[;4LCK4%#^#!3BV\'[%];8EO>Q@J>TI MV0I<33PK&'-LN^G5-FJ[\_T""GD<3U%1C_II9_\[3J*WQ^]>#KK)^JE&"RME M#>1%-?4>7LB@N[P9]-R-@9EO)[Z0QE8W7EAS&TA25(,EKV!9J]W">MO112OK M=+GMU>AKM;PCM16_0>4DGLX*S<7VM+,79XW/I9+";/JXOJ!]8:_&-OK;K(,2 MYRZWEVBWVAQ01F&+;G:MV3I%%S9",/@\U9#N=J[OFF>N-D)R_>&/\2*?_1AT MC+1(O[NVQ%KR[]8D$!ODNAWS&^<^-OV?N[+)HQWOVBCK:6"W5KE^I7=7MY\_ MZJ+=E7&>ZG_7-MI('[LUU;MVS6?@4JOP[J M;]<6J5LK]F@\;K_FV 3Z>]G%T$S?M6#YK=3Z:%L%5+8>SFKJV-[!?Z+%BJJI MXK8_UMG1Q(ZO^J9OTV.?&/"\#N^THIJWE+R:)4[RLD-WU:;K W(?HX_-EQD7 MW-71*7BQ+_-%U&UW5<$BFW=>T3(#-5&N5'3>M=S?]CZ["N"F("=CB5BE*<** M"\2)SNO$B2.A0=O*>6)IE;6SU;#*'-4'#=\V#__*"VLA7]?2SY8RCFT_G6W_ MQ22P$ C2AF#$?8S(A&"1Q40P%RWAI,K^FTU 'M+NPH*,6GZZOX+="A>!> +A MC2HD48(:29#G\(,++_-);H>8Q,18K4B0=F_,6OJH[;W@]%Z9M8W=UEQROGX] M_\@U^_[YM_\'4$L#!!0 ( /:I!U$_%F\Z=I, #?X!@ 5 8V1X&UL[+UK=ULWDB[\?7Y%WIRO+SJX7WI-SUF.D_1XG23V MBMUGYIM6 2C8G%"BFZ02NW_]*5"2+5&BM#>YL4E)[)56=&$V"O74!JH*3Q7^ M_7]_.IU^\P?.%Y/9V=^^%7_AWWZ#9VF6)V?O__;M/][]Q/RW__L__NW?_OW_ M8^R_O__MYV]^F*7S4SQ;?O-RCK#$_,V?D^6';_XKX^+W;\I\=OK-?\WFOT_^ M ,;^8_4?O9Q]_#R?O/^P_$9RR=?_.O^KT=*G: SS46BF1;#,"UF8RTI;KK+) MP?S_[__JA?&H>&*B&,LT:L6B+9$Y&2&$E%V.;O70Z>3L][_6+Q$6^ U-[FRQ M^O%OWWY8+C_^];OO_OSSS[]\BO/I7V;S]]])SM5W5Y_^]O+CGVY]_D^U^K0( M(7RW^NN7CRXF=WV0'BN^^^]??GZ;/N IL,G98@EGZ>L -'Q>?OD/KTMCOKOX M(WUT,?GK8O7?_SQ+L%S!\^ 4OMGXB?H3N_H8J[]B0C(E_O)ID;_]CW_[YIL+ MS<$\S6=3_ W+-Y??_N.W5[H)R\\?\6_?+B:G M'Z=X];L/4\:ZG[R[S MEV>QC 7.I\L!);[][$'EG9W"9$@%WWKT -*N'L1.\33B?$A1;SSWFIQ70JY+ M6!]):RQ^FBSHWZ??K:1[.:-E^ V\QXGXF7Z\?$(=:RM!\-,2SS+F;[^9Y+]].T%M!2W!6*2-.F&**H12M$S211>Q MG-PI4D^-T'AG"\STS6(VG>2ZX7P/T[J6OOV N%QLIZH'GSJ$#ON)OJ;LC1R@[@;)S>[DB]7=+7ZJ$M9N4U[5$KUV&X M%V7#XQLAU&4R:^@ %DLO#GAOK$[1>R4P6D^NFX[9EG W.AL&JK.ZFM=TEFZ, M.ZUNV>S+/C*%B-/5;T_.%^P]P,>3+P\E1> K^G9Q(@L8E31G5KE$[FZ6+) ' MRVCY3)BY3;28WKD+K7:@ HNXVH8N1_BNXO4=3I>+J]^L$&1<7'IV_VNS*!>0 M;3^YW_ //#O'Q8NX6,XA+4]TCE+8R)E)Q3 -29$G3XZ]0_!.V^)#5BVFMB[( MS8E]M<87\ZLI7OH#6SH,-OYPMEHL79_G'3Q_K MBOQ5(2Z5K$L,#&TBA3CK&21OF3,\2Q>2M/)N9WU'\WE0LD>_N RK^P;&4>5Z M7?X^F^4JW5N<_S%)N'@[F^:3:$SF8"5#!XK,5BH6>!%,4,S!0Y;!\MC"*C:+ M-+XY#(S?K(GR&YC%;[A >N '$NL'6O&FLX_UG;B<_(F3HF3A$\N(@6G%.8.H M%;T1.29E%% @U6:[N4>JIV8G?D(6S%&'R((A,+4QDGE./R9E14"3+>V[K?:9ZX(\-7/82=&W@=>#^:&O MSA+YRC_/%HL33U/(R60&AG8XG7UA/D;!? D@!'*'433U/+_*\G1\S2WUVV"; M>'7V!RZ6=8H7,KTZ6^*9D1&3166D;Y*]V"30 MHP=_$$TW6.U?+S_@_-?9V>RF<7YQ8PP8;:1F5H-E.GC/?%+(#)*,09:"MHF# M<+]8C]X:!M1Z@XW@Z_ITE4:9G)V3D%\SP=]CF:3Y>93?OSG.?WY%UQ^F.6O[\*"XJ@@N/*.!6UI Y6T@08K"X55/"IPV6?E MVRPTH\WQT5OKH=K#;=,WPY@^3>'R5?R>?/4R69X4)ZS0T;%2%(G%T3*?963> M<>.,HB_8Q ?>(,\3,:G=]'P;?KLK_+_B\IIS9L'F%(5DIA1!_GB.+(986)*F M".O)05=-G-\;4CQZJ+?7Z6V W:X _PCS,UJY%F]P_O8#S/%[6$Q2S>!,IN=+ MS"5D M8G[Q!^UH[_'7\ZJ4KUD.C=:E#@JR*T$P60;Z[-DB^NPZL!(?@ M@C<^AQ;6LIVXC]Z(1D#IMFV%G5.Q5TIX!W&*)[236>UI7X, M,-I3YL;!DX+ M8 K:.>M$:&(S-\48T!:ND5V;6\ .NKSK$.:;"^KB7]-TML#\MV^7\W/\^DOR M<_'3\L?I:L"_?;O ]_6;;O)G/\GE:OIY?'B6]^#2A'=$4!X6BNZ!\ MS?H5P\!SR02B54&B%KR+ET'/OV8,]-.Z(6P28$!3N(=C?(]I;('E;$"=#G@Z M=TV>ZP>&/ZQ6RTY"G:P1G0<"_+8T0VX&FUC:7S$?!JC;J ^DY=%,H"B)8( < M7^L5TTE;%GG6C =)[H]/.NHNB_\A0G^#\+X7Y/LH=T#$*U/T2JJW,,7%+RNO MZ,1S* %%8C$",.TDL&@T,L\5A3[5,;HNT+(10PY28D^+ -:A.<'88[-'C.[1" M-[ZN__[=FHK(S_R]%7_\[7*6?O\PFY( BXO\91,>^1W#C, G?VAR:[SR&(S" M("%H3V^I##XYZ48C#!0D-&_/"TJM+]$B):A0I)3 MNGIT_SCXY2MMO9O#V0+2*N5^HV;BA\FBQC#G\VO4!# Z!-2TK898&6J1XBS' M'1,!(15O'->IS=Q[2GH0>8D^EG([*FV)30,*^ZNS-$=8X ]X\>]79[=?QM]F MT^E/L_F?,,\G1FC%*1IC+J1"L1G/%+*C9,;RG,$Z*4,C-D O.?=A2$V1OWUH MT@RV!AS555YN<2TQ=V*L%%8HS8IW%..'1/Y$<(IYFX1,AEQ_:'**=DN2\2VE M*7;KZ]%.BF]A";>F>F)S 6M38%8A>7]2:@9H"T/C/8 IDD,3BO(FY^K)VL)N MJF]!3:X2O5HLSC'_<#XGZWR#\\DL7QCMZH^O/Z[6TA\_X3Q-R(,\$<)" -'?ON['B^YUP5"9#$,Q9 MXYBVRC'/:1W6VIA4G,\"&D6C#XGV+&UI6V@:T,Y>Y/\YOV3 O9N]R'FE?)B^ M@4E^=?82/DZ6,%V)6]L5Y9>STTJ:6E'O?D-2U6*RQ,O4W<74?L,T>W\!X>J- M.8'(E1(6R0&LL_(K]<2>MN$>E%D,2+=;Y8B[3.[7 MV=F/IQ^GL\^(5[2AF_,\\4%(R2F*UJKR16N=%"WUR+(-8)4 <&G-L#>DY0<1 MYVF:XY[@:D#_NUCRJ\RDCW?PJ;8&J*JB/8%^L4%FZQ17*2"3CL350%^"2,B$ M25SS(KPJ36B@VPC[- UP-/@:4 NOO3>_X;0>@KR;=16=&X,"/# L"L@KP<3 M*7IY(&>;8SU]:=(V9 >9G[8!C@5F$QKB/4[PK_CGZD^+$X$%>'&*H5'TMD0# M#&JZ4-J0!%?%J-@DU=]-O*=M70T@NB.9N_/IT7VA^5 M@>28RRYUF9,L]A>X7? O_LQP*U#*K3:%RTSL]IH,LC:]LO3XF:] M3$#[HR^^B;?SP.G@(,==1EONC':7K1V<4BQX>N-\MAI!")%DNZSR/<==_2?W M!CZO_)_7Y:+/KW"?7H MZ26#:;S)R>X-$K^5,L9<,HO"5G9# 1:RLJPX@2"#CCRW"94/I;AE-QK1UKK< M=W'+K2E[I#J0 M\I=>:&\RG)VUWF"%6)/IDEG<1:@>M3"]3>).J<:MB6F WGK1[6"J'\\N?)06 ME&0Y*/)*>7 ,+'IFO$/%C3:NV$=N#QL*9?9F#CTTWJ2_Z>GI["+HN:P+$$+R M'+4AB"@6T%X!BR5$^J*E5B4GVZ8CS"U)QG<3H4KCL MO4^1G":24%!0ZB@>19%9+L%CTEJC;N(AW"O54["#X=3>I)GMDN:'^:I)Q*54 MQAL''#(S,9!+Y'QB-3'%8I;6!)EEQ"8IH;O%>0I6,("B-Q)"]UR)U>82ECYC M[J5&J_LU+4$8G35:PZ/36;B(TDLIG)!)"0I1MRG8&NG>EI>P^/#3=/9GFVM; MOCY]! 0W3&7],JG G:V]8&T6.NCLL]%1BDAOM\WHTL-8W3FI7JC\@(LTGZQ( MEK/R_?F"UHW%5@#<_:#===U!P#6U%G)VN!4BE>)T3#%H&9(6OGA0QBEW\J"H MNVOPA[H$3X=3Y-7S&NGS3G'75Y9BL' ':*W2JPR7A0*J*%_=2:_N5NO5DW<- M'Z;TV]E% ^T7\SF0QW"1VK(-?%6A?HPG^,IGB8DG^QV42^L7I[/QL>9*50BS2 ML8 QUR-H1=^EPIS)&*U1F:\7!&XLAN\VXOC>U]XL:ZV0O@$BP[=/6!?RA_.+ MQJ#+&4GYHBQQ_D7L%^G#A#Y?13\Q!;*'@"Q!">3+.F">>_HN*.TUS]QRV-*, MNDEP-*N&B W=8V63ZJ[ZP+VJ,Z$ =SY[/P?2CBW.H$FO^J$_OK/LVN7Y%:"THE,.28N"A.98-8Y M.A:Y=LQJF4N5#%63L['[A'K&1C085@WJ":\H0^]F+](_SR=S7%4Y7N^S+[W- MR@;!C*Z73(626(WCF9)(OAR8VG:Y)5-KHV3/V**&1:U!>_RWZ0/F\RF^+@/H M[(+WDE.VP#52H$I?=$Z&>:4M= M NR-T;9G>Y@-B,O '8%_PX_GM1WF E^\G^-JLNLB7A[O=A%RZ";1G:4;OVGT M[D#.QD)A;R9C@@\0LF.ZOAKU!(;1LNZ9QQPA\!(LFB=B*OSDC@2]FL M363[,K%H03+-*KF+TQG][E^K,Y[O/U]^YO/K.7WW M/YB6J]528RA>H*SD/PH&A(X,BB@,+*DM@RY&-BG :S"79^X#'XJ5-&@?>2G* MY5O819B6=20WI-E/_,;Z=7-\1H ;+Y4VA>-81O$J,O,!(&W8MMA*1=@8C MN5J"XY;&/I@\O@[((?_ML*H2\EB3Q8KB(%#CD+IH/A+.8L M&8)50="D##>=W*8;CQT_M[V#?F>#**=!"L M'K,P<-(R(5-U (7TO,EU!W=*\\"#L&J'G!6 M]F]4?=!I4AQ[]RI]*5TAZ8KQEB4;)&G"!19L2DPD:[R7DD-JTFWC?K'&=W*: MHGJKH'8P2 9TC6I.[.O>?U&<]0LN/\SR5_; [=\B?DF4:\P.BR.H4R0?WA7% M?*ZWA"018BA1H.UR[WFG,X1=!'WFCM6H. _(;ZMR;Y+K,E';1;*A#S[O%VG\ MT\[QH)TUQ67@H] ')"P4NPI4R#PD3E$M4$#+DV-%1)]U4A!]ESKQ@[68>PX] M#]%@^L Q=!+G%U)=.I_"_,5B01OR=(*+5V?I:MN/%C')VEH0Z O7@D59,LN* M2X (+IIN.9W[1AGW'&Q(*&8M]-@@_?.ES/GE%!973?$NKI3.V0JM(DNH"]-& M6!9R2 QRD"6)9(QL<[W<)HF>N;AE%XBU#[MF3.9&_1D:&#KKVV!.V/RG%68O;)Y^!$FWL?QC*!KHW(6EM M'SVW:&&*<]K>7KPA!'$^KVTTKC7+HC5/Y%*8"FAKKLE3..\% YEXX$G0K]OL M*)MEVD-]Q(Z0K>\& ^E[X/1)+>*9+SY,/JY,W&E1( K/>(1()NXBF3ARYKD5 MW'!3&_ /%5/<&/F9NPR[(3%@RQ QIW8;J#*@?. M*JR+)$ 8CYGV,NF!@B4*C*-(@@43.<^\6!&ZG,0<#JKWY W:@-I'@Z-&_DEF M$0HW+$E+*U&J7$V>@07G-::4K+'=+HD[G,A_)]UW#O7[*&[C?CQD9\#O83%9 MS HY#PO:5;>3MZ?37L.1@>9&MKTB""D''XL& !I.#AY.A)CX:NOM"^4#0 M[H1ZB24*V>D,,NU_LNS3I@^A=U)EG MH[W..4:3*&"ST1KNM.6[03],+[]?\<]KCY[/SNC;=!%ZO)Z__% #C5=GUS\Q M.4L3 OCGK]7,1M'VAYH\VDS;E4>@ -4Y%I*WCO8JM-"$U[NSY#O?I779$.=XHR?N1C7 MHF[=M[4[*$-7B_U]-LM_3J;3%]/5!S&_P7FJ?=TT9(E!K)IO%:8+3PRX1T8S MU)'_N@N08^)0*@E U.:A-CN:&@0F./F% M0F*QOJDYW!3GN1K'#J TH,G?W+UJ0O?M1;^4Q8D(B?"4P$#6FT-+J@4EDE8Q M'T56--4BF_3LV2S2>U.@! M60BH+&WQW!79PE3OE6I?IX^C MX:$/("G$+[/Y:>T!^^/9OSZ??ND.)&T.-#W+D&)_"OF$J719STK20==3& UK ML&](K6P:80\77&^O]=G0*ALZ1?;K[ ^DBT MM5,=CM$CB@B.)YU3]-(5Y05!)8M31=]QT%O@';7YPV0![]_/\3U<7)1U^8D= M3C9[C]%"^WVFM8:**1IT,CIII73(UH=2G!6V!.F$DO&N:VSN'VTW=^[FPU]? M/?QK?)V""1C ,I-UK"D[6N20OC-^=9.?R!:;W/'PD&"[7]"Z>M[%=0EGRSFD MY7]-EA]>GB^6LU.<7S0,HKBN4HCHG_P./IT(;HQ4.; "J3 =9&!@BV"TO41> MXSHGFE"GMY!U_$UW4$NZ?L!Y98*B^ !#]0:5+BQDB@\L M%RXIT$Y@DZ3@?4*-E?-K:BB#:?UQ9.P<@)(Y&@9>*Z83=RQ"D8Q+*,E:D5-J M:-V;F=E&U1\/#7Q,9_9_G(I54JEO^YM:C]YVVZ:7GV6!*&CKW=C-_=%,N'4O@%/@Q,C]@VM1N M%;IXEBAHIS@1Q:V*O W@W3/(HX5Q*,4-7&+U9C[+YVGY>OX6YW],TD7;$; V M>A/)N1#2D'-1'//26R:5R0J+IO6EBQO6J<[J+@&>C,5>RCHKV+NN9AI!8D" 8 MUQ$L"(R\=+O:_?:SQRVT'$CCL^'4-;37]1LN$.IM*F?Y!]J3IK./U7NXW)ZN M"D&S]JHZ)=XEFFO0R" YR\ACD1Y$;?F=.L'98;!'C^_0"AUX@?X2_/T=ZZ79 M'S_4JVU6JY))Q3LE!(5[0C*MC67 #6?"BZ0=NL+]8#<7;I3B2?EGP^AZ0'KW M2JB+^."Z2%>W)740:F@G;:,T>^B_.0Q:LU:J'GHAV"@<+\$' X6)4&O4B@RU MD8"BZ#%K1=%D"3B8IS8R_O=UTQP1_CX:'ACV%Z%#AU@T87%X.Q!"]JVF&CM5"2$@F"MU'*.^A=72>W*[&1)#TGTQP2E[5G M-B$ZWB/VFNZ==T;'5)144=>^3I(B'&N-3RD5J=1=A,>-$]A1VS=_\R_,/YS/ M:Y$0;:ZS/"@&G49J@4S_*:[AA1E$;;HMR-O4(A2PE0KILW4A&OK3'7CUG>R. M*%XC\[^.T\E%%#TH>O>.T *U[E-:7]GJA=#"% A::4O+&?D)M!T)6ZP2V=]% MR[YWK$'8FZ_J0!3/?/PXI7WWL7LK%ZW,;IQ,AP,1L-),N MU*L4R/6/RF16>'):N&2#:>)P=Y)N_%/MD2UN P%V0,P:A&N=A/SQTT?2#^9W MDU/ZR.OREGZ[*!===B]T*4YD4;5RN]ZW*BCLE,HP7\ QKR0YO@)$B4WHL4-- MX&B>8R#?@$RWM1HO4^HF"!558,5;PS089%$ ,K1@@^*N)-FD.=EN8H]%_#X, M&QT#VWV3QS>>T:,(,H1L&+@,JD4$7.@\6.D"=(/)(Z@:*%($< J*!@>.96IE\8?H#+U M4=<^J$P^U$MZN6&UNQ"Y10:81]JIL'AI,1F9UJ^Z??Q4IJWQ'5JA[<*0[<.I MMTN8+W^ Y24STY=Z2XUACJO,=*X=.J.+S$63LC0BH6A2%#3L-)Z1[W@ =K"G MP\3[RR%@EJEG=2@%;KH(WJ.B@L.0MJ[CA0? M&.V8>C^FWH^I]V/J_9AZ?S;F>4R]'U/O^[?18^K]F'H_IMZ/J?=CZOV8>C^F MWH^I]V/J_9AZ;Y-Z'S))^2LNR6]L77.L)Z>=G]PCWBZ:VKZ7\MT/&EQK';HHZP#919(,7=0A MY9B4QAQC$L*B"FE==SNV4%Y[V@Y<\PU/&ER'7;CC/$ RI"\>LM*18D@1T=?^ MJP&]L26O*W$8COB+L^4D3Z;G-;9XB^E\3G/%Q46K6,P7K61//YXO+VOC?X1Y M39\LWEP*\37RE=8B)*=8D9*6.Y$]\X86/ADL=]H;I%FT2"T,-8%=,S,[RO'B MM%Z1M?S-N,C MWR U_C9]P'P^Q==EQ^E<)"2RH9@D1,% !$OZ](IYA9E9*T"B=4&%-E?>##J- ML1*/!V'&>[2 ?:^ MR1O1<$[[2I;NTU*'7?L'LY@&1TUW2_8KG.)E@-M%OI9=M!\2<#^-M0_&(CI9 MZHYP[L/L$*0JLB@6@J]Y%5Y85#JQQ+DW1M2&$2.ZR*W-[8%^WH_6VOJ@V*(? M_'*6?J^J(3U?G+--X>RJYXM4N@ BX[Z25$RD><>86=&N.%^LD*+)I>CWR'0H MD=6V -ZZ*F(8[6^,@X;,;+Z<3N+^;S>:7MQ]_@6":?-#]L]Y]11 MT/6T$T?D""I(&326$+FN35BBMC?W_X?LH1E9>:\P_3A;#:= MO?^\.NLN.+_V7\W.X"S_/$ED/OCB_1Q7__4.:<"V C5$=GB%K5F'Y,Z88&C= MIQ?1.H!05'0R9Q-:1X=@V!HT0LV16.+B^MW@ ZS*PPYB1W/^>YJRD3>Q.IP*N'DCU4T M%6)0UDA-7H/QE3[O&13!*9KB!4+2VJMN)[?=QAM_9]R;5:T=$@Z.1H.LXEW7 MT/T\@3B93I:?;_4I.JFY*J%S9NB!/,[($_.H')/2DO@B2ZV;7*/83\QG:'(C MX-G"R?^2)QI @1>Y(I,,9&. )6$ZP0":)N436*#P:6D)D')1FZ%:G( M:QSN6IZ[!-A_%GD_]C ;$)>!.9B_X@BY-"TW,[2C4_3 MW1W(V5@H[,UDL@PJB229LY6K**UA)#QYJ,45X!I,M_3:8S"5>VB]>[*4/LH? MFN;[][?_YS+'9\$4H4QDTM5+;XQ %@HFQKT2KDB9N.@6(WYYY+BDST;ZGNVL MK %#N-4\ZU:WLLR4! HCR),W)3-MR2BA@*+7S?NHHM-<=8G,NKVT5Z,>/8,M M$1CX;K^5$%?7%W408_ -_^OXXV_I6R*PCN$.ZAMZI[XFCC:E%H@)AD7HFAXR M+ 1%2XW,G-?&^:D3*>4P4+QGMQT6Q#Y:&QB\7TA3I^>GEX($G4J17C*E0V): MOV\^"AOI)'-[*1H> M7PZDFO5>0.1AAZ*UC"EJ)5,(WCFIB^-D,:[DS2G)[>4YH(-*D6.PVD?&TRKD M0%.]3&2<8LH80$?5Z5JO1WE0N>4Y!3=HK0)@TFO:#E26S%>FDT_*.RPYYDZW MWAW/G8:RRQW/G?K@.7PY;*>#6 MK0'S- US5RER(;0"9GBAEX,#L@!*,0V:W"L*HY W<2B.9]X[F^J>K>%@S[R# MIF" G "6@Z<8-(C( KVW#&D^F5O0(/A08?<3/_/N90\/G7GWP65O!YA=A'SN M9]Z]@-SJ)',;%/9'DPCH='2"B52[1D9Z74 DPPPDE\%:D^-@B=I'=N;=WE+Z M*'_H,^]51NDR90G*I. HOD@&.=-8+(M::8:.&RF=%T*83B'?M8<>ZKEW+YW/ M!E!8 _+R._K3=3W7U $BO5ZJ. %.+,NF>8D**+>OU'U06=H%Z5_==X5,4V6:*5$ M)K@L3(L8F,]<,I*8.YJJ);XCH;&Y2!F0UW=JKEH+-,&IB0 MBGPX0$%OD> L>8O6)IFS[U(V^>@:>A^(AS0(+K?M1+7I\-Q%J.?6Y+L74)U: M/6^CY=&:?)OLP J*_[6,IC8= 184.(;9[0 M;L;E?O437O' 7-$J>!>8 ="T4]6#,DD+&[>!&XX2:=:=W(?U)Q]* ^A>VIX- MI:H&B9!?:#9+/*N7Y5P*E*TQ)8!AQ6K/=!'D&PN/3$>=='0I@>Q"6^P=3=R2 MY#%C/8QZ#X#<^':RA/?3R;%\>_[QX_1S>T9C]Z%;TQBW5,(Z M=Q$K=S449532Q6)P27$CK';290GB >YB=R$.B+"84\@^DK5SCQ0D)4P,DJDT M'- I^L0C;\1OV3]A<;7>WQ#D[N[_7_![_7$5_TU_K'93_8J+"X).O C&:2.9 M4K;4; 5%FJ@=*RBD".0K />==M,!A'GDW* ^]GACWQX;Q_TW;"%%V51T/>9Q MM#TE(4C:7%BHU8TJI!1*/!)G]V"/(^ Y.@\R6^#!B<2\RH%I4_QF-,4C!4)N;@V?4&/ M/,A=377/UG"P/$C@)5"4@PG.RX0F''F0#>SA(1YD'USV M1FKK(N1SYT'V G(K=MLV*.S-9&P2F7NCF4/LIORH/DV;EL'GMBH:[*(TU:T;P>'F0O72^D0?9 M0V'C\2!#\3EQQU2*-!^C PO66@:&@]7H;-1-"$5/G0>YC1\Q'%*'P(/L(.Z1 M![D[TKOR(+> Z0!XD E1:_#(@ED=K062.$A@SDFR!Q#*V"9!_$%8U78\R!&- MJ@\Z0[LH:P=E5S=K&Y%4;3'CM:'E."A-RW&BU=ED$I$4D66W MB,P&5>CUXF#I MB8,CWT>Y0^_^EU*]A2E>;7T9E>4V)%9,J8UWBV#>"M__:S M#X6VUDOCL^'4M=^+VWX\^]?G4QR!HG;O0 T):=TGN$8_LSJ8[+@PIG MI8XB M.PD\29YC$>&>UGGW#GE 9+/ 95 !?:TOEXSFR%E4T3(>*Y&V1)5,HU9O^R>; M=3NXUUJE4(1GSNC(M(^2!1X52_0_I:36P8_?#.^1TRSZ6%T_FD4?M!KDAAO$ M$<&ZX)TGO\)FVD M!J8#L*[:Q4>9>MK,.3D8R3L6$B\,DS 4]&M]ZZZ>)V156QV8C&E4?= 9Y\!$ M)N#.!,\D"LLTI^]"CH)^S(669:E4QZS)(STPZ87(PPS"--K MM2Z7)2ZW6U6\I7AFB>\GZ49/BR]_WE QT^1^]Y%D;GD%_#[4OI8V$D%X68I MCD6+; %19Q^U=Q2">GY/VF@LZ0\I R6M4,4D1LH1M==X85 49S)6K5FG!#:Z MY/JQ9*""3ZH$:1BMF*0A%.FBF-HH8UP6/@O>I+K\26>@>EA=OPQ4'[0.H&(Q MF)@O< M@J[,F\P,**T5Q1&N4VW.L):ZTY2.5KUO.QF0WMOG>A4OK<4<"K-1 XGH(_.) MWE0E"PKO=8[K39V>\V4WV]A9*S0&Y%9M$/$=S-_C!9'@I]G\@E PH2_+V1F> M9&T"A=#(1."*:9&0A0B%19U,4B$Y#&5+P[EOW*,!#8[.;4/2!WCVZ(P%I3@R M)VO1>@B*!1LS\SI&A0:ST.)X]GA0AGL@UK#OL\>-=84>P$EG*RW7T4LJ7631 M)PK/(MU0 MB\)[H31KJ>(6^5CX.%G"M";G7LX6R\7K\H^SC_/9'YC?S&>T?R\GN/CQ4YJ> M9\P_D0)?G,[H=_]:G>9\__GR,Y]?S^F[_\%T<:)N/!KM@F::\UH 3^\,I&19 M*C*46H3@G6_AEC>8RS-WAP[%2AK4N5^*/9T U M.$"X*53.G OPDEFLEP>[))F'9)C(B7MA0[2^R>G4"-;R )7JL(VE#RY#^U7= M*1)7EBV#E\(85B(MSII[9%!,8"H8BUA"=M#M7IZ^(X^?-MT!I=E8*A[0Q[KH M,OS#?ULA]*4D"!(%*+)LJ-WGA53,.]3,.=J&2VT:93KV?;[^V$>+Y/;*:;"V M7[6 ?G&3F_35I[HZ%7PW>X/S,IN?_C2;OUY^P/GB^\^56[I:Q73F22.2A2%D MLC456!#6,\$Y"B&E-*Y)W< @TA_=W3U9PH '=P-,HD[AZF;8#I-HZ1@/,HO] M.-1[L*+A['A'$SBLY?G:9 0J8;*WS'E+KH#AKK9'2BP"9*,UFF*;E,L>L!T_ MX.H_%3/N@_S@_32O#N%?GUU=&L0C[4\%R%WBY.)H;PWS7CAF, H>@RS9=W/[ M;S][?'=P#PC-AE/OT"[_%W'>_3F[\I ]=SP63U.KKJT7I=X3 LR08#;'P%6T M_=#^\NSGB_9VZAWZJ*U.^J+#CO#9^@1,F&29QJ)8=#(R-,9'$8/.V.7"BVY' M:5>C/G./?7L$!F0X?1'B:NWI(,;@Q_!?QQ__H'U+!-8QW$%]+5[J+\DC-*!I M,5$\.A+'&P8%(U.YJ&PA0+9=DKR'@>(]9^##@MA':P.#]PM\FIR>GUX*$I*7 MN?#"()3"M +%O)26>1& MA,(]2TE(IB/G+"0DN<"!$:DHX[M=/WOKT<]\!QU W[?1-\.A?W5C:P=Y[MY3 MN]C!/M)$0RA^(X8[:&WHV/?.[N]Z$:*47*3$1:O:%%TW>G4L,O4XJ!*?Y.K/SV-ZL M];'C[DC=-A\[=@.J+N(>VYOMCO2.G:BV@>D VIL)-";I(IESBL1&2:%M*H') MG'U$+[7%)M3B@["JK=J;C6E4?= 9O+W9_0V'+B6TDALO)=2+<30MSQP80(HL M9Y6TEJ2IW*VTO=-PA]_^K!=BLZ;JWF\[M ?FTZ*;6<-]4(I'=WFBN..@Q]0*S!03C@']++D>K!5,2A%C M$:98V>4VD2?<"DP6-+E0E&/0U?;F&FDYB9)ER6D]*2+Q]2SML178D%;7KQ58 M'[2&3C/<[EWQ)6R^_-.OYU7)L_(#?%Z4V?P-?*XZ.E$2@$3-+"0I:5]1E@4/ MG(G5Q57!"]_Q.MIM)7B&YC0>8L/G+SOUV%'2>2XL,.M(,"VRH*B]"%8DJ4-Q M1R&]V=*HGF#'HP%-:&6HO"9IO@;G@VH.TWR$E&IP.]-H8%H)=*VR3 MM+/M[MD:#K9-4N&>C"[ZRO5,],4)%C6]I-QXGRWY&06[7'-P;)/4TQX>:I/4 M!Y>]];SI(N1S;Y/4"\BMFM]L@\+>3$8J-!"U8VATO=?!:49OR\62KH*M-07F MB9A*WS9)[2VEC_*'#B#?S.84X5X1*V,)$$MAQ=1>/5P7%@K2I+.06H#DMNL5 ML]>>>JAMCWII?3:$RAJT-QJF>$WP'(24B7DCZN6[ Q*BK1C@G9*N^A2DQL. MCC7=N[LJ^[.$!JF)@2JO.DSB6--]IU'OP8K:%,-N80('6].M@XF&:T$1==), ME]I^I- BE;+0"1V';L'@4[+C46JZ]V_&?9 ?H:;;I!"RM8(5)&])FX0,3#%, M!BQ""_JRW@_LR==T]T+H@9KN/NH=H:9;.Y"BF,R$ A+'!F"A]@4-Q44>@&.V MHA_:C[ZF>W>TMU-OLW?['0%W97[(BXDZ6@;>\WI5)/FA,6AR&E#% CX4V;-C MP[6G/V/$MU3Q1O=Z%+[8FRDLJT[>8?IP-IO.WG]>A2L%YW>TH6O!'MM*@(9< MLMT5LL8L4YYK+;-047*=70#4:%5445 (:*7H*Q1.%:(2#R(S/AG1& MZHHBEJYVGD&?/M!*E9L,JV7H<:H#%@ZO9!$5^*?RP6Y\N^$Y8->SAN=\4CMT$BCX%S$R78QC49-!Y53(;XR.6W[9&@Z6L*BEEU9(R83(DFD.@8$/D@5$%!%],3H?"8O#V\-#A,4^N.R- M?=9%R.=.6.P%Y%8TM&U0V)O)I)R,#TXSF>M9F9>!14OHH?^C*-P%RE_L"GI(=CT);W+\9]T%^!-JB=584FPO+NJ0+7IV//M,F56Q*,I6@ M>Q+9'CUML1="#] 6^ZAW!-JB-9"D#LA#&6*QX4=#M6>CJT MQ=W1WDZ]#;8FFF_".N6J]]\FB]^___P]GJ4/IS#__:(?(-?:*">8M[HPBH5I MKA8]\]R!NF)]OR;3 M XJA7=27L]./YTN<__C/\\G%?GZ6W\[*\D^87_E4V1COHLLLET(^O N)19\" M2T&(R)6'*+JE-1\>:Q]$A"'!F;73[(#>:DWSOIG/\GE:OIZ_Q?D?DW01K8&! MG%RTC"R]7J!10BTPT,Q90WZ:$D[Y+K77G0XR[A+@F?LE@^ R(.ODFCQU_I<2 M+2Y?C"Y"#7U0NE&:\0]&=P?J-NH#:7G@@]#-PCEM=+0A,V5)0BTI$@-GD5G+ MM;+!B5LUF(\&^GL..D="OH]R6^1=9Y]ANOQ\N5-Y\-YK+9C-63 M'-1B@D! M:1N%U%S&-F7?UZ48]R!T(&36DYI;JW6_/=O'*+/;0R7=-L5R6&(1L8!30# 5 MB,YX53A$J6E3EWDS0? 1U,-)02ZMID GR-J)R)-?&G-=QW@VU@J!^8G7PVW= M>MEZ98I P63ABC07+(6(4C&N>:%WO 1>MJU >1;-LOM8WC#-LOL@-G:%W&WJ M.7AK8S2&J23K3<%8*%@,5>XHL6@5D^W":CV6$@QMA"/@V<"_:Q#S8A1>ZE"# MW%!]8*Y9E$620?EDR!1,SDTNC#J6$NQLNWNVAH,M)0 !V9=*7341F,ZH65#> M,6-$KD>,H:0NO)%C*4%/>WBHE* /+GOCA7<1\KF7$O0"U?GS$RX%XQ"(#)\U24Z[*%/@93Z5M*T-Y2^BA_\#8',UIQ+[-"3F(R M23@6ZNBZB,0\U\!0> X4JD0K9;=(\NM##[6(H)?.9P,H[& K"#S:(J0+S CC MF0ZFWF.?$[..6TC@53%-6J(<*PAV]U/V9PD'6T'091+'"H([C7H/5M2$>KV- M"1QL!8&-J9[Q(>,2:(_)A?8H(RLA*&:4BBL>#ZW ZTE4$.S?C/L@/T;C8U0" ME;2,=JG5+0^: 7E)]9YG;]#()$.WBS&>3@5!+X0>:GS<0[UC-#Y668O*/ NK MSKQ)>A9Y?1L4<+"E<+->5_KD*PAV1WL[]6Y\M_=X:?I(#7![#S[Z1>I;-KX% M'FV2+CLM@]8AQ^12,J4X:8TLVO:]4OUQ-+TU18;,1696(J]K'%#0;3F+%K7R M$IQ037R90SCD[];Q4M&ZSW-*3$0!M"YP(.58I$TA^Y)$@+Q^2?&Q/^F05M>O M/VD?M(;>LSMVQ(PI*BZ48<)&Q[0NEL7:1\YD46CK$3RBVY(=\@3[DVYC*JW0 MV%-#6V\S\N0RJQ4"3 -]!X$6#)N"SCF0?IQN9C#-R2Q*@;7@/2N%8CD-YN*N M"<:33D5+Q[EL0A5X5F269@ON;G@VJ)1LD 9. B 3<'Y$ID.KK"(1E&4P37W M6AONFOA(1S++SK:[9VLX6#)+<*A Q<)\;06U$4MD%A;R93K"E&0V"H2$0M@V+Z<))B^G/V\S%=7 MC_GDE+">@3*B7C>7&%@=Z4O&Q),4T70CN#PPT*&27GIA,VNDV(,EPHBHT 4I M6(R"7#\9,PM@.)/%9Y Q:%"RA>=]),+L[N/LSQ(.E@C391)'(DQ#!D$O*VIS M _@6)G"P1!@,(4M1R%>QJ"@R+[0B..>8!1/)F4%)"\4SL^-Q;@#?NQGW07YH ME_(?'W^:DXR7I9N7[@Z/'+4@%TK*VNVQ(/E1SF063?#"VR(@EDY^Y%U/?ZST MB%XHS894\?!':W?IXS>^@1\.%X0<2(2F34JFP^CAI*N@,B=!4L M)0H3&#?@:A\AQ[SQA07,W'D=76YUG'XXA*Y79W_0RE,?__K/,\S?PQ3.$K[] M '-;EQ+=[-7J1_GD_FN-HE"R9VQ1PZ+6GO/5L461\&3O8 N+N:JD0&0Q431FL5@N1>"R/.A)/.>F M4MN8U'B(-^R:@V' MUH"DNLONU;POT!GQY#4Z*@I0SQ6V:U]LW> HLN P4Q@5N'"9N3>RT-CT\ MUC,TD18H#-@;^FNZ8;48_D0*O$O8'S^EZ7F>G+U_L5@@_9/?P:<3I0TJ+04# M&TED!\!\IIV8(^>^-D_EL4EQQ1:R/D/#&PO9V\9H#I &[+Q"FZ4BE0'61!AG M@=O$N"M1!IF3;%/V?:0![VS >[:&0Z !?U5!O86BMIU>?ICEKU'1[=\B?N&H M830Z),Q,F%PGFPV#G#@#@UD6HRWI?RCZWBZ"/B'*32_[FNT!YX&YI)ODNCJ% MZ"#9T)SC^T4:GV@\'K2SIKB,:SG%)ATX%.:=YK1OR,2\K@2V3,XR3]J+W(6D M-,BX->4@H9BWTV"!G_W8)RXO#[2DL%J_+ZN!N9= \ M"@I%C&"< F6F;?0L4(3"/-+O,>9H(F_BOV^2Z)E[*\,BUB*!>DV>RU>FBT1- MK]F\)=)^Z+@#8;:> QU&X2WNT+PM65!<)9,+X' 'GM+V]>$,(XGR.%T20RZTN>1 :DV#%2IJI!,D MO&+*) 72HTNRRR6)_7>4S3+M(4NY(V3KN\% ^FY2TS0EF\]O:@G7M2UP9?21 MF:UTTSK&%@(RC',1H82L^6B"1'@'IF.[L6@J#7H5;%!M,NWJ(MP;:N% M[I%N7U5 V'9S49V *))SNE;FY>STE';K"4PG_UH)2;OMCV?_^GR*;\\_ M?IQ^7I?5\ A@A*[)'\^T-R0F6L7HEED$CT'?C)VT5+A ^?*[^Q M8;3AHHC"@DR6:?""@9(4OP6KM \^&0N5ILKK.F+;7Z9@@&I99:V-BD7NO8 VC('-S8EM" 4CI,.76721Q[ M &T(WT:WHB;-4[8Q@8/M 23!>*N4HU@YT+(@O6%11L],1AFR4D%!DV/0 [;C M47H [=^,^R _?!7EG3.X\K+>(8D\^829)K*8T'BKM,Q5^B6#*B)+1OX0^5K: M 0LN\?I=]):^.MNM6&D'(1YK,Y!>F#_<,V9XP,9I/'1#[N]G9^>+O\]@^@M> M9?@T1%\RA7'<\'I378HLJ Q,2.[1F5!T&VRDW9*B]PEP#./50;! MY;:=V 'LI,[_4J+%Y;O21:BATZX;I1D_S;H[4+=1'TC+;9:*NX1327$A@PQXQN$X5N?*E'Z39XZ2775ECT M[6266[0/W#A(PWZ W2:VUN#/:%O06%XB6FT)*:VTHF#0<*.,+WYSH?G&X09I M=?$;5IN=G+V_-LSK.)V\7T6O/W[ZB&F)^=WDE#[RNKREWR[*A9_Z\Y>R=J=2 MTCH!\W7]T:7VHM(\DJOJ@H#$.=EJF_S94%,8J&_(]I)<("M.*'C4X"GH$,+6 MJQP#*14=9]X[;TU!GF*CVR*&F< ^XO:]V/&&_B+C6D"3 \\=YW$9O=(F%XJ- M579#T:N@;G[+))C/1C-KM38NT'Q*EPK;1T[(/%WIA@781\[N3!7D!N10G; M!H7]F8Q +7TPM$+;V@G16A:=1V9U20"H2EEGJS]:4^E+'AS!4GHH?U3RH 9% M;A])XJ.GI;-VGHC:Q=K*@ELCM425'XJ3'RUYL!O6B>*'1".4'RW%_&?69NA';:7W OAM?A+BTP"YB M#.X=?!U__/U_2P36,=Q!?4-OZ]?$43YE)X-C J6F]00- TO+B\&D4 ML1N"UT=^A ANK;CQZOXO6:"QMN.3+%MR]+5 R[PD2;4N7.>@A6F5*CRXMB-[ M])Z&1FKT5B-=A#NV&MD.RUY=)+8!8O16(Z;>V!?!,PG1TJH:R:]QUC!/<::+ M3B00C9KV/Z96(^V,I(_^]]AJQ&IGBE*>!5#(=/2U0H$7QCWI166E15AS^)]< MJY%>2&W9:J2/FO?=:H0;B,5RRR)&>A," HM*A7I'A W*::<3[V02C[S5R-9V MT5+A3?:1'7VRMTM2X ^DR8ON310X)U> (;?5G9?52Y.6R>+0>Q-X['2^./[! M^(UI/&L'>6_VL+%!RE[Y?"=K>=1&C+Z3*^[B'5-MQ^E;G]PZJT\F"JL3!#!) MUY1(RCY'%1.GZ%KJU)_51P,>>7U'7M_!J/+(ZSOR^HZ\OB.O[\CK._+ZCKR^ M(Z_OR.L[\OJ.O+XCK^_(ZSOR^HZ\OB.O[\CK.S04C[R^(Z_OR.L[\OJ.O+XC MK^_(ZWN,C*TCK^_(ZSOR^HZ\OL/D;QUY?4=>W\'P^@9E/L'BPX__/)_\ =/* MT $2GWY:?GZ+Z7Q.#\?M6I<]_-0!>$T]15^C,043Z V5]+9BT.!X;3TK9(Z" M/$L@)$[Z36)@K:^4@A"@R$D*R M PZW)S0P&O2:?YR=U3_.RMJG=VGP-\2X8Z#8=_IK"/O$HX5HI(Q>.^6C3LF+ M0CA+HX+('1#N(,$NV^;-)](:_@O,?Z?GDEE]E>'GK_P4X7T&?*?[^OS ]QY.WD#_!9+X2[X?) MHC*>SN=X(JS6*:3 A*]Y5EL4 X.&%1U)2/)\LFERP4QG"9^=*>V*TM"QZ[4+ M!#KIYB(AF&CW4&@4B]8#Q5?.T7=3 M-E>L+>>3>C!QMXQW__;+\=3#LC>^*7!KX?>3VQ_*$&Y?ES8NBH=FB4HZSQV] M^S;&6GY1/ O.>Z9LE,4'SI-4S\,"'S@W.$0#[ -> \/[A<+MSQ?K_D_G9_E* M*F-0<+3(-)*7J)61Y"\6SB2B!A6\T"*T,*F[Q=G+C6DC03H;'(^-X>"X">5W MY-Z=P[1IXFQMC%%2G?=,:RTAEF7PP6KE2J#XG7YRHF10W)5*:9!=$F)KH[5P MCK_&%QI+CMF0H9:P<^O*O6?=H/7?Y[A M?/%A\O$-!5HD+[S'[S^_@3E]>U*T*;E(8-9G4R\N0A84K?\>I!8I\&Q-$V9& M#QF?E@6U J>!@_7J[ \2\.J:S-6EJO6NS/-Y%:X6@"P7)]Z7$+*)S,5"(M+> MP&HNA^48#29OA,#,_DM+&1Z&1Y BE=D[*$:S3&$&TR CBRDF M6B^-,ED573*.Z ,=QJ7'0\'?/2O:!X9#RT5UD?V8%6UA"$,FI;9!\= L4009 M93WM--ZF^G(ZYG7">INH3$FBT;)1-[I#L\#MLZ)[,\ ^X(V7%4U@I20_@JF MEFEK"_,>"LN"*Y.G35LJ?>!ZW2_Y!Q6*Z7/*842'"O*U@-R92AJU.09>NF2 MYP;$<'6Z-T9^>A[R;LH=N#'"%T$N2PBZB#)TE1@ MHR1?042F)2U'T='&D9Q B6!!K?MN!]^J:"?==VY(U$=QHQP]?^&W_H)0R:VK M=.XVY\MW/VCW0^0. JZ=%#N;?4TZBZ"B%EX&P*12/=5/.9$_=/*@J+MKUTB;'0J.T&$JY%[PA$)K,+18)&^2-,5J8_D&G>Y88W3G,W>@0-S[O$:Z M[4)MD$YQF1T8;8PNSD'41A@*QK2(/NAXMW*'H3%\>?3%@0VYGC]/($ZF*\+$ MY7#Y]=EOE40QGYR]IP_\.CN;7_WX/2PFUPX)HG*E:!N86!&_A-#,TV;'>.(Q M"J^T+$WJ%P:=Q:Z1[$^3,SBKY:VOSBBF.U^!]>5W%P)^#]/:T^/M!\3EW^>S M\X\DQ.)%I(]#6IZ4*"+&2DU/,5,DGI%Y6S1ID7:D6E:K19-DVZZ"CQ\U[\]Z MU\/H44'?:XV2D;2O6G*, I>*M&0=\Y&^9"=];5FNN&A"D.TLX1[,<%3PMZY; MZH-<@SSP$"_K12(D.$Y>. 16!#=,HU8,LL<5E;-D!A%30)/*X1Z8]AKS# MH[G);G:$8K1H=?6FJ%QL,KKR5 5)9F,AR;QBR6D7%$9N0A-:R>'1+@_#;QH( MJ@;D\-W*$CO(?J1FMC"$0>N%MT#QT*B9D"RW607&I1=,@Q L\"CI7=7>))'! MKE\;\U0M<'MJYMX,L ]XXU$SHY F0DXL>$-2J108_4HPX#[FNAG$T*2;V9.@ M9O:"M!LULP\>H[ &KF>S=SF1O?,YNY_$/BS>K>N9+?>62\@RZI"MCQI4L2$X M)S7G^>0A07?6WO:$@7N>UD:3'>@"LA@!*E>"@-=%@>>TD)8B4%+F0M43RC)9 ]R:@X$G9 M)._4_/V3V1F%-_,9A2W+SY&&\W;^#JX6]HW.6+:R-\/0+*2G&KP3/M$WV16K-@ M(S#GHQ=ZE:6R+3R#AT7;U17:.,+?Y[/%XH1+6ZN5.0/D%/AZ+5CTP)G#VJT^ M)/(4F]0(WR_6^*[1P#:R[@ -B$*#M-.+E,Y/SU=-\7_ CW-,DU7_>OI^BI>- M[%^3*NN#[_!>< MP?WR,A%N]V4ZPMUVV-W[Q,R+(@$D;.XEB]XDY=5>O_XD*%(72I2JR$*1HA1K M=;#0;07V)R[.E(VYU)1F8TN= MY5?K1X("%@I(%XP$H9NT)'H,U,EITF ,-&V'L17E*N KD6L5!4,K+>&,2*XG M)\3>!1FMS]"F#W57@&/ESS36E29\'$O.R]8E_?3C+_J(9=Q-V!1CP<04%[1; M*FT8I)!(@I8'M$6 ;:)G'; =OA1P2)WHNDGMR,V8)UD%N+K=[ *QY25,!XR' MN6L9G-^N^K,G.0?2(Y,*&6G$T,(?D"_>;F#O2]EDO :$:WZU\L9"?IRMI[0 MCED8+,L!'K5%.>UJ##C0LBU$H7PN8$*G0^')1YT.XPU$>Y_XO2>.OYTN"[J6 M8T]_KU&_SS.NAQ$B-^FT[SOR?G^S3O[_*Q;2XX'P6_F46AE#=<"^>\T%KR$(0/=3):U+;. MC'WP1O.19>PM^65/XC_>2>+J]7=F%FRR?M+_TN$#?'\]+1 M% F=#^078\* (@"7";RL5T#V[&FP TAQ]Y2B1S^OE40[I!5EX$EXVD^R4)HK M2;Z H+,#M46E(_ MCA#[T:+O+[1>V0/_F.]?C;9V/I_Y!6/'1>V*;2 M@RV@O97DOM<)+2%I[I1"+TT.:/46.!Z* MX,_+:IF]+\N?SM]\)R+KZ_?K=/8;_=W%62 UL9F6G*TED7JR"J-+P 3)_LM MT7;9Q&INM:#Q+>Z1]?K>I>4Q:$:+FK+IUZ_3B^4F]1:^319P?@7T(\YQ]ATS MX?SULKJFO\_GE]4^.BL@#?TO,8T\,C*E)*L'/C.J\*;Q*K''PE M+TYY#ZL+3=..GES:?-O:KG(>7(GH2E;,(P82:Z2W%$3-GRI6.F]C-DTRV 9; MP5B)2X=6X8,P?C293^3#_ E?K^[)3102G*P2K+73H#@#'36]A=IRJ5(LH4L7 MY/ZY!;= '#Z7:50UV,PVV)6.%MDH*RSKP'@'-$T3F.[ .5"NTL[T;.%Y#]FV M9YP7=%B0G)PH.!F;59%#0294LM%D5"$TF6TQ!M-/914U(KJ/2(?.%'HCN0@5 MS^I"RD7N:B4Y"YAH;2X$YCE'5LC<"I)6:&2WQN@;'WR >[T]A#P=2$*CU#(_ M')9?U_.LYW^1&LYKIN%BNIA-/G_& MV9?)YR_TLW_H+TSF^*VNYDP6J%/0!=-"DD7B"WD7PB%3-BNC/#?1^DY']UXP M7HPNCLS8T(;?SE+;_@J]B=/O^ ?Q_?7RZ[4 UN^5=,E81Z^4E=7^2CZSJ&5A M"GDV,0CNE.ZDG2,#?UGZ?,Q:T2*PN^LY\LL_WR:SJTIJG$VF^), M1%0N@F(H@,R?5$QMB5I[ !3,@(J7U&3H^Y"+>)FJ? @-V)J2?( M^?9:/I*Q MM9BO#AGX3):651Z=1!:B%'4V<&2^CJT#H1!J,E[(3083-%G-R]3O@^K$?44W MQW.I7,!R%U-DUD-M*D2O+7@IF10NHO:9^XMC]RW>W#[]!!X.NJE=NWG^O1 J$.^A:>(2=I M:4-*$C(F9IRTPA7K\N8LMRT!VT<>

    3',*IPWD/_1%U)\U=@N+R]KVY %H M-EJA$JW20. $S0CF2TID>D!VJ0B,J712C<>?\]*U8T 6&AQVOWS]=C[]@;=5 M=P6,!\"B+2'A3I-12NY1M,DR9[)%+K)5L4G1V59$+UB1AF6KP17,*CJS/)N= M\!)4-"P)JYA6R)GGR=-1[4R,"L&W:5MT"\/+=@EW):.=7JQ4OPN8EI[<'32' M<<%VYN9ACO<0;(/#Y"XH")"E@, >&(ZJ\)\MID)"T+HH)!,]6?*\A.^2AN2 M^\AS/+=XN671KD8[W_N+=;\DGI*.NAY$Y)K5KHS HD&R<4I.";W3S8O:EH4,[\--2__CU=M]N3$B0$P\BQ)ZC%(PLE>J:R+UJ4$)(\ MD-9<8SQMK=F-BJU[3?OT^)L):]S!T^>MBRYG%*P472MS?&(AD_V$ L227R:"IHZ!)U"S8E!E'M%XE+H,XKI3-D\L)VEN_#ZH3+3REP:) MQFH-='0S.M8]T[:F.8$[:7&!V'\.'."? Q"R( L MVUI7#3:R*'ED(GL58@G9\2:EY2>6$]1+$1[-">I#R'-)I^BRIM>Z 8;0AGM>6#'25W":^<(] ^N"X1QBX$VN]Q]%=83^3W/B MIZU8:^#"W[[8BMJYY9Q)268*04%"X6)@N3@AN+5*Y28*=%+7_/M8>;N2T?R: MOPN8%W3-WXN;1V^ =Q%L\VM^;Y7+6A7FC &F(P\L)B>8YJ R9,D#;Q)7/JYK M_N%([B// U_S*YD"+1<8NCH6"81BT9C$> [1YJ@,N':QU^=QS=^+S3VN^?M0 M<>AK?I"R&(\LQ9KQ&AW9,,Z0A+(,W@30WC5I1?J,KOG;:LUN5!SPFO_#I[_G M0%;V3^^'O]U_X+-;7>H_M8R-N_PH0A Q"G 2M(0V'BWNAOKH;],K_#X:\&RN\(6%8L!KIF0VY 1[AEL MV8RN*6U9T-?EB6GZ_F"_@_'P9_SD#ZV2& ME%FQ&)GVM>>P](:II "%ST$QZ#H1'],5MK"0]*O$ZJ.P7@^"./'DCAX9Q1+,%('$343)EBFG2=CWRC' M4$WG%75!\Z(F5/6BY_'!1;O(=H299*2V M!FM?##J1F>:YL*!S8!IR"CR#-J%):\$C2&MK170?D;:>4&5"<%AGW%H=%2$P MAH7:^T9J4S J[Q7O%A4YM@E5O83\V(2J/A(:NG/4FRKG#Y_^?K.\1[H%*J%( M&< RRTV], R&Q2@]@U!"BE(D2-T-;\[2^S-J_=I[]A$Y1/1J%PEG%O M:9DR"!:#\RQA)&='130V]WC_[C_A61.YO\R&COM54/XA4#99+[12S,B:^.&\ MH/.!5"R3CN7$DH_X>>L+S)G)OF348];#1RA*E=D9:5B2F>J5'%KLVBJGD M#$"108TG5B^UC^.S.R&MIMD,G9'>94VO]5([]%#NHRNC]%#>@>CG4B^E M@(Y?S@LC3TC3MHV"#@*?63'%EE@0)!RF@\71*&^_'LK'IKM]^&T1@+BY&UC= M=JWM=SI')%=D[ 6R.G2*+ 32$I-DR=Q+A[I)H)#7^I*JC]K'I=B6C@;U_-[>["Y@7 M5!W5BYM'"V=V$6SSZJA,'B7/:&ASJW5!]3(Y!I!,2[2T&R%/N64SY".ICAJ. MY#[R/'!UE!8Q*P6QRV%"#[BE%_2G39W8 MBN!EFI3#$#)@OM@2T K'WQ?S;Y@F98)Y_7IT -7#P.RF+=O0C&M@#L34M)68 MA]XEMH*+TF4" !3K_2..ET6A2+L^4^RUFYYC4]Y%N(\I_G6?^B4.7C/=Z6FMJJC[+W6CKAJ]!H\YU8X=6FCM#1?2\,!E%B&G MM*6NNM-S#UYI75QV29*EJDS23,=8F!<:F$D>M;-9ZI?5+/T,N,@N.,>D$)'I M'",+12DF@S'.<56B;Y)6_#"<(PS>#ZM3W?RM7JR,YY _+935[+[?Z!<7\]\O MKLJR?YM-YV1F$&1E@V4JUN[JL;8?+%G1$21%<+39)-=DW%&#M;QJZ=_U8%XOZ%>8S/X+SB_QS,2 ,'3HK)C6I.=%42TS ))&83VTHNG;(JF"%^, MZAX/SX?(@=JVKNL5O)G/+[]>+;*::+6?YG]-S^ECSB>+'\M:OYCKG-4Z7-'6 M?N_"U/?3AMH]UF 0LC9F/*K]NOO:7LQ+<*SZTN 2>= E?IS,__7K#/%W>OMG M.+\J?@TZ%0VZ,)U\;6N0///:"^:S-N0?@4CJN%R'KBM[?1T.JBLM"J5;O.\_ M3[Y/,E[DY0*U#W5PHB$'10$M4%D6N) ,E1.W";[5Y>6\P]7Q7?5P/N:[,]UA9S MQGE.!Y3B4&=#\&J\<6!6@#:V^(B\711PZ-6\3/T^J$[<5W2W=Q78^?)W,#\L MW-7%0FT%'+FGEQ#Y\CXKT^NH V?6*&M%H&^VF=/1#=Z+4\4&K-W7+;^O;OWR M]=OY] ?B)YQ]GZR2Y.]A_7-Z\9U>#H,I:_>EYM57OD?=?WSJU1-7:*.11A& M]AAM%0H5BZ)$IC%I;CAM':E-/++%:IY1/[N]+/6#:\*Q]+;[_2)-O^)U1N*[ MU3JO,A(3>1Y YF *F3,MO&&^:,NRDM:88@38)N,0'L%T^,SN@RG,M UQ#:J/ MMD!;)R1W ->RL/!1=(1+4C(/RK,<+19:?Y&BR1U8!VSC.Q<#LGE_XNN@5+3(E\1S^M'GW_ " M9W!.0-_DKR3Q^6)&0OB.*ZSK-@PJQRRY!>8,&#IS [ (])5"%X2.D+5NAKL/'>;T"3!M0"I&=CDZRP-Q2 @,BNDK!DW.:HF]XU'UOWL6(S? MW">WH=+';[AWV8FOH%N(?/[VI8V@_?OK[VN[D(0@N7!U6J9CF M(A*N%%E23BGGK=&J6Z?B>Q_]@I5@ %D/77QTNSM?5Q6B M8$[)S'24BH7(%3.H4RZ88^#=JLN>?-2KC@S)18MREZJYMR5UJWV[--&"LI(Y MJ&T^LZT-X6FOBP:S*B*"#%V:7?2W?K=C>L'Z-#1C#H&_C"#T$KBHN"09"8^2;-G4=C M_XGH27OR^TBX:=!N?7#>G*M_3B]PM66N3C=(2@MM/;/<$5CG(O-<)>8\=YQ' MB,HV+ISM@')\"V5O7K=&VH8FI7$O^)A\L"XF!EH#+9K3R^$59SDIB*7^7V,+ M_3BJ7O#'8F;L2DP#L_1N5]LN8%Y07_A>W#S:,GP7P3;O"Q]#3!B!_"M(KDYW M5 1/> :>1Y^] 2&;E ,<5U_X 4GN(<\#]X5WM$4)%)8)Q273PM*B(THFD^\*^A6^3!9PO(W!W']RMR^N=O[]_W];M<#8ZL88L M? K.62&\SCX#+RX#O71.)*^L.-L&;&?I_/(/V:Z3.4[+*N*]1V_<3I\[K#2[ MP=^06@=I)+?,A9I4;)'V,1$T*S()F8HS4-K$+1Z%M?>A>O.9?U[6 M_7HU-&+^^WQ^67L=UOU\#JFJPYD/(6I#%J=U9'MJ4PN3C0[TQXR0.'B-;?J" M] !Y@+NEX?3FWCG;BIT6YMD-5GH]$W[ V1+KF;4>0W2Y>K2U*B2*.M%=,><# M*A7I6,MM7IPM@$Y50W:7>HOQH%=!Q_D*6]77>GV^#$N=80D<:^*^4Z2DM;\\ M\QPL"SYQYUQQ%IJDL3\&ZJ2T8C#IM\A3OUGL6[*8)O2I2^_A(R:["!A:(=2U9'E3DDD*[QYO$TRI/2G7;\M$A\N9;#^]DO_W,Y M6?SX Q=?IG0R+OM&X*W%_/3C_B^O?^TJ4!Z"0W*J!#/& 6V9=)0"Y!II4RZ3 ML^R -XDR#KF(T3HG-%3 0W%Z+,T0'I3M,@(LC4I.DUA+C=1HA85%M'2\1]JT M>582=)M3$ ]S ML380IX_X<@,2R";!X)&%-EGKBE.YC& M].&AA9=W%8?[< YI>01>UTR;8JW53%DGZ?0WB8$B-R-D9;V1FOYIHAT/PSF M=3XP<9O>W?Y2'V7XWMOIUZ^3Q=(1A8M,SD2]?<*+-,'=HMB/?-P X>NN8#?B MUL)$*PH(FT2]/M/!8Q1<:FU+4D&HLXZPAY+LTJ096KZK#VTJY8> ;\@Z.HP0 MK;8^)ZVR#F2:T1<\%5UBDN(Q6=]?PF 2)Y27<+[/_4SG#V_+P",+V=1Z4-HE MP;VQ@>C@P5H0F+(-L<3@'M7ZC#, M!Q22)YZC:!)=?P+7J6G+D#0TN)%Y0^@6'W$QF2W=B??Q?/+Y:O!L0? FIMKM M*B#36@7")#,3A+98)Q09O$U.G6V(3DTSAA%]@XN5K<#>I#3#^L5Z> .9@=;8 M!$QPH.6GY)B7UA%N]+(H)3"T&;G1%>&+T9F]J&E0L?$1YXO9I X >POSVK#Q M*NR^%,V?TXMT.9O1EV=)8E3))%:"=FO8T M(*7!E+95LM_RI+Q1\/GO5_CR&5G=RA7%F51!,NUD8)"38, 5)R_5!]UF?/@3 MN$Y-68:DH<'TLRN[ZM?)14UN68*LYM3[4B4Q@[009T7Y3&J;6,RT;FU=(6S MF7+!>/ HC&VB)T\B.S5-&9:*!@/$ZC()#FGM9/$KI.6DXK=7F]U/T]EL^F\2 M"*D[_82I'7OYA?)4G54/,UYEHF,$Y%>48FI,&,K9\Q+GZ_()OLWJ^/<0S2*5\E,P&059]H;TS.*V93USEZ$ [;&(.=8=XVEHT&#D/Z-'^P>+I M?'XC@;J#SB[A_"W,9C_H6\O9WJOS^,QD5UN"),:=(XF8D!D$4?-_E7$Z151M M,F6[0SPU/6I$S@-ZM%_;RIL6)H^(Y"KMTDK'.1=UGD(B?5>6DPU7N]M +EX' MQZ-+G2RA[L]LG1T]@K'32,"'SGV>SQ9G-[>O=2A'2I=?+\_K'ODSTKF;)E?S M/W">9I-O5TUOUI>TRTP[*XK3J$F8I;8EY^"8IR^9%F3#1:M*TEW:C!&06_L1 M_6ES+]H;Z=@YTTW59GH(^@:\*>T*_"J/;XUXE<37!7./!.K!5.\AL..F4H^L M#SVU<# RCT81HQ \\,2<+H?STX'+H) M_1LRJ:3D'_!B&N=INLXH+F1HZ2(TJX/&20:<+$GM"R.O) =M==,O*''53RWX/ABM+$@6,J!UR;W@OGH+.,Z:&4$%RGF;B3? M^^R3)W@_:0[^%ALNWG[!.7Q#^->Z:1?/$'(F]R_JG)GV$%B0&)GR07/40H'H M^ X_\.DG3_"^$AUZ*L0;TJ!/\'ER ?]>3ZUQPA8HP%*J5[#)!FA*G)@1Z8F!6I7G!!/22"('6+4?-8 M]Y*.P9$[GWOJG.XAQ3$2H.I_:@7R=SBO_O?#WUV:GR)*A9*V%N.XJ9D5@D'6 M]"\1M(F8BN1-FJ;O#OD4PQHC$]D@MWIT/'!U3(0:A,Y?%CI-#>G -?:)2_3DJ:!]R M&RCFS_@5ZK#Y;]/YS6@XG5,0B(EADI9.$^-8[5+)>$;!5?1.EB8CD1X",WZ! M^WATWKM.WY.+!B5Z&XE']54)04:'4)C54*, VC!/IB83!,XKD[U1;=*3[T$Y M9:ML3\$WJ)JYBVCES'3!U-**>@C48:RC?0E[E/\]I-W@T'@0F\D25@ MOQ0UBU999K2W+J44>)ML]/$TX GK8PP%Z"/DH2.P->?]W?1ZD&/PV::D.',2 M--.62Q:S V:2DU<=6;3O%,2Y^[GCG_?["WHZC)0:'-\?\?OT_'M-+K^SR#6X MDB!*,BN"]'4$5U(,R)Q@0I!N(OA@;*,XS".HGK$"#"_U%L.';N7W7FU2Q1>7 M,#,4U<+D)C%O,RWVXNJ1WC?0\Z-MX%UV[98/!0#M!U=9=22J@<3F,JUV9<0 91_SLP_-8VL M,?%]Q-NB7_?[3^\_K@ZGR"6!(9I2L+3F$"4+ M/'@&UD0L&!+M=6V2WSN@.\!4J3UIO)?H/C0'#6S&#S-Z92JF=>O%8% E8UCA M=-II$Q*C=?I:2):T$=J7W&1(W0:.9T_^/G)MLA_<+KH@*^>G'W_"XG*&5W7- MZUJ,99]7'< G3]842EHU8&!1T9;H1.#.NQQ=:>(G=(=XRK9C(Z(:-+;8J..Y M0KEN_]P!6DOS\A%LA[$S6]'Z>&W5WIPTWXGN0M10D$L4+(,23$=!+XZ6DKE2 MZ(7*LIC8IL?%V.KRA'%Z!-K2AXH&6O+[1<:O%Y,RN9H*_MLE7 V57R]]?-.^QH\O9J.S,3D0V;DD?2A&EQ(A&&>(MQ2\2S;*QSH;/[:LH9AYO_B" ML^6#?K\HT]G751E+"Y8>?513QKHO\MX446>5\8[;;#0Y@8'Y03-;LB \PR?2LS09;;?CL\,"FK/9=\ :W8,@5Q&1XL4[;I#S7J1@9 MBT&MN7^4VWY+'XKA7R_KR?('B?'KY=?E<]>#^=H0_/3SFO+;<[GWQEOS$F(H MX&P]<0,$=,(4FR6/X+)_C-Y>"Q]T)[[U\X:;\ -/:;__/K6T#?ZD]W1(B@Q% M"QWI&!6!3M)"^R]R)^H Y_[/V\\GRV[?S'SPS#:-*]^4[CD-8@ M_KTICZL(GD-,LH!G&&JTUBMR=4S)S*K(!8=@TV8I6INW:M1!F&U48W\!'[JA MR[62;VCV,OX2.18D"XY%J+U CL#?B *CEAZKR>5,MK$XO6:1:* MDKJ48,+FN+9M36/N?_ASYFU?60W]KOU!'_6E2GVM1\(Y\%HQ7\OK28\JEN!9 M\A%%D-D([SKQMO'!SYFS?62TU4P9,GOB(RY[&7V .@UWASN?.W]__]N<[7 V M[FFXS2DGI[,44CON05EK5-)*RLRUX6?;@.TLG3?SQ0S^?[S !!_>O=WCFNSI M#QU6CAV ;P@7O2Y.Y1B3L!I=W5:*3=DXIZP(\:YP'_[X?:L9;S[_+W+_YI!6 M(EA%I8T,0=34MSJXF&GK$P-?NT\*FS07SA?=)';R%+"]-M0_IQ=("C3]@;@> M./4!9Y-I/DLIFDAN+:-M NL 7F0^(6>0A(Y*212J6W?+K8\X1/>- 3F^L^D. M(\K?_R""0T6W1R!].J3P!Q[X< _0_YXLOBS76Y?^9?+M MK^DO%XN;CAM=H X]<*0GQO'GC S ZF,ZTH"2 VM1+H R@F61(R&&5IP\3 RO-SY,9)OKQNH=BH<.Z)%IBK.-.%-+F MBF3;>T(81?;1QBX3_3KIQ-U'C]N2O"E#TT'$V\1][G*X7I5&\L"!<\D""D+J MK&<^.$XI%84PN-DF-[@[Q]&V5QK0U:3-^@V==.=T!4=OFX9N0#M42O V) MC^C*'@PT:>Q]#UG,1CH9@&E(DFF#F?E<6X8$3V\(';Y8F@>A#UBI?CB5Z"/X M@0V./^ "[B2C*9EE44*PK +MC,$46I72C([7[$7PIEO+E$XFQ^;##QN#VX6, MZ4"2',^Z6.IO3A@ BF-9U/1 GND@=%*SP(VUP'4,K<+S6S&]>/NA-S$-.F5O M@;:VNCN &\MVN(?NJ,R(_EQVTY$]B&AL0MP'J:P6)OK$E(F<:5_HC$SDJ DO M;' "T>LF>=\'T)+=#(O&2M)'_H-WW+ZU?597_FY.Q>I\Q"1\!BU8DB(S6JEG M( BJ1X.IJ% TR$Y) %V>=C37>[NP,VTIVE&:VMP6QA_TC71Y#K,W\SG!/9_@ M_/>+-% "TN,?/FPB4H^%;%;E2P]*U,JTK 48#G%I3!0M%,)SW4=N6E\;M1IO4UBTDU7J.\X7]9NO/_W!>:?X!PN M$G[Z C.X[&>U:L$Q8TN!":- Y]#-31;&"[Z<;]KEP# MR;]%']E5EY*_IF_2_UQ.9KBL]KE!3*"/(GLQ+1D6":&MG)625@?,4T_7XGYC\DY(9M>X.I'?UY6X4W+S_!C M7J:SU7+.9'3*^6B8,4HSG6H@B7O!P"H=,"7PJ9OELRN"$U&3\5AH$)Q?IW)6 M(^[M)>']BK-W$XC+B1MGB5O:\81B6=I >FTB QE%_4H8)S@9"[+%#O,HJA-1 MF^$9&'KL]$/(/@%I];5JGZ7E7'.(S!J3F-::SD@D.S]K&Z-5BOP!WFD/>?I9 M)T)["\DV&4]]G=K[$-A?_DGGEWER\;EZ _3__!?\:+ M(/B#*-Q5:#9N>[1;R3R=[K5)AWD80$)A/H1/\R MJ*$:ZQ':M'%XUJFW^ZA6>YZ.(?7V9I5U)FV=-;;X,LTW)O[][R+^"5^OZKP% MHN7:*L8#&6X:BV7!T5?66B^+C];G+KW-.EU6[@/T>5UN]5*AZ0&H'/@.?!NN M5:BV"[*ATWL?AS1^-N]XU$Z;\C*NYB3K.7D)BD51'0R> ]1H7I0\?@S04>#.*OKFN$][YXY9E9SEYW.C,P-K&0)4>5"[F< M3UZ"//F4<3-ZAZ1BVD*.#>+&GQ9TD%;E?GL.\_G[\FDQ3?^ZRA=#D;(.BA4> MR.+7JK9)2(%!2,%ASH++-MU\MR$Z?8-D6%):Q/]NX5FGAG9 U'0F_3U(!^JR M.0QGF^&^803>8BS] \AX4 EB8MG5#5+EVB12UE'.)5M9I!2^241G+!5XJGOF M:!K00\XM>F;BC$ZP-Q^(09S-,"^AK4XSEZ)5(D@Z'F,=O2?("K(AU X/4MO: MQ%\U:=S]"*8#C#C?D[+-TV @>0]H/51KZ6VMUPT, 3M]&&$3T ][]5#P?\=OE+'V!.5XW[MJ$N'H/ MNH <.B[1&=WX(8K]B9R.Q<+ 48CN8"UMG=S84%L_(--TDK+ -;"@C)<1@$?1 M)6_E.:C*([&) VE*'^&/&GY H8PKQ3#GN*U-%\DM3]PQ3SXZ]Y87TS$=Y7C" M#XU8Z1R)Z"/2D6M_A,]"@U*,FUJ6I&MO7%\LB\4$+LB:TF',4N*786D,34R3 MO(/'\M6[@'NM_=F-RUYE';L0,7KM3_(AYTB.F9>:,\V]8B ]9R&!D;0#:B-> M:W\:*DD?^0_?1GF^J+,1SND'T]FR@\='G",]X,OU6;PZ)4/6"D6LR9?U7PC( MH@R:N1!,#)R^Q&Z=L;L_\VC2CW9A:MI>S$,W1*\S,NA GL#YY#]+D&\N\B\7 M__GQ%:\FEVQB=5((2#$S-,DQ;9)G$&I_:1$XYZD8\*:32O1\\,GH14N!-SE' M5CI[D7_&[W@^_;8Q(V>=5??7] /.Z@#H7Z>S914 V69_T4.6.ZD"#@)X8I&, ML-K%W-$F&CA3'#,(P7VR3;*E!T'_DJS?L'F 5 MA[*[1]>BX?1X3Q4XKAWXUF)<=$D'V@SJX *F;: =(23%@H,00"-&;-11Y&CU M^$G/X#34N _SPU?@/;B"M8GS%Q+DR3]8QYK/)_2\I4&T,GR\K96#DGPNI3/3 M19*%Y9)DGF,4W*"RJ=LHI3U ',+J')WSZ0$(&]J-Z8#[I^G%Y?RW*9S_@=># M'"+NP^S:;Y,B_>S M3SC[/DE7.SID*;6F]4K4M*,KVM&!J\0@:B7!9U="EUS!3G=T#P$X?7=D$-'? M5P4[@"K,27=7B.:KUZ$+J*&O^;>B&?]:?W^B[K,^D)3;[ 8/@2L$(KE2&V!( MIE.F0T_FS%Q(7%D!2%^S7] >73!IEBX2.ZLTQ,&Z:SP$:O^ M32X^WWK,^W@^^;QT-G_YYQLF O+7Y"O]ROORB;X[+YMUW3$JQ"0 M/,\DTB8SO89:P"'<[(/H\9;6%^-J0+LIEKNOX\H3=4Y%8S1GD8O:)<@;YG/4 MC.0K@PJ%K-,VIML@\,?KF'$:NMN?\V-HMO%@YG-6$+#V6)3+7N:U'4W0DL3* MN=(QURSH+I?GSZ[.Y! Z\%3A21\N#E9%T 7D2R\\Z47D3N4$N[!PN,(3X!H* MURSSP.DE2?2Z",.9<2X(JPRZ,-A4D6=6>-)>4_H(?]R^%X:'4H,QA6R\>O7B M:>L,P(P)13B5(J3GUO>B$2O=6V#T$.G 1:P?ZRW?U:#& ,D*G5E$5Y,23&$Q M!\64MB:G C5(I1*.&?95;LOC(T3PLB7VD-O1 M-Y+4U\NO*R#9!2FR,(QCG7#*2TWLQL"XD=:I; /RP7H(W'GRR*?NKK*?#B&X M@<_1/^"?6T!L$@:<* PU::(./-4+3\XP1F5U0>T'9/#VDY\A@SL+;KP"N:M+ M[$(GNE&&Q51K+HJUS*L8F,>HP)-1B+Y)9YV4I(_\ M#UB3*[FAI6*=?E -GP@D@"B!&<>YS+;X)$Z])K<74SO6Y/81\Z%K>=K;,-'UC0H/EYFTNX-Y-4<2BHK)*H+7#@/AO#G;0\:FYUIPP]>L9KCMYK MCM[1B/(U1^\U1^\U1^\U1^\U1^\U1^\U1^\U1^\U1^\U1^\U1^\U1^\U1^\U M1^\U1^\U1^\U1^_86'S-T7O-T7O-T7O-T7O-T7O-T7O-T7N.V5>O.7JO.7JO M.7JO.7K'F8OUFJ/WFJ-W-#EZ0V8Q?;JZ>OP-IY]G\.W+),$Y7.1E=]V5 ??[ MQ=)L6]PR]OHD,_5[P/XY37LL:".U*0@?/,](#DO6QD#0P66@4R)ZB5:%LYV7 MUHZAI=[-/7;YW%C,_G(8C<939(VQ50PFJ0MQ+SJ'H8@2 0MJ-3=V077&Q'^G; M$.SGDVU^ZJT'OKO.9-)1QE)49"+4Z$6J [F,TTS$8$Q) *3&+5RS+N &RJ[[ ME6RM=8?^_SU9?'E[.5],R2CZY9]T?IGIV?4RD_Z?_X)_SJ)5M&*R?[Q79!P7 MHUBT/+&"M$5'C5FD1JYJ;ZSCVZB#:]26W+AFC#5(X7P[G2_>E]^FTWR[&?"G MZ7D^2U%*E%JP&% Q+4.FKY)BRN;(0=#Y+YJ,;]L.Z0159B#YCS:!J@:4+^9X M)JU4O#ADQI(#KD,*##!GEJ0N@:N<>6B4>_X(JA/4C^%8&#!QX6;UY_2CS[_A M!<[@G""^R5])Y/-%C>!\QS5*GCQ/Q7OF00'3J#+S,FKZ(YF9LDX)@B:E9MW@ MG:#2-."EP15-W?KJIK>",S]+LECM;6"H,S+-"52(1=*AB."CTC;FV.K N0WD M!#5B+UEO+??;G?OWWY93Q.I*R>O!=]/Y_ R4*%;P.FX[U N$.FO*26L/:7)Q6=,2OJU&"LY_0EH^7OT>.48UZF:7^NA M?/6*%NZ\%Y[\_RA]G8E$J"2=RSFZD%+A HUK8BL_".<$56P N=_7!K^W-ER/ M67Q$ #_]6/WP*G,K6U\X6LZ0YUK\FR6+UD0&OH!2:&S$-FY5?ZQCUN#$_XXQJ(#6A9!T"(L>A:%<"SYE*7DR15A.BC;,YY_VHCPIZ:?]A'\ M:*,ONX!Z:=-/>Q'5:0;F+E(>3070X0V<\KE!]@G,RKJ^RJHH53AN'M*)(IG*6D98*B7$/6)2SP8D- M2V-+&MO]SSZ6N9>])#X=3ER'F&M*?T4:H3BSW!6F/7@&P@86 B\A!ZL$[U8\ M_(SFFN[,[] "'7B#)A]Y/CV?Y*4=LK1OEUN232$&^H?94CN\A)J'K4 QH:/( M*117Y&#%AP]#> D&VP#"'[B<^#ZB=(F%SN8;]B3,ME4EU^K+D74KGCI#Y1_N&C$-\'^$VR-6XOMQ9 M;6MK2T0K(P(F.HFX4;1.!629!DM'E!':RH)T,C6]4KN+9UQC8!BRMEVC[2'I M)FEYB-*9JQ7/D$A.!NYO%NK5#<^^F#WQ[O(>3J8D(8.ZOTTF=;* M&_B&EXM)VK X7)"9Q\(\%[4(P]YMC0.);CC*Q4F MNS;AQ6)5*C^9_VNLJK>M#QZY[*V; #;JWK X(YR'[&34+A1?>X1BTB(D):U1 M_>K>MD+8UY?;^-AW-ZD+'J454C'K;6(:8F:^D*LI5 #R+C1F:&+!;X>TO^.Z M\@#BYR76H+'$_F'078:^K"_XFP .U0@;0CNGU*G?3@88TNY1K=R6+K@:QE! M>PK@88)JP]+ZI,X,P,DA=(?'K+ FD@FO3"4Z6 MG"R1A> \4[;D(#4/*C>)$FP#=&)*,8C<1SE9?OQ%?W6Y31IKN ,49,VK5)MF M:@8E G,R)AZ"XCB:T;K&=-KVZDZ2;]"BX_YJZ2^N7H(NT$:U4F^P'8V!NAN/ M3[K'^Y$P2I3D!F(2.==P.;/91Z91. 8\:.:T3#HK+IQJU)=C9/WH;XPV5X\^ MLF^A%JOPWCV(JR,O$"+!R02*I3;V)7N;>866H4"N0'HN0Q,C] E<1V!Q[,KA MIFX,2,#@TU;^>SI;X[O*D*C3UV1RADEOR1M3R3 /V;(@C(CTCTIZL**P^X\_ M 8MB +D.F!Y6T=2Y>^_+'4PKM>X":NB2@JUHQJ\IV)>F:2L9#UQ0L!TVCTS\(R4%H_#>1[2#)XBMH+Q99SXEZWS2 MR&R=M*F=="R@L4RY3*=+*%R[#?-O6WK8W0\>-Q%\(%E/!Q+4X),I5EA^6F%1 M9(T*DR4SNM[F!7#5+H@L@TR\)"=XZ986MO'!)T/:+H)J]::]71<.9T6&8I%D M)VC"X@MM(4C["' H"1P SZD7:6]/C+1=!#5@4.4.EI_743^33;'2,^MY( L\ M9A:RRXRC!&=ECAQ++])^/C'2=A'4@$;L'2R_K"NV'9KH:"F)*[P:'0Y@(N,< M+)>8O>F8-;OQP2=#VBZ"&K!/Z!TLOZZP!.$A9K"('(8L M/;X/X$0" WO+=L 7=#EY%K]=ULX8<[P>P[4)<>W&=@ Y^&3SKN@.T8Y@7R*G M8[$P<#"A!UCMLT=1Y_JE&E OP+P6]))XZ6E#DRGP+I'EYZ JC_8O.(RF]!#^ MT$[1GSA?8'JWR/^K?G6._R_"^>++IS1!VDS7Y?;2H2_!TE$II&9:6=I")226 M20(Q0;+)\TZF0)>GC3S/NPU+TY8B;E$" -\FBSKVL39JG2_F[\O?%]]FT^^8 M/\RF= 8O)CB_&JB#N;;Y??.U5F__9U6VO?J='^]G]-5_8UI>&)Q2R! MH=+*N==+ Z\M5WYO''S>^_F2&,54[^U/-' MKBKO)8[->=8R2!5-+J TF NAV&!+S]G(3R$98;BJ*L!#L)9%9R5I M-B@6N0[,8N$AVSHA++4X@8YUN"IZLG"=J).RA&-:VD+^%B!#=%P5EYUO(X_3 M&:[:1Z.&&*[:A[$&/NPN/<:4M4D$B Q4".346U<3226CB!# M2:9.GQ;:D(-3NT/0:6I82%ZC33KF,MA-S,C\/W+S,B;]?20\,.UOR'0B).N@ MOP.7 M=5:J1OIQ-HD9]'4X!8\LAA(9G5(*I3?@8I-^ C<0GC.U>PITZ #@FP]OUCF0 M";E1WHO:5BDS;7BH#:R!*0M<"Y 6-NO_MX3V;C[S.1.UCWBVIH@>+"SW;GKQ M^=WD.^;JS2X.%IWK"&/D(-TNPMF(U:GL2XDV1I.R#HK[;+70=*#KE%+@N5^L MKB.@$4)VI-?:%GISLJEC"&SQ#(P6+"9MD@H%@NJ2:7>4(;N[0IUO"/U-G"]C M0F?>>-J#568EU&I+7S*MGG80(U.4EHM24I,H73=X1QJ8ZZ,WFT=C UX:6$3K M:\$/]![7(=%U+/3R?N=/7)Q%):0PAD[SK F;4V2W930L&E[H%,G";Z83#7;7 MNA74^)K2@LC[5ZG#L-"BW=(.H2"R16QT(&K_:()L1&9>.F0R69(09*%>9S / MO=^TYNFXH[4\ 23E U.T%*:+)\?2F\R"#(@:.6B/'33NY41K>U'?*5K;AX+1 MHG1=0+W(:&TOMCJ%ZW81]6AZ((H/Z+5E!DWU>RWMK "9.:M!2%TDO0#/E/^= MHK7#T]]'PD/&?VH2^.S'V=^?SJ1''ZTA+I)V3*(78C>$U+ M<9;\JMJ3TMK:)Y^\H60@JIADN%>3_(QB-RMQG@%:)(\QTG9<#?\"GGF P*R0 M00INI=/08I%K $<:?^G#_;WXRRZR/9)L)\]-\#$KQKDG"QW(#Z0_)684?;X3 M/IO4Y'+JN?O/^^A+:YZ.P7_>,O>9"PNH1&)"U8LE2\9@S,$QQ^GPMXI68[JT MP=UQ!O9S\YQ[D?[HE.S>PA_87=HZ!;@+IJ&]YG&'HS]>A[X_45VFH^\BY;$T M0)7 '8^!"<-E;7 "A"UYEE(IQBFM.0Z6_3@N\X^6E8]#?!_A-HCH;QO6SFWR M&61D+O!(&QL6%E)RS) G"#%EJVR3!OE;\!S)1/1>9$V'EW0+D_3Q>;X8D;SB M0OIM,]-16[*7N6 G*CFQB?IS(/?1<#87AJ&G3-WQC2W0',RYZ'WH>M MQ^>A[R#J%E?!=T"90+Z5+X:Y(FNWP9#JY&'#3(D%:$\#[YO$+(Y^'OI@M/>1 M\- IE1]PMMS?+A+^2^G1HD0W= ??/Z7<\OSOP>PV+UB.#-9$%B8YI%3B#(H#EDGR4@6S< M:#HQN?T9SY;+@<2V]:T<\JKDS?GY]-]5ZTC[WLXP3Q;OIK7:8F]7C6F#T#DQ64A.; ;+$D 3XG'T(^JP+X$&DN;3M!I7IZA/;2?8AR!OR M32(:3%P&9Y6V3OF$VEMAA/ HN+);Y7L?_"!2?G,!YS_FD_FT;/N-/>[X]G]H M.ZYV7/@FG5"21N/1!/),10C9.Q5L3K%V82]\*YT[B6 0QC]=?OT*LQ_3\NOD MHO[X9G[SGXT8+[_P]MIP)Z"V-0$+(D;F55(7)=B@U"F MN)2C0@+RTB#5?!]Y[".8J_AY1 MH)-),5]J(Q*2#PL9:I8K!,F3!ZT;9\_TA3Q6$LWH.C82BX?.K7E$OO,/.)M, M\^JL7P:(-? (2466XC+7UGH6@-9(;EO(,0)*VV3'ZX3N\!=M;37EZ8-T3\8: MG*!/@EQ%.[O ;'DCUQ'G8>[J&C#=5Y?VH.F 6J5RJIU<$[U4F.GUXL@ -6?! M)JV*+N2TF)/3IB=N (]'F?JP,Y(2*?[7U(2?X<=\!75U<2*R\MKQQ.QR:)8M M->N%1X9:)%^*KNQX M[6@)]'H!L.#HW =!Q[YP0J@V+9QZ8'PY^C0$22/M3[_\SR6<_S7];8:PP-E? M7^ B\ =>!&TE+[1O2U6':8+/M8>J8%%C,0*%-KY)-N3.B%^.K@U/8-]65ZMO MUW]%F./_\W_]'U!+ P04 " #VJ0=1^MK8=J?W K5@H %0 &-D>',M M,C R,# V,S!?;&%B+GAM;-2]ZY+C.)(F^G^>@J=WS;;:+-#%"T@"O3.S%GFK M3;.LS#R16=T[FW9,AFN$IA1B#"EE5O33'X"D).I& 1#!8+>U54:$2+C[!_&C MP^%P_]?_]+/_M3]%?PC\%8LD*/E_>_]N??OOZ#J __:]__Y=_ M^=?_!X#_\^KN0_"F8.M'L5P%KTM!5H('/^:KA^#O7%2_![(L'H._%^7O\^\$ M@'^O;WI=/#V7\_N'51"'<7CX:?G7%,:(T30%B$80P AG $6Q!#E/8!8F/.4X MO;G_*XI2))*0@4BF&8 ")H!FDH(\I@1CQG-.\WK0Q7SY^U_U?RBI1*",6U;U MK__VIX?5ZNFO/__\X\>/O_Q!R\5?BO+^YS@,DY\W5_^IO?R/H^M_)/75$<;X MY_K3[:75_-2%:MCHY__SZXWN_5F1^&=]Q<]+ M<:]G]K,HYP7_LB+EZ@.A8J&TKT=;/3^)?_M3-7]\6HC-WQY*(4\/NRC+O5&U MEEAK&65:R_]V3MC/5Z@_D+ZK8UT'4*XV]^-0.O9A^G$P=;\J?A#^%>Z(N5KE MY@OU=LG'^NYN15VMNG^-A_I:%"NR&.%KL1/347FA__!!_=2*T0/UD&DMIZ7N MCJKBCY58X)>9K=JA?>)WDGR.*MHO.5^%P63Z)< M/<\@P3+D"09)IEY"D-(0H#0F0/*4R1P1R"";K;;?[9E8@M^^;-2H99D)^I.% MI:LS3VPIJF)=LMV[[G%QZ@6FWEWZ;8=^7I)'43V1]@:EK78+&@/^7>L9%.I+ MHS0-1*UJ\-3J&OQ4_=>:E"*00JS^_*\_[VR] NC%:/ MQD%.*QDT6@8;-<]B M5; ]?1;:@2C*0R *9@S$WH-9@R!)16LKVB%^UC[;SV*QJC9_ ?HO((Q:)^._ M793U\]%\WY8;0TC)+DQ&>\7/K%#NT],*[,V+=C?M+%X5=E^5!FFEQ)^"HN2B M5 [R"8..OL"?5@^B_%@L]6#*R5O>OU<>]:-X^\>36%9B%B>QA)@H#Y9&&$ 4 M1X"$- .4IR(3:2P0DC9\T2]N:JQ1:QO,:Q6#GT2C9/7GFT!Y5W8\<0%F,[88 M#CS/G-'@UM4T>-^"V"I[GF:MJ<,,E2$)Y(+$46G$S/I#,C&\RXU2OJP*]OO7 MDBPKPO2RL?JL7JY+)7$U9V3Q9EZQ15&MU??MEE:K4ETSBX5$E$(&0L83 #D/ M 4XY W%**^:N6O>@J_Q-L*=^T-$_^+:Q MX/\;CM"UU'NES/U])CC'.,_4],@4JO4:% "'+ <11C'*!!(LC6V8T4[\U&BQHWU MECS8T]^.^BSGP8SW_*'KF?1Z@>T07O!-:Q_4Z@_(>&ZX#4EWEAJ,RG5NZ!P2 MG>,HCBZ@=D9>*;=%"7K4/F6]?W!;*IZ]%UJ'5\^[2SZ39_VGVQ^DY)^>:A+^ M15VXJMXOFW#E+V5153,JTA!FDH.0(JZ<1!0#DB+E)/(LQR$1A'!BY20.K^/4 M^/+C^I&JA5@A@Z+1.;C72@L>_*2\R:KV&"T#7CYFUM"I?-GY\NUV:M6!WAO3 M[+NS+^@8&-#GH'M=:V106WD3M';>!(VE>L'0V*K_HJP=T$/U-Q6#^K >U!S7 MR_6'\Y$?[%&4VSOD3BSJ'2M2KIZ[#OJKY^XGMW_,JUF6HIR+. 94QLI+AH( ME,D4Q#G)'%!BFU>#N>BI,7ZK7U KJ%:G2L7S?MJUL)OQMA\P/=.Q%8[6 M_&D/R9"T:"%]5+:S1^60Q!Q&VV5 !O7 >L2-ZTE=MOO((S*XQ8X]&/^CFKU>5ZOB491O MVR\RR:,XSS$!<90C (GR8G :I0!&&8ES&O(00Q.Z.#7XU/AAHU[PUI(13B+7 M3P'7XN$[XC8H%+S-=*V==F^0[$D9 YKK>:_/Y(;H]!4U?859$M;D=?*>4=BJ M3]L-/?5>X\!'=P5[$.W7*$5)*+(T!6F>*0;*8[6.BE,"0DFYB'B.H]AH'_9P MX*GQ4*V:RW/7!=S/2=+-KMR5])^;M8$;H07P1;E_.56HE]4#+?*P6J M&<4"TBCE($^S"$"9Z'"O7C=Q3A!C"8^045*$B_"I\8A6/^CH7V_?[RP(=B8$ MW[0106V%U5K#];)L9BWC)6K)68C\5*:%D?"K*L[@032KX2^%&L M7J]+G=$W$R0C."841#&4 "+* 65Q!+*,DCR6).%0O36VY[+XH<^61W(HM0GTOE\%7PH*@5\:]6 IZEL@1ST>)6Q\''/6]EB M;,PEWF64 2RG' LU0?Y<0Y@#R2$$6A M1(G1/J.EW*DYP!O-=99;?QKKMUI_&U_,8C8,O%X_&/M>?D\#7@LOUP_,(SFX M7;C9 =RL:\!0_JT]6KVNK<5PXWFU]C;N.;0.M[N>#5G61TS^/E\];'9X/LP) MG2_FJ^?7#SH3[_WRZ_Q1R%)]A3Z+4GD2C]JE^$07\_OZF_E%_;>2<\'OQ'>Q M7 OU?BKNE_-_"#[+)(UC)C, \S!6_B\)=< D!2G+"1(QS]3_[(Z2>-1V:F^9 MCOI!L=6_"JJ-!;:G3WS.M)FW/9GY\QVR:>ULJC]M++T)MK8J![RV5B=,;^V] M";I3OC,YV-I\$[16!SNSASP2,\+L#'N"QJ?"(Q^X&0'[X_,Y8PBU>S%5Y6IV MIR6WF[X)H3A-* 4RD6JAD7,$J! 0$ Q)GG 9Y]PHS_I@W*F1O=[HF%?-8=]? M!=$'H^IS%M_>%(]DOC1T<0_!ZV?E*R#QO0)P1<.8\\[8WL-.ZHX.,ZG?#EGI M<,A1^..,'9LG_=S';L[BAAOF=3"B6QF@J0NP/;*/($IBBM2C*H4$4!(,D'I^ M01;G0M(H2R#/9M]%20M3S\]4M,V7N*N O^]R1_-Z276JH(*=)V<\#69.F0]H M/?/#(:9M60H?E1%LT1G2OS&6/:JK8HO(H==A??_(YX%W^YPLC1)$8@XRFC, MN<@5H:6*T$*,8IPK+F-6E1"N5VER;LNU1T@=MJP'G."(\$2BG(,<<0Y@*A' M690"SB#E&4,YX:'=>VK<*1[G#=8-$%;Z<6TGDG4GO*U4-OH4FKWCQIT6W][Q M. _=>$>TCT">Q(GL#^,F0PR/XF#GK8]'=GLE-WO5XH,N+G:GBYY_DK]5XE;G M MP^%N5J_H]FKX705"WV%1DSSI"BY3A5W^(X P@E*N M;G4A6:TZ*"185Z+-H+"C6U/\S3C5 ZJ>B;/5.*A5O@GN-G@JM8-:[YN@J_EP MS&@)U9#T9RIZ5(ZSQ..0R&QO=V.K34'$33G$]\M-"4O6)%UT%C*S%&=))M0, MY)'Z#XQ(")1+&0,B61YG699'461#63;"I\9;32G61;&\!TK<8[#8J6K'5U8S M8$9:OG#US%QGBG-NB]ZVR@SUG#X^B9I5H(W^Y!^,XOA!996H-" M.5)RUK60VF5F&2/4FY!U>93Q\K",+=I+OS*_R[7.F-9=D7K][=$M%NK-\W=* M]\T!MZ_%ZV)9%8LY;UK_;*K"YC*3&409B"7, 4R8 2G"8CS2"V9!*;_?2.:!BY- MME+=^6Y[JG95!%U3VBS>P$N9W^N!';8,FK,V(Y=%NQ:UXS)I5X]H1[5BF$NPO M]\7WG]7M"HD(ZQ^ _J%#,+U#CT(=)L9M2,'H6H\9PX!D(=(=#C*,!:("&K64ZI4RM0>^;BBK]*R7#$K3 M0*OJL@@["ZO!\G4(L#P_]/YQLEBC#H'72$O3D[@-M!"]!$/O^O/LS>,M.R_I MO[?:O'BQ8YN]_49;^MSO3+ <1WG, $U318219,0 RN,8<,1%DJ>Z MYRFT6X9?">4XZ^M-2[V%TN[/PZ-JMEB^$BG?0="C_H-:P2&;#YXW?]".@R?$ MC-MF\+R=1[T%>RZU7S:^7:YT&BKGZFM1?2XJQ5'_=_[TNN!B!D,DZH8PDI!8 M\:>( 8:*!5(9QUE,:!(2HP/P_6*FYDDVF@:MJC=!HVR@M VTNN:KQQYD+Z\? MA\'+\]/O"I75(O(R$E=G [E+2X.JKS[MLJLKP,.>040C",,H! M9'&B5I(T!2P*10QI(BD4-@[4L8BI^4]-Z9Y-@H%S+L<)+,W>]M=,]G3)YD2HYYZWL.3ER7=V;O@.P31K9DF\/PM:[$[L-G43D>933!&09 MCW1R*@68XA@(FF8<)Y1G=HU_''28FG^P?]R=M49<7Y[@TE28$8AG@'V'I,^4 M$MC^O4UJ3&@ S.[:E%>]]FN -EW18!+:KSX.7]#G$Q.[YL.Y4:7G0H M3>OO-KZ9"0YYB!B(:)@ B'57-"IS(&4&8Q%',)=6O=3/R)D:[76K=31Z.C8= M.H>K&;\-@)9G#G,!RIJ!+L P),N<$S4JDURP]Y M+EWNR BE>")S_K8Y_*>( MI\Y=K5EHZ^:'H2*#.%7KS+2NN4]RY3"A'"0B)8@H)PI!RXPE ZG3"YVV2F\. M2C8'UXLZ@7NSN'(YTV,R X8\,BRJOCFEA;-5MT:S28>_;6O+#KXZ,=+?2#G7/L\=68FF6LPLI)!AF*4@"7$((,V)(J!I57?$8Q%3\TPV&@9:1,\='VZI]C% MY^ ;[-#*YPA"^^=Z8@U[K#"YZIGVU:CG2,:+/<]][7C.7N<:?CU;VW:&$:$Y M#6- $TH )) BED() J%B$5.F+1<-?1(F]YJH;_N]4^Z('P01>>S"JSQ-HVE M#H*A]YAI#WA#QCPO@C%L;/.\N)%CF!?M/HY57K[%L1D+_\]UU8S<-ES_6GPE M?^B@J*XJIL2\*\K3E4]FF/-8<(4T3K!R'1C2'=/5ZB!6#"-EE@J21[.EN&_. M(QA[$%>H9/00X>8A.E+,XQXP^4.Q3KW>+AN+]"&>I5@%E38C4,NWU:*I.U3( M^@CMZCD@NG2,933CFMDT8S#?DS-^":AM::==(9^;8'.:O.[\HNP+.@9V2DL/ MV/_E>EP'[0ASA3KC]HBY'K>CKC$###EHS45-!%_5EY,]B*\_BDVU 9[F(10Y M@%BOVV > 1*&$*01PTQ$28:056\ "]E36]*U^@5*0<<=)!O@S7C2$YPOS8M6 M4 ]5 :\/M!%*W9T4/X6:=GVX&!:OZQW"T:.LH]';(LJ,BCR/B0*;QESS5!TX MED"DF4CT@5')+&N$[@N8WMKSUF$;Z@ T0U_,&0C/--(HYJ6>]&F;!W5]]B6, MZ\VOY,/1# M/*#L?6OZ&E#MG0Y+A ;U.$QEC^MN6")RY&O8WF_?XF8GHBEZ_ZM8/13\_?*[ M:%9NQW\5XJ/ZSM7[-80B%F41 3AD:OTD, 8X9E@?1Q"0Y)B&D=&&]K6*3(W9 M=EK?!%I'J]VQJV>EG\_&Q-HSO]G";-649PB,KNWB6FQIA-.X#OC8[!4ZWD2"T<3DW=5:$I[Q,R8NS*J:W#3=O=H;4P^-P_G>/U M=^C!?1*='D[I-X7XV%7(#M;]H4^&8X2M:6NOQRL6<[T)O T<$2EQ&/$0Z)1Q M1=XR!%A !O*(LRAG,8'2JH[Z>5&3H^*MIL%&59, E"W AI&Y06#S':5S0\P^ M9'<1C$'#=^>EC1O*NVCU45CO\AVNQ3B^/(C%0O,663[/$BHH2G,*<]: M>TUYU+WQQJN)>LJ,O4*H)R^XLN1?W1JI=>*K6<9YDN0T!@A%#, (JL<0XAAD M).192E*1,JL#4*?%3.V9W!5B8Z1Z".2B^+%?"%!]LM &N!:NVP?9S+&^'CK/ M#_,.M;9+VD9'#P7L3F+@I8;=OJ27*6-WTMJSE>Q.7WW5>KM2P^EMJ\VQX"PC MD(NZS2)7M!"GB5IUYWJMC3"4B22")):9+2<%33##I=53O;%K19U6UX=P6JVL MKX!HG%5U%;0:>CA(W8^!A\7TH:276$B?L?;,(OK^9NV&O17=>LL$XQ% M$14@3V4"H!2ZLVHB $I@DFL_@ FC2BV' T_MW;_1+=#*F7OD>UA==LA=$?#\ M!)L9;^6,G[+T"E]\;[C17/%31G0]\9.?.VYHKNFB:>:GZ]'.PH@BG>\.\C"* M ,1( IW" ?*89Y#E:H4,L<-!HWTI1M_ \<\.;90,YK66EKN+^S@:[@_:PS+2 M#M\&BO?]4-COS)VT>-"]M7T)X^Z.G;3N:'_K]%77="I7;OBN?%[5['U])M7J MS;K-PR((<2@X0+J>$0S5*Y5B17:(Q>KQQIQBZ-"G_(+4J;UJ6Z7)8E.)L-$X MT"H'2F>G$@5F^)O1P>"H>F:):P%U[$YN"-#PO)T#04&^1Y1' +(* 8XCC*,UBFALU M.+.2.C5FZB:Z:WV;6@#ZAX[FUR:Y]\V"H;LR-+:^O9A!8+TBS=T )C\Y[GV" M7RC!W0"+\]GM)C<[;D3HLFZ=H@_-\T A2B*<89#(/ 4P#3F@<<(!HTQ0EB)= MB,K1_7=26"-T+.V7PUDX2FF(D4A'D< MZ:53#JC4Q:.S&"4<8L1$;MO&^I+02>Y#;'0,>*.D;6/JBTB;4<2PZ'GFBXVR MP4;;X* M0<^8^AKQ#,= /6.*8B"G $="@"A5W@A->$RH4?M7(VE3\S]J]4 AP5I726X. MMH/@TT$*Q(VNYG1-'L0AYH:>R5!(^O90#K,BMJ@J99LXC:_\B#.@^$N3.!3X M@MD29VSO3YHX=Y-C#S"A!A'[$K;=-3;Y&6_6XJ/X8_7UAUA\%[\6R]5#-1-) M@G&8I4 D*=='".&A#,U==QFU[=B5B1\W1 MKAW/C1^;[;:Z0*3^;LU$F*0)CG4E;J1\+9) @+), )DR&:8"I1CG-K1W,/[4 MV*SM\;O:%LBTH[9#],P8ZPI,/!-1"T=3+_1S'QS6#'/&Z"&)XU#$J'QPQK[# MQ_S<979/;]UW_N[+;466_.[+;YN&4S3F49QF&*213 'D(@,8"055&D.(189T MGHI15.:T@.E%8+1N39\\I:ME\<4S(/8_P]<#XSNXHH%H$/EM($1XFUC5U.GU MA\R>G,D@9,QT_0 T1*>OJ>DKS)*P)J\S=XW"7?T:;ZCKPE5^UV7:U7VGIGZ6 M9CGB+&9J%<8H@!D- 8J$!)+%$L'7;7C_;)[Q7S)YD\+I=)2O%^)QVH6LS0)&4E!%J$00)91@$.(0$R)2',9 M)AA;)0%=K='4*% 9%'2+2.R9I"8K:(P*YLO]RUJ[@F_:LJ VS7(W__K)->/6 M4:?,,]F.,EO6_#L8PD,2\O5*CG+7=7YRE2& M(8%, @HA4\OK+ &$9Q'@&>1)*%D:FE4@/CW\U-AUHYQU%*8N M4RBL*F6>M_C:^IZD>9GA:$H2Z$HJ6"__XTLUF(619G>02 9Q0!&#*N%IV1!!S%,4$X M2SBW6G2>D#$U1V>K8E!I'6^"_Q[^)0S#*'@B9?!=:ZPKZS:M\OYGD-ZHSYI? MJH"L5P]%.?^'X#?!LE#+DWE5K=5 .KI<&#P/QM-B1A-7@NV9*'8X?VEPKA6\ M"=[7F W'&3TH#,D:I\2,RAL]=AXR1]^E#CN/7T7Y^$F^+A;J+X4.IWT7=Z(2 M:A!]'N6-^"X61=UFX?:^%/5Z;<8DS6-,WJ6V01_"8ETK@K(UH^80OC,D(!M++/;R'";*8/O3+_B>66B#^I[Z MP5T7]8X%P>TXJ%MLL?I%?Z0]6-?O_OGRC';;M.X@]N[C.@P[WD:ON\U[.\%7 M#..2Y*+&6ZZ5!%;<+^?Z2_F5E/=B]84L1*7[H.I_?YVK_ZR4_S6+918GF.K3 M2$(M3RE, 8YTG(XJ[Y6+G(3 Z^M?]J=8-: MWP%WEB]!XB7S^5#6RZ1 G['X;"[TN>M=4PM))5X7U6H64Y$)R%) 1$0!C+C4 M&30A8# 4,(="4L1FJV)%%F8TL!W9ZKG?CN_1U],RFJ.@:DE569X$W0%F]K [ MP>#YZ6X3]U[W&>^0G'=@Z+!9=YO!1TZG.[#I.$_N\ +WHK7_[YJ4ZKVW>+X3 M3T6YFHDT1CPB N0,<_5 ,@10% F0\BC*!<,YH\:M7\[(F-HK>5O-=:MGT"AJ M7];V$,W^IW4@C#P_M_;P.!6^/0/ #5P#T<>O1SN&=-.5<8]=ZG;>U97G2F6 M]8["9U)^*K^L=$&(>G/ALRCKSB^JAL:KL[ MI*&(68)T.\HT!K"NY)#2&$12,5$B29)39D=$YX5-CW^:"FV+8GD/5GKG9;%3 MVZ&,W6F$S:AF&-0\,TP#5T?+FV"GY\!%[7JQ&+RRW6EIXY>WZ[7Z9(V[_CNN M*1,NFEX]3?(X6>S:;B5Y%$%* 8]U][M408JE4+X+1*E$>F])HDW5?S/*Z)5G M]/W?K__OF34VFNF-VB:V4-#%_+X.]NLB5*TY3EVX+D"?D3RAD(.(18JMPU W MS-9EOW@40T0H9-RJ!_SUP(]>D5UL&WAM]+WHLG[!]M/5U2_=Y-@AC?_GNFH+H!:WG-<;3WKT.7^_?$V>YBNR MJ!U,>MA _4[\UWI>S5?BBRB_SYEHZKUWMJ^:_$N1I$1$2:;6L9 "2"(!4!Q+ M@-*4Y#C-12(MU[&^59Z>$_KV\6E1/ O1+(-!;5? .H99MG'S/>=FU#BE>?3, MKK>?W[^^:1;6[>RUCV]P6Y;Z,)[^^49WQREK;T%ORNM OC=:I@6U1<:K/\A'RG@=%GJ[C%Y$8[ZUVK/=1@A"F1:0YX3C" >4(!311T' F,*224LF^#ADEX=3Y@Z;TML9?^0TWF/+CE-W3USC1FF_+>E\L1"\ MTW3S=;NES+(LSG > YGHWE(R(@#Q%($GFK MJMT3W .KV?,\#%B>G^XM3ATM;X+70^_47\9BR$>_1]JH1'#9ZD-:,+C#M25= M?:SHG=+Q=;&L/:F_SUJLM9B>%]6<%2@;4RQ)Q64:6,@3FB12@<]TQ:@X M 9A("2*!1!X)JJ8ILB%QSY,PRM'$-V>'2&<-B6C_9JC-P#TAFGXZ:0[D.Y!S^:?;_#0ZJ0"@_:+_ M-+[F$8"K41LA'-#H.-8IX N8#!TS."UL] !"K\VGH@G]-UR3WZLX:+<>T7O] M:@2^$[E9%2<\CM,\9" G5'E*84X BC,.*$,T):GDD%/[G%,SX5.CE4L+Z.O1 M-F,47QAZ)IFMVIVPA#Y"L H^DVH5O%D/>##)!:+ATU(-Y;] EJH=,J>35BW' M<#U.J:S2?E2=J#2O?O\L2OT'R-/C/9JFM[9K('9#-.&@HZSQRTC]I=C=KGRZ@Y'(R\ M#,>P)R)[Y(U\%/*RY<=G( WNL:^W\':Y4H[_N_E"?%S7+?L2R63*J020A40? M=X2 T$2G[9(TR1634+,VKJ<&GQH_-/H%6L&@T="\M,(1OL>\C\T7<:Q_A%U'Z;U2IO:P=C4,OC4Z6O26.8]F M_X,[&$:>GV [>*SZS5PT_]JV,^<%C-9]YJ*-W28TER^^HA?-T=&#SA&95\^[ M2]H3-+<_2,G?_O$T;SR#YES"+!49!X\,U?W6%C7JN[9L( ^GSX^IFW3FT3; M6?S14\OIG/#AE[ M[CIK_* D="QE7#8Y:^41+9R_TO'Y9@^"KQ?BD[Q5ZSX^7ZQU4X/=+FJSE2UX ML]7]^+1N3G]\DF])J9OL59OR5;L-TXBP5&*B.V@IJ*&Z&2"&4B"2+(I$'H8L M2NQRSX97TN81&BW&)+VUO7H0P5*L@D51577%/-:6U-,F!T,7"3.+0U4=^T,7)7RB_X]K4^ M^>1EE][?9 Q*T<-K.2[%>T/YZ!7A3Y)#!)"))5%NZ+NB%(Q4JU]%'6FF62@9 M81QD8:9+HR*UN*D*__2L>M^@6IJD^R+F7:AI^C'(;2M?OY*Y]KFRBD0I)C*,K)($S\B9W+/>JAF(C9YU08*JD*L?M6]N M]4*_!+(A UP/G6\:V*"V57' E[PA# ,7(S\I:NP"Y'WVGB@ZWGNYZYGE4I"% M[OO]B^*:#X4BG^4N'[":<8ICE*0<2*KK,>BJ_F]+!7VW. M+_>*-?KJ[U<0_CK*6>:-UDWT1JWPYWO'%D1S;*%R/+9P:3+,Z&0(;,?C8 9]@!TO\B13T$;V7]\%-KL-O?F2N_F%2.+9H?K MG?I;-2.A1)3G,4@3KJO4TA"@)$<@I@E!2*H/D5&9L%XI4_--MAV$&DW;K>.@ MUM6^Q](QJ/WT,1A4GDG#"26G5DMG41B@V=+QV*.W6SIKWJF&2^77OI+7I-U/V]Z2.R>B#+8/^F9B_#=O=\^,FWW:IZB2GU MODCS/IM7;$<-#;B?[:C!M'RA[:BA43Z_'36XI"LSFAH:B$F:YPACW20;ZTHY M5+T#<@EX0HF,!:*)M I>[P\_-?[NY.LXT? ^=H84ZHR(9_HS!\,];\D? ^U+ M>)E\I?XG__15]IO(=YH*;O^85[.4AA$5B0"$14(Y;#@#&"F/.#3C:AO"1#=T]X.,/G4]H'Y6YJ:O#_U(6U;:Z(B>I$#)+ 298 LC3"."4 MJ3#S5:!CC!YJ7UHA./!);P/!8Q_Y-L?BQ-EOBYL= MFDK\.E\(->Q2?%J*=BM54DP2&G*0)#P&$"$"B$0A$!!BR<,L%=3H'/B9\:=& M.UL- Z6BY:[T.0C[>68 8#PSB@],+%HQ7(?-2.T6+#&RZZ=P'H'>G@DG;ANO M+\)YG?=Z'_1.>0Y9A&,4@QRD&4"UX ,II"G(9QC - M0XJEM/*GCD1,C<7:]_E&1:M%3P^0A@[35?#X]H[LD+'W=;UW_[,U:G"BKU<0U=Z=H9$XBB,,0Y 3G ,I8 !H)10!1S")) MI&3"*M/.6/+4V.#+^O&1E,\ZG90P5JQU-Z!=5P!]I)K<*WOLZ,%\'LQ8PPNZ MGLGD=)6^384^K^>-K.$:DG[,A8_*2M:8')*5_0"NO0@JH6YZN%WR-^*[6!1U M7F%GMV:ST/M:?!:E6J _OBO*>O.P>O7\59R3!=F7Q!]!J:MRW,:K>B^V8M=]P>!LS615!:UL=%VFLNPFT=4Y. MU# S;<:@H\^?9W8=;^H.'4&SD@O(#8GE<8G[(P1T]5C6_HE1^ M<'VXI#X46KVOJK7@LQ#%24K#!#!!A%J9A@A0GB1 $IIF$8MIG*=6+NI945/C MY:VF0:55O6F.X5?!O-8V^*GY]<^6/NEYI V=T$'P\\R+.^B^-- U>@:-H@.Z MF!?!&-2G/"]M7"?RHM5'7N/E.USZ.Q>/CZ)DG MQ?/M?2E$Y\B3B,(LPI0"D48Z X=+@"52S)(RE.D?2^CWB@>:!4#QK=@T;Y8*O]&&C;=&_VA_I8[9MMT!^J;;,; M:OU]FRW''+%QLYNU^YV;'<<8/6R@7=GV=#R3E"495"^*'$8 2A[I+B44Y'&8 MX0RJMX>P2M4<1*NIO4&&7'LZE3489JZ]!P[<9O"?*' P>.&%0<&>2.B@H]@_ M2^C@&,L!0PF*=X+/$!=IEB8YH"1DREO$$< 2(B S MAK*09C(E1@?"#>5-C8\^=@N&UC')FX!JE6O?@C=*!S^M*[Z[PC)H>6D&S'RX M 7'U3'+'A3EO@E=;2%M]A_.W#($9TI.Z)')4'\G0_D/OQ_0VI\AFXS?]Z&0Q M?Y@36F<(?10_;MEJ_KVNXM+Z53I-_1-=S._K%\X7?9Y%S@5OVP?K;GKWRWGS MMF-Y+",(08KUR0D8,X D$2"4*2,XYPEA1B>;/.LY-9;KZ!\46P.JH-J8T%38 M78H? =D:O:FIW+3+"$# -@NJMBV]52C0VU?"*$8[A8GV'LX]?2QD:^A-H$P- M=K;>!-VOQ<[<8&OO3;#IW-XQ>1JS;A4KGL+LCQ96?N%O@6U$VO?<7 A>>Q,_ M9IS;-X8'(7'OXAPK%M01>1VQGZ\.(CF;HTYA%,,()B CN2Y?$V=UZVZ0"Q9) MEN:2Q78M62Y)G)H?T.XK[33>JU[B%LB^#+O9 F=0,#V_:Z_$T;Y.@BDV@Y9. MN"ATW&H*IA@<%5@POM%AK7.Q 14]TX"JZ1I:R/?+:D46B[K"RXR)6.B\,$!I ME !(<:*6-X*#.$M3#B.,*#(ZT3"\:E-CLD9'?>)AWM'2PC<==N(,%B$O-AV^ MN?#ZKGZ[R7P_A\.]=,@PK<;Q5@A>D]A8&?B2X MK07>+UDIE)PWHOGW_;+.W7PH%FJ,ZFU=3?JN6"S>%:768 8EP0C2&,0)U47[ M10@H#"$(I8RC1!*2<:M=$$OY4WN[;M0/?MH8\&<=#>S:\#^"QHK@F[8C: VQ M7#O83I/92L(C^)[?I1YPMUYK.*(WY,K#5H51UR&.^!RN2ER'<8R-$%U:LI;0 ML*WZI9/'_G[9*1\YBU,ID=Y:B2.< A@3 1"7'.22\A#FB)'4JIR"C?"I,>'. M>]D_O]+T-EG8=A&WF0;#L(DG<'VO&DC3^K$]X;*#>>^LBR:_COX#!E0<4!LT MMF(C?]PPBP,R1Q$7ES$<@B^OR$('E[\\"+%Z(U9DOJAN:55'IV<(9I1R) $7 M=8^U+ 5(, %X M,X"4,:_6T5=4G3/ M@FI E4- Y9DG?:-D09!#H#42.SJA9L>,E]#HI<6S-X_'B9?TWR/$BQ>[+8_? MD7GY-[)8BTX![6K[Q_\]%Z4^*/+<'KI*0YIAP3,@N8@!3!$%F!$)$&*0<[5< MSG.KNCQ6TJ?&GEK/H%;TIEM^O+H)=I\$6QL<P-=<]$?!)6'8[X M>/LW#ZD'3C -N52V4V#4M;(3-H>+9;=!7,O3GVX>LW7_@[UYDU &;;0 M?*_$D2O,FUA_7%K>Z"['[06Q4)_>_R*6BJT6MTM^RQ_GR[E>J6IQ;__0V\%; M5S^#42CB&($8ZGZ"(<> Y#0$$8]AQ%@D=.MCF_T%&^E38YU6^9N@5;_I*;=G M0+"QP)&([&;'<-O!%^:^]QT&A=M^W\$%MD$W'JP4&'?GP06;HZT'IT%<]A[F MA2X%0)[$>C5G7\1]Y]6.$IB*)(T TFW=82P1H#!- 4T085$:XQ2CV7=1TL)L M]^&\*)LGJRO0XX9I\5U!M:^R4Z2H#V"3W8=A0/.]^["G9="J.31<-IL/P\ V MUN:#(WR6>P^7,>G?>^BY?\2]A\M6[.\]&%SO&&T[47Z[:8#=UN=NXSAQ1"$4 M20R2C L ,YX FC'E+&8B"N.80YE:%4\UE#LU#[%56_DJ;8>OMC'[K@R]6TS- M-WYFA\=1Y,SR=@Z;4R['6F.N*CSK/G(%O.<9\>&:_?XJIL/!;QYB2 MD9Q:?U-CY_9>"VFO3^P\^'@.\[7V[WG35P]V11V>;C=1G9I9;7ORS2+$$5+_ M4:^I.%(OIR@&*,8$2(+S) XCQ"+S+,G+\J;V0KJ]5VC?DY4(V+;0;U!IE6^" MQXW2#@5/>A W>+T,BZ/W?9^VX,C?]PN.U H'O_H!T:'ZRS!@CEW%Q1%4MR(L MER$R*J;2,\SX15$NVW2RN(G!;2X%7_5.O@:N]6\4QT:41P@0R"F -). (A8" M1"$,$XHE$>8M'0X&GQK5UNH%6C^G^J<'R!FPZ!5X>*;,8:&P*0?K#LE8)6&W MT Q5#O:TR?TE80_N&;$L[&EM]TO#GKG&<>>^K?UX]M#VJ^?=)<>'MC<'>V[7 MJX>BG/]#\%DD.$EXSD&6(YU#+F* PR@$.6<)IRQ+\]BHG[PW#:?&C$='#,E6 M5%TVRT MWYS6Y!KOK0%UIY8J^/959],$VI*@-L7'B4)+%+T<*C35X67.%5HB=/9HH>TX M=J3)Q7QVJYYHKI_J=PMR/U/TAT7"8D#3G &8"@X0CY%BPRB*U"=92HR\O*.1 MI^;!;94+M'9F)'4,5S_[7 6"9UHQM-^8(\[:NGOXJ\W37PGVE_OB^\_J'F5P MA/4/0/_0>=Z/QQOE03YKQN8)/7_!RX;QOY/Y0C/_NZ+\1=V[F@G"&*,D!RC% MRKF)F6Z9 *EN4QG#$(4\0G8M$SPI.C5B. [J;S2N>]#>:YU?)KI_-,7C!OFO MF;A_QEC_WK3_TCOM+Q;T/S(.:BK5X)6P4\OA+$*F!*]6!=-95-BXW.G:9[=N\$BWDP8WD_ MZ'KF;0VLUCK8J*U)^J??&I3_'&R5[W0]&XZ#[1$;DE4MI(_*D_:H'#*?PPAN M7'8G%F2ER;-<;0I(,4YRH?@)<,5> %*4 AI!!#"2-$]1&*I_;9S>8Q%3 -".=Z^#Q3"Z6R%CSQWGCA^2)$U)&Y8/S5AX^]SU7.BZ-Y_?+ MN9PSY?4<=@*[$WI\12:_JO\^KA]O'XOUH=8767U]?KLM1KSZ(LBQ]*\&NBOKSJ[S.,XAQ#'(($ M[*!^?0EJ:P)TP6Q(RK.2/RK)N2!S2&M.8S@265%5^GB7&E$LV?,M8^6:+%Z3 MLGQ6?ZJW25O)LRS&) IC F(I*(!,9H!"*4 :*I>/1SR3-+*B,6/14R,QK7G M=JH'I-'=DLK,H3QN_OQ%-1:G&_+>>K:D;"B%.1*8^JCJ%+G@,2QQD01,0Q4YX7ED8G M1OO%3(V%=KMJY4;/8*T5M8R6G\;4,#)^-5*^H^!;D+8J!K_U@F0?Z^[%8-"X M]FE)X\:P>ZT]BE?W7WU];+K3,TU[3>]7XK&:A1'!2*8"8,QT>D;" &() CR* M/:E\+Y:@Q;FL4KXIY M]T'C*P)^4N:+QY\HWVT)Z:G0N;I?\DRX"JOP<'5.J=I_?+A;% M#]V&YUU1OBG6="77B\U5GXO%G#TK;LI"F? ,A))@ +.8 X*)_@]CLYFY\4Z,6[-N@MJP>F)JTX*- MUL'NJIO=G-7Y7AL#M]?>!(V-P;?V7R\9]CYF8U@N'E"_D7E[>&2/.=Z##,>8 MF5!L)!IR$A]TF_*OHGS\)#=EDJ*9I#1+(Y0ICS./ !3J)YK$%)"0IC"B.!*9 M556U:#6-6B5=7G^^^ U M(,N!0//,EB/A94&8 ^$V$F,ZXV?'F0:@]))FW_WCL::!%7NT:7*]8^TR\C1? MD47=^(W/==9JI83I/5K^:KWZ6*S^0ZP^DSF?H0A*DDC=BU)2 ".FCRPIUSX5 M.E)NOUV)/I3ZCM&KZ2XO_6L^?ZL..I6!Z"NI# M3&03!7LBS_4Y1WUIG26B/A=MNSW+VFBF4V:V-O8Q$9ZYNE4YZ.H<;)0.Z'H5 M*+6#9[$*M.(#%E*SA&K0NFJFLLS7\F2['66%EBD M>2*9+K>AF"QG&%#(8Y!30:,D)#PRVQ0^-?C4V&JGGZ4CXH3W:?19NGM_<:^R?TB_)-ZY%^$<6]6A8^ MS!E9W/XQKV94D$P0%(),)K%N<1@#G$ ,6!B&.20LC9CQHWI6RM2>V:Y^P3>M MH<4S>Q[+1!<;8AD%/$T3O17! >5I!D+!XR266,0D,RO!-AB:X]19\X3G93(< M!"//K&@#CA4K7C3^6GH\+V TGKQH8Y$P2(T MY0['2-&HC8(#19U.V]L;:#JX9;S8TFE=]\))9RZQ+VOX0<&V^/Q0+$63WSL3 M%/,XUC;8>FCGU;;410&2.> M(B!XJ)R#F$0 (XK5KXAA2D+E.MAU'NJ./K6'LU6N!4)Q/=B:7X018ZIV@F92(% M302(10[5NQ5#0"-&@6 \#P4.!-7N\!X3+ M]^NXS2#<579K/DV-S)YV[9[ M^"+*[W,F3A?*_%@LOXMJ)7A=$[/ZJJL\=C]_753M'LR=8,7]4O?*ZNY SU"6 M8Y1A"2)!=24 [5+P- $,LSR,4^7YVU'2*%I/C=CV:NDNVXW+VBX:A[U"D9 M\@4PCN*COD9&G8O#E]&XPAU7LYL ^B>I2Y^^6Q0_JEM:U6GVLSB+2!:A$"#! M<@ I)X!PY1PGD F(:)9'L=5IRCYA4WN!;'6MSX?H2K^UNL&WC<*VB]\^H W7 MP@/!YYNBW9&S7RL;0#+HTKE/WK@K:0/+CQ;6)OVCGC>W?3CFX:;S_MG+Y[.VIG M+W)S=3ZWB<6?U9RL;I?\[2:W^-7S5S5BG7^"&$PBW74HD3@%,(\DP)&( -=E M)1+&I+"K=64@D@VMSHNN-B#X.N%:-OD MT,/UX)U:#)9SMFI7>4J'@[_4-;[:3A3/=.'.JO:,G7[?'?U1&WNSZ>7S[+55[1@3,^B2V*>^XRZI M1T#^:$D^ADRW-]6F ) ^5?=A3J@NE#T755MK5FGRL6A.%2U7,\PDI'DN )(D MT2\>M?3/TQBD:009E\IQSJVZEEC(GMI[I%;=[G5@@[09NWO"SS-9;VNK]43IG81C-U@E_=HE(O(3',F220 M 49E!"!.&2 X#8&061(RE*(LMBH.UB-K:LS3J!KLXN\;99W6ZWT@FY'00-!Y M)AUGU*RYQP"/(;FF3]RHW&)@]R&7F-PR*'>T2:D0BTCR+ (9P=J/24* D4 @ M@2E/E5L34CL_IE?:/Q%_..7[]D-]%8=,+A_X"NR&XA%_"4Z5Q;@B) [?OW#&!K?HWP:H(J*BK*-T$VH) F>#WY( !=KY/$O2I M\.(G"PSP,3EI8#*,0WK5G:C4(.R!+/D;\5TLBGI'\O:^%-TZ0D@PP7/" $E" M 6 <*U+## %!$$-9C'$FI'&9 B.14V.OC=+U%DY'[6"KM\N!?C/T^WG-#Z:> MJ>PEX;3(^QHSLFPOQ\SNSBLVTG:]LZL/ MVZY>$4]#&$/U N6H;OH: IJ&&(0LHIPD<9RG5@GV9R5-C:J;G9Z.IE?T3CL/ MK\5>V;6@C;(S9HV7V_98'Q:#;X:=%#;^UE>?S2"OGG^K!'^_W/;I:G?YYV)W< 1"H5NP0A#). 80L@204$@0T0@+B1#.PM2L M_IR[$C:/R3C%Z3J=S;;:_M6R;ZO]7)BQC5]\/=.04KXYT;-17R?"_:0M".;+ M/P<[W'=6>#GVXP[BH UC[;48MYFL,TI'C6;=1W(MLK-0G][_(I9J?;VX7?); M_CA?SO78NF+[VR8-!0+"7F$K([*FXF=FC/5 M:GT3W#=Z-^70]S2W+=1CA+X9X0V/J6>2V\+Y2P?.?:6#5NLAB_[8H#1L-2 C MR2.7";)!X[A^D-7=#A&Y[?KP#5DU)U.6-X0"PB8%92EDU[;=\CP-H^G6YM7@>-_"W)Y.]GK0Y0(2PVY( MGA8U\L9CK[W'&XS]EU^QD7A[.MBM*Z2]F_^A#Z L*[7.*^MWPG9[$:.4"0DD ME8HD$)4 0>7@$(EB'G)*4V245WVM(E-CD5K/8$_1:[;%7*;&8N_1,^!C[4C> MGMTRTY;H-L\O/BD..YB>)V?L?4V'21IXH_,*0(VV/UW&'W]3] H43FZ57C.> M?37\M\O5?/7<'B*Z$T]%J=-M="[O6BV2=$V.-". Q3P!4.KM#QYA$#'&,4Z3 M-)%&K8PN"9K:2Z?1-6B5#;;:!HVZYB7S>]'M?Z\,B9GG]X8K7%9U]4VPN*+& M?N_PH]7;-S&R6WO?Z/H14GT5\&+&1)2$E%(@F10 IID ),LE(!%/4A$)B"3V MENRK-9@:C:@W6^(QW;<&W715[!%*[^MEEY1?;<0+)?UV\7NQM-]:B>DF_G8Q MNBKU=V^@:PHQZ))15:<00"B2C'",0)PD!, (%9$AASA$#,89JR8.%6O*0, 0, MQH2DG&0TMCJQU!U\:OZ)UBW0RKD5'.S"9O9@NX+A^7DVQL&^9. )@P>M#=@= M?]PB@" RS&,: MF]9./R=@:L_J5L5 Z^C4.?,$B@:A[2NQ\?SH^H'%IJOH=?",U5K4$B;+3J/G M,>AO-WKBOA%[CI[7>K_Q:,]U+KE-:1B]?A 5>1+D]TT;VR@/=<]X!B+.E->! M\A@0@2"(PI@D5'V446&>WG1"PM3H3*D8['1T>6Y/XFC 9]>BXYG0/ %CD^YT M)4 C4=H^4$.E.O78WI_M=.K&$1.>>O3>SWGJN_"JAJW;Z/.;><461;4N.[D[ M,LD1E#P!+!(,P)@20$E*U?J*QU2F2&01LPNF&$B=7FBE55JG/A?W)7EZF+,V M_[D)*=R)[V*Y%L'[I2S*Q_XM6^>Y,%NJ#8RO=S>PUK:S];33-_CFIXZP.4 > MFLOVBGV)EK,F.)QI1&MTJVO[+37&^ZI:"_YF72H1GT4Y+_C?R&(M/HH?]2?5 M3+*$,2P$P+EN4ILH8D*)\L-2GL*!PT&@>-RC=! MK?1-H-1N+ABP**\53,.V\S(1/')?+PLLCAM\V=SL7O#N=LGU/[H[QG>RT-M= M[\B\K,7L.')&$48H34* (J$6C:G, =([5#AF:2@%Q1!;Y94;2Y[:8K(^,JN] M**9_$#O=;P*IM ^^:_7MR^B9S4(D\RS&6:+;" MVKT\O,S#."^07XNE> X>2?F[>E_(]9);[AJ:PV[V@O "I>>7Q/;;7/_PMOMM MUHHW+XJ.?SML>40KM(:NGF@F?/3BBE:8G*J]:#> XWM#V[-<-6FA=_/J]_I< MPPRF)).QQ1LN>47A &)9#3DL9EBUYKCZBA_VHW'NAV=7R_5 ^;J%9M MTM2GY3:-:I8G#(48,Y#EL2YGF&! <9@"P4(& ]L\I!%]:-SMOV8(IJMFH/QS-V, W).X:2 M1^4A.S0.>>:I*X9B@A',>Q3A77:9:0ZU;6D((\35D2"4%(F)JTLMX? MUHIG1NAA_57+<,JC;&$RXPI[XSUSP6V_Q=9/^;Z!0S[%[? MNCUE=V)!5H)_)N7J^6M)EI6NV%8LJU,;0QEE&*RV69P_8H'E2YM+'39:R M1N4H8\I^!)<#@GH/3=S/V>MBH?Y8-#MJATV/ MIF%,9UM=UG#(#WV"].#BDOOGJY="T.: X-*IC'5F\ M'EW+4XPV0/6?:S0::<23CC:6[9]]M+K3<2-PN9KS^6*M:\=_$6Q=UB^'MW^P MQ9H+_DZ9\KIX?%HWW[=/\BTIE_/E?:76LU\>2"E>/9\>H%Y089XC&I$0,"$T MY4L.$(L10"%AB(=)BD.K%%F/ND[M7='5--BIZE0JPN<4FSG$$YDXSV\DQSFS MWX;UC^:@>[L>U1UWP]@_[D>[T".(=$YXK5LA_7V^>GB]KE;%HRBWR2FOUX_K M1=V.Y#59L8??GF[Y?ZIKZD*J17O,\O6#>G;$^^6O@N@]JT_R7:>O M;"RZ"5AM4S!?!H^-57K=_]3:99VFZ^NK8/9ZF<8$>WZ[;(P,?B@K@XV9>W48 M.]/_>C/]MWO3?[>9_M?;Z?]U-_V?+TV_2_ZQYYD9.(?9E[9CYT%[1OU$+K5O MB0Z!J5\6!26+3CGO3T_Z/4F6_,.&+X]DL7BUKN9+ M[:7BF$=$+4J R"($8$RH>H'$.0A#%/(LXA)29M>H86_\J;T8&A6#6L=@HZ1M M5X9]!/MI?0!A=D3^V!?]<]C;?- ML[#,RK?!WFS9[PE1SU1Q<$"OLWQ_-Z]T0;*Z@\+&#*]I%PX ^CJZ=TG\BYW? M,\2E[Q"?Z1!NG/8W4=75NXI',E?N.>=A#H4$6%,79$D,"!$Q@!F$,*0B1])J MRVUO]*GQ4JM<\*U1SW);;!\X,\IQAL,SJ1@C8D@7V!8SZG)^T[?!) M/GV18\8GT;E8=1VKO3YR=X*)^7?!/RT[!WIF:29H%N<$($F8\D"@5#\E$B1I M+A66:9QBJXY.5M*G]JQ_%"N]/<&$X%50MAI;YGE:H6]&"-XP]4P86F\=\O_2 M%!C<;R:Z45X7"^BH/V"^IPMJ@Z9\6BDP;M:G"S9'B9].@SB$V%^1A?9SOCP( ML:K>B!69+ZJ='R\8$IE4O)7SC (8IXK+D&YH&2D.HPGE.!1F9YHO"[-YN,8Y MPMRJ&S3Z!JW"%J':?G -0N&# >:9C4XC978TV18VBW#V8/"-%+O>P%@U,/)& MX[\,%)DV0J,W#-T_PG@Q9R-+]@+,9G>X1I/?S1>B?*U3/8OR>:8\OC#!) 11 M*#.=_I(!G+$(")BD.$]Q*JG1$N[,^%-S[-K0::UCL%'2-IJ\CZ!I--D9EW&B MR8:0.$233QI^=31Y?]21H\DG33J.)I^^S+6Z2YVZ\'XY7\W)XO;I:3%G-<,W M=8EW:0]OI11L57M<<_WYA_E2O%^)QVI&.<%A CG("=8MOG,.",MR$*$L)%Q$ M<9X8'=D=3J6IT<,V8ZFU*>@8U5;O[N8]-78%.\.";]JTH+;-,D TP/R:+2+' MG37/Y#7.A#D4I!D*XV'KU%RMUS&2/+*'8H/& ML1=B=;<;,W6*,,PRP0C4FWI4IYU#$68 8;T>Y!&*)/N#E'S;->BVJM:/ M]0F#ZNT?3T*["W\K='1")_G=D968D81+&!&H,_!T,6^) 0W56QZ+/$-<2H%$ M;)6ZXU_GR=%0JV7P?:MFH,NA6.;\C##99M[(Q*;0,T76I@"J;0FZ]@8=@P/Z M''2OV]2GK:W>:[?6L?PFV'XQ=L8'=WU?#/OTI/&F:M"DIA'4'C<5:KQY.$J@ M&E&TXRI2O1.%V+90VL\T_VW)YQ4KUDLE]>T?3%UZ^ZA_FW&68X88!!S22+V= M. 2(A@+$480S092SFY/94MSK"O-?S=]/3LH8T15NZ.I()8\+-*7@7X.Y+JNB M2&;>=N"Q7*PZ38[ALM8;UB,M@&O]]:G:3?>OXZ,P73."QHZ@,63 -?,U. ZZ MNG929-QU^#58':W8KQKLVEK+Y]IGO'K>^Z3N-)F@,(-"< #31+$EYP0@3"7( M0QI&>08AA\*M[+*%%E-SS+N%@L^WF+G1WMW^QTX]0-TFSM E]ST=OIUL7S-Q M10%G!R3]U'*V4>2%RCH[8'6^PK/+8 X)_Q^+I7A\6A3/0FR*_C09&K,TC**( MA@G(DEA700AUYXF$@0BA#*JO,LLB\V9 9\5,C0VW9;F4L,> 5,&K3V^"Q[K* MA$7*^GE4^YEL.*P\4U5'Q_JT48-9H^8@.%FD]0^"UT@I_4ZXV>7U7X2C-Z?_ M_-WCY?-?M& OE__RU1XJ8K;I;7>"%??+^3\$G\5)F(D04H#B5-%E%(6 )A@" M&F4Y"V4LXMAJY]=._#0WA]OJE$/6GSP&/I7*<8\2 F02$P!EB 66=U519 L MR3**D\'*BUX'_'CYU?I(;:NA5_#-''-_D'I^S1D4Z=P ?G<9\&'+;9[%;;02 MFL<:3*U>4KTO!YZL/156) MZJY8+-2?= QZ1M(T3%B.0,I9 B#,(2 XXX!1P6,D<)['1@7)KE-C:E2WM2+8 MF7$3; T)9%$&C2F!MB7XIFT)6F,LPQ:.$V=&C_ZGPS-->IH)QP)(KD .7PO) M6I,7*(ODBM;I"DG.H[GZZ(^/\R:=\W;)-94K!8120W3:)]_2JF;X&>0)8[E0 MWCDCNH12%.OP;P(P#E',21B&Q*H BY7TJ;%G1_DZKWE/_;V&XAL++"G3;FY, M'4E/B'OW(X<#V\&+= !M6"?21H&1?4@';(Y=2)=!'#W(33["^^73>E5]T#5R MH[:RL\1AC'5E%A$C#""/,T"R3 *9TRA1),>RR*I87(^LJ;%9K5L061;0-@'5 MT(4;!BK??MHV!4L?Y]6*JJ6L*7+VWMAE3 9UN7K$C>M77;;[R'DRN,6Q'US3 M*/1S64A15;J(]N*=$-7KYN2+HJO.*2Z:0K".(, )C(%.(1JU0FS.(M0 MQF++_F[FLJ?&)YN.N4\=W>LW=Z&F9\Y%4+7G1J6P#6_:S(@9^7C"V3,9;2#N MJAV\ZX/3OK.:/3"#=DJS$#]NYS-[7(XZF3D,X<9@[Y>LU"E%;T3S[_NE/L2W M5#.OCXY%(J=A1"1@F10 "I$#&F,"$I9R&.4Y37"\28 T8ZU>>4;/SWZ.HV>F MZBAGQT/]N)HQS_58C<,U&SV#GS::_EGWRC+!SIITC# 9DF;Z!8Y*+$:V'U*) MV4T.N2U?1?GXH2#+UI.G$T[(\] M-?=%:Q=H]5PZ"AW UL\$5X+A^;D?$@>+C!1W/$9*0[' Q2[YY+3EO1DG![>, MEV9R6M>]W)(SEUP9NKFM*E&'BCIGG=M&>?R3KNFK_*;Y\KYQHLK-KZ](-:^: M=%A&]6*,Y( 01!6340P0EAD@,I<899)18=?+9"C-IL:#W8!'8UO;]6MKW:9? M9ET<>VM@?577Q*"VT2WE>;AYMXQ%C3F;(T:N>F9I\$3HP;'T$O&Z6KF7B8\- MA>G9:-I@ NP+4+QI7^1-$R#= ^B=^DLUBQ$748HA$)"I]2H.,2!1E@/&990) MG&4X,SJ"TB-C:B2\47.O(5*MJ7GYB7-P]C/B0"!YYC8'?*R*3UQ X(KB$^=& M'JWXQ 73NL4G+ETZ4%4Z_<_;_UK/OY/%08TT2>,XY"(%.<[5\A-*"G D,,A0 M'&9,1E1@>E5ENK.BIT8(=X-6I#N/N)F[Y ='SYQQJC)=_4-'\9'*TUV$RVN) MNO/27[9,W454+I:JNSS"4/'T6U8?T*T^D^=F>2E0DLD\ R$)N6Z;G@ JL@0D MA$&99F'.L6&;%V.9-H_6.-U>-@H&3XV&UP;7#T%V#;!? =S+!-FW0'Z^ .0 MD?8SX/B-MA\*?>&(^QD,+D?=S]WH$'E_793BB[CO=)VG21(33D+ I2Y40D@* M2,(%2"C,)$8\1SRU:!UU)&!Z!/)9E+(H'^L$Z+?+?SRK*UVBT,=0&@3DKX+' M,TUHW8)6N6$ L8C,7P7,2,%Y.X#LXO-G[>\-T1_?-5Z4_JS&>X'Z\UJ( M]$J;VNIMIVR@M07J%=_JZYA]V8^UF9\T&(*>R>\:\.S3GTQ &33AJ5?@N"E. M)K8?)349W735T3^R>+]4"[WZ/5)M_]8$JKM=Z7XIB_73?'E?;4](1#3A41I2 M0&$, >0Z.S/2OZ9"QB0DC"6QW:KL6I6FYW-]63\^DO)9%]"1&T/4&F1K7?"X MV>TCJT#J/:7O=4'*8AF08+>-1/4.@-,!0??I-=S;&W'*?&_I;2>H8\M-L/MS M8\Y-L-=---B:Y.6LS%#X>CA+Z*[32YPJO!K!,^<+KQ_7T2%[Z20_(T3*#&<,D#S/ $0D 93&7-%SJD\:,AIFW,HGO"!PY\8WVW*:[:JVVL31F! (<86K_/^I>],EN7$E7?!5:#8S]U:9)4Z3!$@" MIW^EEJJK&964)JFZYT[]",.:BJ[(B.Q85)7]] -PB6!L)( F>QSS%0I)0FX M?R _.AR^D R@6&J&404&L$!Y+ I8,.Z4HW-EGJFQRZ&X;".GYV;S&JYV3!( MK8$)Q //R^T:*#\L]_=US;1R59M&A M! NA-,8\!80B!1!5&."$2R P3A)JRG.GCJ$%0X@Y/<=62\MHNRJK^Y5Z1DNY MC1:FII+^5_.S":B*=INRTT&TVAL#=*_C/UV=\P,\!;8^_===V<&/ HZ6=*]@ MI#6,*A6CGXR2/YM?E\%=C:*F OA/OU>+_'.K\<)!WT&<8T,N2-ACB 'D'/GT M8CBDSP\]!IS+NVA%&8ER*"7VZUJ+42>7S[)$I0(6"4BER $2% -",J'_X"BG M$BI"K1(Y[::;FIF[CZ=:[\5U+D#1B2Y)9:*0 #QC>O. N 8VTW^53.0J)RRA M2>Y2R#@@NJ,5+F:5)SDHKI8?O6!H#?WY:A[#=LE')I4)7KE:^?$N>ALZ'MD. ML,!E/;IF'+N2AX7V%XIWV-SE$?C7V0OHV^J-- ?K]TKS9)6!L5O/8 HE$4*" MK,A-RVQ-.I3%ALT3QHA*(5=6Q6T]YY\:O>N'+BO#^;??Y5I2(ZI#<)P'_MV\ M- *J Q.537\R;6 S64;DW$6E'DT2UFY@\!U"%X==A)%B&X=:#+C0,L;AKDE;DI^K&+4J^:-I@'GNB7YQK:I^)1CP3NK0HLRY6;#&O7(%>H4N7$;8S6@/A-O"' MH):R89P]@K6DH8.(.N$('Q]T>;I7"/WIU/MR5$_W+;Z9N77K!G,8KYFJE8[Q M>?^F-)U\O\V?]"6?U5?]KQM5=5K[NJ7K[3NZE?=_SS>SE(B44)* C!DKE9,8 M4,2X_DFB5!$89\RIY$I8\:;&3K5VIE9'K5_43H1:6B MD=$T^L/HZGB"%_@YL"/$UUO=@3GT=1;6(TEY"/S#)C('E7#D9.-='R[BMANQ1.3!T2X'$H^%9L?3G5%JD!R+)WZM=@05L\KM";]>T> MSM@68[[1]K7X_%SN#A_>?&ZB'I-"J53F M BUAOHN" F[,>1F*%8JI$D0J' MK.S>":<76&%D\\E"[L?6PJ\:%*^!::=MYI7"1K6TT4]&WI^' ='!/QH4S)'< MH;>#ZN;XM,:HT\_9/\IX;DUKC8Z\F/9W>?8ENUC"Y^,^:A0Q1*G*;VKFX=6253=$ZO9!;F<.!@1R8#Z^$4/W+F)V MR 3M&]8SY;B=PNST/^L-9GF;?_]#L]%=\3^_?J?Z\?J\VVZV^JG0F^%9)AG' M),T-O)IDS,$(182!/(4<9WDB5$I=VQU>FVQR#%/*&FV,L'?1IA2W[-U3RQO] M5/W;S^X]#:_B;^^Y,>?P[6I3EDVN3V(.@=L%)1E110Q89EIHY(G>+W*L %9$)B+A2O.- M6_A^[YS3VS*6DE;-P/91#+*6VC&ZOA]Q.U()BN+ S'((_3@ V8@[B./*&IQ! M\A:O3OHZ&8Q]&%S-9>R]T:=!SYHN-Y6S?F.<7_=FR/]/+B6G#Q_?UBX 3@I$ M"Q:#-.+'^8S4 ;S_T)Y&?#7-)Z.22[2# .2:F,0I;EI/*T44*EB,"E2))%3YGGG M;%.CY[VP3:)#(ZYGA8INJ*U/-<, ./Q9IB]V/N>7_9@$/K7LF'#LL\I^W2^< M4%K62S^7FS7*O(.)@KF20'R7&G[+U<4 M4*P9ID@EXVF,BB1Q8> M=W!"$I'#[*.RDCLJIQ3E,8)WGQ^I;S*N_'?RAURLGHU!W43)Y[DD,4HA*'B< M P1%"EB2(( I(E2QN##UH)W<8IWS3<\EUHA;.G/$06#GUCX=(-M:/H& &]SR M:2'6DC1\-H(5(H%[]'1,.'9;GG[=+W3BL;C)DT=6+W2Q-^9S)3,I$P@$,]5P MBB0#6!3ZCX0)@1C,(;5R;5T_Y<4LR*)*:90 ,B8 "C1KR\C" $J MA4A)057!G3P>'7--[3V^>+1.]^*&.EEO@6WWM@>"<.!W_]*Y>G20=,!3]7,X M!CU4;TWWNF?JYWKW'JE?N,670K3,)KC;^&:_S#=_OGGYID[D+* M.CV:.A+$XY@#FIGS%D8HH!PG0"6)2E'&5)RE+M31/=W4V*.1MMPZRT94-];H M =B..,+!-C!W-(+>1:6H59Y#E71.+< MS8'9.^?TG)B-R%5FI:P%W9C$]7*S$ZV>/:JK](-/4R%444"@?T@ 2CD'.*4$ MX!AF4#.](K'3 5=0Z$4[>4-RO1VT 0F^YY) MQ^9[.PPN4+[EC=Y[S_.L8M,GJSK.-T=GS=&*@H5 19P#C@IM3Y(" R9C!D1" M,L'S(J;2J@2C^]13HZ(/3\]TOBX/8OAWNGZ4ILSN@IHR)MM5Q)ML>UKV&W/> MJ-JNA_6^=0"4A]_&7BA8<%P_LB,J%+;'K"!YQX_>/:RG-2VJJN]2MX)2$/(\S 6+!"Q,F'@,B%0,P MQSG-F2Q0;E44_-H$4V.JO8AU!26G!GM74>QFGA#8#,POP\#B$+Q](SPCQ6HW MN)0%ND\Q"^11[(.C,S;[TGWCA6)W2'T4>=UUG9_5]I5_EV*WD)]5W3SLBWQ> MK4TDTX=E6;+ /!=O7NI??I-_;]]HJ?^<8I+7CK<'X$^NMJ)?Z: M+Q;W2_%!?T:7CW/]?%7]H9M?/:P6<_XRXSB),:4,D%29^@@\!@PE!8",\HQ2 M(E/F1)G6,T^-)!OIW/C0'F@[!AP$OH$YKQ&L/%$Y2+UO7=_\_BZJ1(_^J/\[ M"-\Y(QB2X>PG'Y73G#$Y93'W =QX2\CY[%UM]#_(]7PEWB^%,2=GLN (PPP! MJJCFIQ130' & :6B$"F%&8RMO')79Y@:#S5"1I64T7L3&JWEM..EZT!V\T\0 M> ;F&6=DK+FC5_L#1VP:DMA(_H_'U8]_T?=J"!)B?@#FAQ8M7!]WE->_5ZWF M->^_T-?[OM!_79G8D!_R?KW6JUEN%$T)A4]:]BN_;J?R?MS7+N-YE@J(,(B9 M*=-9(*(YP1S/BD(;*S(1!7(K%Q=0N*F1R)%N44OZ\AO=_OMGTV$IVGZGR^CX MIAN*T(5<==M3@-=9R\'/"<991H^3@_!XASU;""C?R*$L R2 "/ M\YCC%*5,8K< '9?IIQ>K<\_Y>B=%Q%=/YC2I="6X4;43_'94/!2D U-M(W;T M4R/XSZ9Y>"-[5 L?M:0/1Z<^F(6D2Z?Y1Z5#'V1.ZZ$K, M:"^G=\>::[A:6Q6WHC6\ >$,E(^AT 5#8)O@XE1C?_Z[]+WPI>^\_,:*P,=] M7LU.J>YJ3Y!,"IFF@!K7-((I S1&,6 XSEB1JR)UJ\[4.^/46.+C:OD(]$1/ MYVU8(]#J227U!$TUXONE*-V U;G<+,>,4BDY*.)<&RP%QH"E M4H D5Q!AQ6"1%[.E?"QW0)Y;>QM!K%XK4KU6;7&&>[MJJ??URJLRYJ4'M5XQ MK]AVSW7R=:L$P_Y5'2S-6C1Q[F8I*F?V??<2!'"RN" XK+O%2I)7=KRXH-7O M@G$:[=8HTFJ;^.]S(=_--WRQVICB>,M?Y>IQ39^_S_F]$B\(5*IWAHAG%- " M_7I(J(: =] UA$> M#CN*G^J"#_QA:*_T0=UHM8P."D>EQMH,-D]"J73]>3"?D(/>4:UXM-?#@$>4P3-D9Y^B]LM\29=\3AG<< MS\\Y@2G/]*,$E2GVJK<9M) 2Q+Q &18H3CAQ"L:QFG9J;H_[Q6+U5]FWU&00 MM=(V77TPC2=@,J:'R*W=).4N\=OGY?K?5DZZ+E?+>8Q%&)H- MM?AWYPUMJ^2*O?@C6;.WXCF,C>HMU2M9GK>B>-V>O'GD41)TS=0S+@O*6"9! M8I87H50"2A$'BL6I(G&"$K=Z?1XR3)EJ7;-%'8_??5;,E7P'68<1O0_AEF#H M+-TVB*^8H5N*,>7LW#9.-V;F'@WEQIJ;]7;V1=+%^XV)3-#\?,_Y[FE7QAZ^ MD\]KJ:UE,YF)7OJLFBJ(==4-IG?3(E$<,)*9",*8 (P$ S01B"64"998%5F_ M18BI\::1T;RP^R*H;A5.;EJ/;E(<"^6!6=$=8&O&"X%0!^7IX5MTI_]V2G4W MS3\*UX5 J"&[(&/YV8B_;XR_<[.=:R8UR1LHYSS'J5X'H@""4 *LXAA@AB57 M A6)6VV6X^&GQE"_;\KW9R^?F[%V IV='>8/R,!DE3"<<3CE(E<;_>C MJ.J\]&T5P[?/,*"(240R$_[(S5DE3S0A:1M$,E$@C%&:R<(M-.?B/-.+H7E[ M%,SX3S?>N8RE':)1R:%3UU,JZ+[8-T2Z M\7-7*2 ?EOH3K_]EAHLT9G', ,I1"E"&H&DNJ3%D!4]D2F0,J6O*^.6IIO?Z M-Y)%\U)0UV#F*XC:,4 (E 8F@8.(427C7=1(&3+HN!N'L&'%5^8:.7"X6^/S MT.">ZWU*8YN$UH>OO].E>'CSV;23J5NF0B4YPIH. M"442^_K85V:9VD[$B!EI.B)7= >OD:8?A MQF-N=QV/N-SC=K\]N4CQ-1X?Z]#=%#B+KH:ZW]#I4RO);/;@ ^] M$ -_0 99 ^?=^RT@AMS9>\DQZJ[_%J1./0(WC>49SVHZWK\QAW-O6[446[4O MW[P<+GF@+V5UF;_H6OQ"Y^M_HXN=*8:^>VIZ%SY+;N(K3,Z67(HOIOQV7- B MAB@!.8IS;5,K"6A6I*! /.>$29(2IQ(Q@TL\-59N9(Q$+63T,I<+Q\/4X=?9 MCITGM7H#4WFI"&!&DZBM[5']8A-;V[JN5CDJ=;Z+C-91J7;4TOLNVC\3C>K1 MER#UX$=?IJ QO(,+/6[$[UAKY M+J6;Y850!9$)4!13X_*6 ).< AC3'/*$)HA*M\;:-M-.[>NQE[IJIGT7/=-U M]*-DE)]V&Q$]ZYWSQ@A^O;WJ+8M@]U4(#^W U'Y ]6N%JI99/\-5$411,[:6 MN^+VD"VW78 *VW?;:N:1FV^[H''>@=OI;O?,AZ]<+NEZOOI]N=$<.%=SS8)5 M*#W,VT-ZK658FD6O] MI=V^F/R"^EE%!F"P\,';.4'#&Y/2W)=L(1\Y <,3A./'*]V7,G5&V^-M]6 M]_P_=_.U;/*8S,GY]GXI3';\L[ED5A2$FS ?@%"F_R Q HP6'%!M!%&:4)%I M\G$JBFH_N=6K,VXAU'IY3'3]C%?YV&6^U(RD>9[&3((B+QA B8P!Q5P"+)G*$<$I3JSV2KTS3>WMKX2- MM+31L;A1):]K1ZEK '?30%#8!N8";\0\NDWUH'%SVZEKXX_6B M@W:M4^A*P;*25$O%&^+# JZ\W7[K==9S8&8<>RF=-VWA40^YJ0LHW:B;OO"H MGFX*!YC!LVCWZNEIM2P/\-[2Y_F6+LI#NXT)-%[_D.*7U?J7W7:WEA\VFYT1 M;\84DXD2VK#DIAH/X@(0XY-G&64HS]*$$J=BC,X23(WO?Z-_SY]V3]%R7VZB M# V?[VK$",WJ??$Z+P3O>] 'AEP MQU5SCROF_D;7?\JM"37^*OEN7?:"KHJ@QI!K3HQCD&4" D1Q#(C0.W*(:4ZR M1.&4Q-;)<%XB3(TJVR53+Y:I/F@2'51Q*UM[PX)UL^0XRS!XH,2D5\ AXV[P ME1@I^:ZK:'ZY(D^'%=GLM?E'H#2\FU#LS,CS&WF\Y+R;-#_*T[MM)/?#GG?S MM=X7K-9UEFJJ",88Y2 N! :HR#B@"F<@1ISR')-WW M F;]9SC^2 S,X/8@.!W77-;WUD.:DU%'.YJYK$W[0.;*%:'Z[%:9:/*0A[:9 MY:;/-RH@B"73[ZG(8D A@: @:<%QD61*.0:0V$P[O="1WY=LOECHS=CZ(.6M M[7(OP&VWY0T&X:NVPJUE;F6\#MK]]CI$P_:ZO3#O*W>VO8Y$?Q_;CGO]6.C= M?$,?']>R\AY^5K63\:0O$F5<)D6F-Z2$,(!0D@.:YQ+(5&I^(D@(:'4P[#3K M]"R)MM#&]%Y78KL1D1WB=DP4',?![9!3"&N)!^TOY8122#:RFWA4.G+"XI2/ MW&[V-HM63[+L[*>%?[M:;N?+G3G*>)95.9/-&ZE6:UE=]XW^+3>_S9[5]^4UNOZ]$JT>5WHD1B:600/!$ L1C 2@N.$AYEF2$)2C# MQ6R[VM*%M6TUENQ.Y+C78+@WNRR+P4KMZ@*@T=;HYVRDC;;X,4I@*HA^:66L M%U] ;5KG,@$%+7)1I$F:2>A:JW62RS]6^==RT7]::,%__N_U)%A;_5-$W M#^6R?BR7U7Q/HH/JT4'W9L4KC:)*I78'R;NZ[&U4(G,7?=+?*SV0UF%1M3X+ M7PMW]/4*O),93?RQ-T1CK\N%?=7H(KC'ZGY;4]/'X^O+$ULM9@CKKY)4!5"$ MZ2U8K"C <P]7-Z3>!,##C6NKO M%$=[4=<;XF:/QQLM3O:B&NVXV,L7^)2OG2_T&[Q:RF\:)=F4\\ZP2(HD!PDU MX?$YYH F$ -54*I_@93,K*H77IUA:J_B7L:H%-*K\/671Y1G.:07/HPXG4-(4A 02G$@B1 M%3DBFL2*U)&F+DXT05(RDC1$C>.;"A-/B6@N50D^U&2MW-AE2/3? M1OS!BP$/PBJ79YI V=VKC-%]M4\+-_$?N]IC^VUU+\3<#$@7#W0N/BSK7!&] MU.^?GA>K%RFO//2YXCC/*0.II,;DD2G0?T]!#FD:1-0P'6S\$>-OAH#$UM+G^C;*CIH%!F5M%&U3X7&1>?5 MU4=?,I?>=F,OW4B>M?82;E<1/2SALUG"^3+B]1(NC]ZZUA*VW[I0V2%!X>[N MLQ=DIA&;\H5$YKB#7]"1;RN+^$4N3$#XM]4W^O>_S[??OZ\6YDSFE]7ZRJNL M:,X3G&.0Q2P!B.8(8%8PD(E$244H(P@U,>[?'"K'>\IC]:8?![]_&^-8U)Q" M5V_VNM+(O/1+N:U?Z(W<;A=5=PN]*995& 8U#0(ZVAG\@^Z+*-67+PK MJQ^U9+^[W%3DL%T(7WC1%\4ARC ZR_(J11E]$;M6HM%[/(]=2JNMWP_9>JZJ MND^?58OYUZO'-7W:S# 6.2\D!"(K,H R4P@[EQPD,"3\B9.D0OVS.MIGC(*ZPSYA6/1'VA0$ M7P4WX]\?PTY+WV/8\F6)1)0;]?BI-,],O_VB20 M\S@MF"* (--6@:<Y/KCG++Y0F_*9QDN,@$9!4RR7)OD, 4LPYI)(94<(H93Y)YXY"+! M](XBWS6-W;PR:ET7P(X2!P1U8!:\DO#?B!_]I>6/&@7NHKT*0Z;_6V$W;"6 M;A%>N2B %3[]]0'LAO$Y(#59 *;[1&U6\+1 +%<(D%S$ $&D^4N)%"A*"I5B M)22WKU-W,OC4[#DC7=E(Q2?,^Q0XF[-&?S@&9I:@2+@E5O6>;D@5GDC&J3"\+ M;*H-(Y1F)@:5 YC':2YPPHO4J0!]UV138ZU6%_.6M-$?C;R.F]!.G.TLJE#H M#4QR_L YVTDVB(0TBCKG&]4"LM'\U-RQNF<87]@LIS 5<8H!Y!I91#,!<)PE MH(B%A"2!3$(8TM\U-38YR%L6'+V+>!UK;;PM)KZD_GM8SU8@[]6$R*6%XU5G MU7@^JM?P0TW+U^3K3_+D&Y.D_%9OQ>[U?NWM2L@9$S&/L8Q!H0H)4)8F@"(* M <)94>0X41QGMFG][8&GQA]&ML@(%QGI[+/ZC\#J9H-;(!C:+VVGO5-._R55 M;TCI/QINM(S^2TJT$_HO_MZW:XF6QGA'S$;PRWSSYYN7-W+)OYM2V?=_SSYT;'Y]JNFQ MRV9;-_X6.[[U.^GI0-:62T+@-3B+5%"58I8[A$;0R$@:DD'ZT C+'5=G&YDU M^K0^YXO>._R8XJ,YM3&C'SR6DB@F8TT07 J $E4 K'@."JBW!9Q!6$@G(^1L MAJGQ0E.&?%&>6'(MZ>:?;J1P#J(=%]P$S< 44,IV%Y5,,(3C\:KN(5_X\TE& M?<^OZGCZ>E^_\-82&?N$FXHR+D>$WR_*]:H+=?#5XW+^7U(\R/5\)8Q4=9NC MC"'-!+( ,<(((,,11*H4%$F:LQPBG"*G'HJ#2#DU=NG-WZ[SMD7MB"LSI8QB M=]']TVJWKR7AN/,9Y@FPH[577]>!J7'X);VA)L@ D ]30"2DH*]4;60 K*^7 M)AEB,O_=I3%#Z\>\3/$ID#"-(FFA3<8\%P#GR 05QKE$(J6Q2ERJV)].X,3I M(Y2:_V;FJ"S%\A5?555[EX^1K"5VWU0> 6J_E?2%:80-9(7-^SY$O/:,E]0. MO5,\FF/T_>$E#2_M"B]>YVDU;NFV_()5E:3?[HN#5A8!N8 9P1<[=Y;) ( M:KMT3CBN#6*C^YDM8763^W%RW2/T)4G9M_G6],.EG!4JRP',-4&@+)6 ,I@" M+"0JN"8+@K#MD?+IX%-CAE(HXRM-TI_8STWWX>N1[/WH]9\QWX+)P*^]*QQ. M!\[7]+[AT/ELR-$.GJ\ITSY\OGJ-9Z1JZ>G4=NJA>Y_9).@16@TC'NAF^VXG M9P61G**, T0T9(B3 A"E,I DG.0DRWB6.WE[7":?VDMNQ(J$ZUF1$]QV7_^A M0!R8%?9BMWI]WD4EJN\Z4'6/9O6 )VATJ\O\XT:[>B!S%OWJ,X9WI?@ZOO:S M:OLWZEHGY<:G]("47KBF$LK^^(50!"'-*8 B10!!A@&)%0(TACE"2&:$.^U5 M;A-G:FS6X[_T#M"_<='L&'"\I7A=+_(@AVYAP M7KAS0B]72[I!7J0.[<-&LI]/,W+P^E4]S^/5KU_J]G!NUMO9 M;_/E_&GW5"=J)BSETN3.%9DB^GL.36^8@H L*Z#*$!, M6:*I]&=#P:7*8PRP3!A 188!3:X?M3!EF@+$Y']N@@3*8+]]292ZTK9M&;E4X[HHM MYH]U@V\0[96J?NL89M&S G8,& [7@5GN@%4=RKN7==^F*AR[V:$2DL%Z9AR5 MI>RT/V4BR[O\V,8J6NS3JG3;2G%?5FDOPYK:OS>^AT^K[?^6VT,LV6&DZJ;/ MV^]R_>T[77Y^+M]2O5=+)-;_!RQ%"* \08 (GH 8:8(S10K2W.KP]]4UF1Q' MMO2)EJMM]")-$E.CSEU5AK_V*%9U]Z.5T2G::J6B5:65&V6^WF-DQ\;_+1Z. MUW4DEQW"*OVC4A<3G\P7N[+%>Z5-G>;QJ7ZFOK2>J2I@.=R'XM47+.0WZ/64 M&?7S]NIK=OKE?'V!@L5?;/0F@RZ^K7Y=2[JMYB+Q._JRJ<]1:W^>A$62"@%! MP?,,()QS0 @J0$PQ(3"3&%&GK%UO2:;V421)9&0L]_"??^AOG9OG]/:5\8[; M"(_W.$$<=!'=;S;2I+D8!4P/H-4ZJK6H3 T25XO2!'@$=.8& W3@L ]+85X[ M!L0-,XN $,886]X6/%1#2!=L>KK 6 PT9M\7>[U..KTXW.C( MT6:_N'Z9_?YUED*N,,-< ZD2@"#5=%PD'!0)2A*J$"3SOR[G9 M5I>)%1O7BM0'H'HHTTO]@3GQ]T\?OKU_%WW]=O_M_=< K^F9CATQ_?7%E7U6 M_^74-&L-.,[[>*; _H4[_XUG>M[EC-^#IV?SYN5P3>T)*O>Q]>[U_=]RS><; MN?FPK#*"_UW.'[^;';+>.-%'V?S^8:TWU;,DR].XP!D0)!$ H9P!K(@ F6)8 M&U^M M2O_NSXXIA^,^-':[X>D^"B.Z:H_<^6W=(_9RN8UKY;RM(3!>W!H$TUJE@N$N MVC]G-1+[JZ(2BX#9EZ^RAD'3.1PC?2K2P'>(B#AI3A ME'$%5)%1@ K]%62\X( DJ128IH+@U*U+UND4+LPT3ANL1D+' FAGV-E]!V[! M8V"F;D0;*'K\LMYA([Q.YA@Y;NNRAN?16%>N\WN'/\FM"=QZ6*]^S(44;UY^ MWYCS\9#;05]W,KP.V@Q2 4 MY ]B2)+RD&)4&O-'Z93H;A@IV%FS*0[VEREU^LMJ_78MQ7S[<;71QI4Y_]:T M\C*#C(A$2@@@BY&V>-("8,J%)D0EE>)ID:?JQE/F/AFFMF^OY3*OH=ZBTS(: M9J/W[/+'?+7;+%ZBO];S[5::B%5U\Y%S[P)Y'S:'A'V<8^:36@%[!2*U6D>5 M"I'1X2YJ=!CT<-D6P(&/E7O%>.T#95N<+(Z2K8?RK7:VXG]^7RWT'9NJ(-*G MU;;5V.N;_'O[1FO[YZR((90,Y0!2" &*,3&A^01D*)>*Z,UAFE.WRF>6,T^- M#.M2IE&I@&OI,UNT+5V(0V XM/>O)?/_C.H":4;L5I>_Z \C>52*'K16FB-< M8>NFV4X^<@TU1TS.ZZFY#N#'5 _Z ?Q.-_+S/A=FQN(<"P(S(*0L-"51!'"< M<)!G1$F>YH7*B0LEG4\Q->ZYYWR]T[NDYUI2QT#V"QC:$C"$6 MZY^J&D98IL*8(L(IVO?:1!-\QZO]U4%0SWC>J]#:O?0A !OXU??"RID#^H ( MR017YQJ5#_HT/F6%WNO=:Y]\TLO^6?U&_T/O>W:;[>I)KM^MGNA\.8NS3$(F M8I#'/ 4((PQ8RB1 7,*,,6JJ,MK60;DZR]18H9$N^J.2SZ$HRG4DNWD@&#X# MDX ]-$[54GI5O[5RRO4)1JNBTJMCNZ)*_\4W5ES_K,XW$_MC$96Q/*6%:=0' MM;&?0@XP4PF(!>89(:DV"QS]#Q:S3HT%]D(;/^S%G;1OV4*[1;!U2P2&=G"7 M1 !4_2NWVZ T2 7WSHE?IY*[#197*[I;W1RH:_''?7I")FF,N4 @3Z%I%5@@ M@--,@%0BG%')<*J<4OVO3S4U-KK09M<]#\0"83O6"8/;T+:*)V2W=R4^0V/0 M?L0?QTT$L=>ZMP?Q^1TA*AV=A.P9]ZC9,'W1S/4@UT8"O:U!F2!Z'Y/$A0)( M8 4H9A!DB41)FLT,"?+ M9'16'.DL;KJ1/S(*W$6U"D-53+(';[@:2A8RO&)5)7N$NNLL.8SCD9S\=??\ MO'BY?US+TBRKG8Y981PW5(&$2,-O @)B^JAF*([37&4FRM Z&_GB%%.SCRHA MH[V4KKEQU['LIJ8P" V]Z1H,'(=\X9M!&BE!V!TLM]S@3APZDX$OWSE>]F^G MY$?IOMU7>AY*KU=<2K'Y10OUE9H&I?I?---N7Q[T^FU-5T*]"WTV\\V@$)(K MD0+)4[U/5'$&*$T@X"J'DC)5".I4"=AA[JD18R-Z9!;3V'3/JPU=&._+I?5>UFA3"^N8'G(=7SMF"H/:P$1T M .P@9O2U#S#W;(Y>+()F;5R?;=SLC%ZMS[(P^N]P/ZY_NUIN5HNY* WATG]6 M%M2G>2%B9&+R:$(!HIP"+%0!:"ICQ?5&,,/"]JS^\A138X.^OT'->-T*5U MW1+;,Y+/!GD[@R$PF@/3Q548:X$'"/9S "AP+Y+>:<=N.F*+PX7N(M:W>OI= MZ@: WU;W7&]UUK*L47SHO[J994IB2?3.)"=(&QXR20&-)04BRVF!,YGQ%,^6 M\M%T%[3TM_3-:?7>D.J]:<\\W.MS$,Y4QY%5+,NF:J<]=TX>Z,6*5L,SGQ1UC?Z,?VOJY7X M:[Y8?'AZIO.U&='DO\Y2KMF]*'+ TMC4Y5,)P'&> <55SK-4\,*M%/SE::;& M+XV4T7POIAN;7$'3CD)NQVA@WF@$O(L.(I;I\>&XHAN#D 1Q9:916:%;VU,J MZ+G:[_TW3++4:_+RRWPYWWR7PLRRF4&:QE@R"B!A""!.]?LO" >(IFEB4C^Y M<(H&OSS-U-[_1KCHT4CG]NI? =+NU;\=GH%?_;V =]$>I%+&N^C7=5 &Z(8B M) -J[V8X"/+>3,Z)HAE.NF8"8(F:,$T!B M(8& DA,18R%2,MN:#CAVG& [L1-+[*LYQZ5B5P1.>4FY_O] MV.JW^7*UUB-^6&J#0.^!/O^UU(;!]_ES'5=)'^4;/5W9:S7-9$%QD@.<0**- MF(0#@ED,&)>YH%F!$^R4.>(P]]0LF[VHIL9W+:L;5[D ;T=7 \$Y,&-]TJ_3 M:KG54RT,737":PK;0WR0W]1=K#0(1UT>L(5D+Y?I1R4P#UQ..9?-N#]BTG>Q-, MM[T%OD#'>/WUJ*WN\L@,:5Q$IJHA-P=@^^0WR04DJ0" M1-4CR,IA\GHN C$4/D; MQY.]6K;&19V[-X1GC3>Z,#7KRSY'FB+%CF\_SI?-BX-CR2A.8D P M3 $J9 Q8BG, 58R+-(VUO>,4S=,YV]0HJI;S+JHE+=TB7^7ZA^F(^48N^?R4W&X""5G#KG'#IDXW)#G\YGO-![@Q\GG)0[ M:A)@RZZKGW?;S59_*;05](9NYMPXO>>+G;YZ!GFF2)$* (N$5*=<-,$8Z'_& M*292,&7EE+Y-C*FQR5D3;[YZ>EHMZ\[=97ON3;2K>OF9WSWORKB9I=Q&B]5F M.NX9?M8&)[:RJVR$?_VNU6BTU[J(W M^T6I50E'@K=!&9(A/249E3YO0^N46V\.P[]-J:4KS[DQ :,GD=3_K>O,A M:9J)6.A-7X8%0$11P" L0)Q*(C#,,&16/FZ+N:9&H5I:L!>W-CAJ@7W*H/4 M;7$.& Z^@;EL7.0<#@?#(3C2$>%-2+J=%=IATWEBV#/$>.>&=KHTH*=YJ4TLN-^5C<[]>Z[4NZ]R]>3E<4H>YWO]%UZ)IY/2PGG-M:K\M MC;A2O'U,1FSVR#C7M(P00#G%@(H4 @'S-#$USU/A%.0UG*A3X_=]1[)G([$Q MM-HVLN/6>[@%MMR[3V+9AM[\&PU J4+45C-JZ6F"9=O7U;I&I;)WT7[1'YI% MKS2NN'6 XLG#+TQ0G\1PTH[KU!@<]3.OR/ SWI:;/J3N#ZU3^"-,-E]FGR4'_A#TJNW=\KY$*2\'_M5TLJO$=[9[X.% MS+R1:K6^TE/]D-R !.*9*D"6, B0TG^P&&&0B *+(H>:V9Q>44\YIO9&'R) MJ(D V?SSYD :J]6P8X(1,!Z8./8:M'J9WD6L5"+::Q'IOT:5'F5EBT%R)FX$ M<^#H&RM17CL2QP4OBZ@7QC(\ZWK68*24XE27(!!*<$(*80P!)F MH* P)S"1A2)6S5:[IYD:U]7]%@YB^H;?7 ;5]M#\5JB&WC2[H^1Q;MX%0MA# M\XLSC7QBWJ7M^7%YY]4>1S:7,[^^R/D3V^FWKO4(.)J*N.1[#XG$_8K87&\,PB^ Y/+%*!U./\9!.*1 MCH+LH YT&.0,5.>YD/UHXQT1.6MX=%KD?K=[L?YO\ZT)K_JP%/,?<[&CBS*4 M#R4BU;9>H;>\B -$4 J(Z=?&J=#_E1G"=N5(KLXP-?8NA32.^H.8SJ7Z+T/9 MS\@!5V-@ AIC(9QW MHYYPAMRFNHHPZO[5$Y_3C:WO,#Z]:OL.5]FUPU6Y5JOUDW''E7_??-.KO/F^ M6HB/QFRKXBM757SEYK?=8CM_7LS-QCDE>NN<"U 4) ,H4010!3.0"Y(I"E.I M8&+?!G=DZ:?&UBTU(EKJ<:>)H-8D6AA5[J+E/MRY"BZ_BY[V"KDTFQW[2;'8 MV$]Y_8=V/@:(V&D]/??UT[/'(?I8/3VGP?)WT6__+9X>ER[($WZ*QFJP/.6G MR;&7\RNM9G>;Z+&%&K$#]2OA?=S<^K6$\-ND_IOFEW0 M-N2VJSW\J%NJ"WJ=;I+I/.)\M=.;KD/DP1>Y* N>T;7IS(F==-/H$ M.SN*\$=D8$*P!\/Y[;^L<\AW_62&4=_LR]J=OL=7KO)PF'Z<<]/&]1>YKS;( MJ)0,<5# A .4)@1@*B3@28(*)EB24FGMT#P=?6KO;"U?I 7T"3TY \_"QW<+ M) ._M*'1(<@LO2Q/""X6A MS09K_D%_W M+D_7R_GR\R*/*4J(P4@C,8 M91D%+.<(B%CF2I*$%MC*UAA&O*FQ0J.=.6YHZQ<=%(P:#9O*X7L=S4V-EN9L MHSJPB/XH-75-@PC[%-CQU.NM[= GGZ^PK.YY&X.@'S3?(ZR$X^:)#(+N67[) M,+.X?4F$G,_>Z^FW+V^UR;ZFBP]+(?_^?^3+#,=,%(Q#D+)";SPAQ0 KA@$G MVKJ#,$T0MHIRFT^#P#.T^>>*C#6?]6I_ MH*1-PTD;R?_QN/KQ+_I>#4%"S _ _-!BH>OCCD(DO6HU7-!_X:V&X0>]$5\^ MSC5#E)T%3,!?4P"@Y(UO\N_M&RWSGS/."J0XT?LY3)&V_KC2UA_-@4H8A0)R M7K#9[)>H,_3)2]M&K$(?/\KB:98. /J+M=9"_ZHE1X=VH M4)M4D=$B*M48Q+IR!G$8$\I>C%>RDYQQNFX,N0_E1Y%O31M?RK?_/M]^?[O; M;%=/WWW6^_UH(]Z&_?K>O67GD9O\.CR9:9$!CDM5V&U';_=3-0X^S"3C"*:D%# M[L4ZD;AY1W9Y])'W99TJGN_.NB_W-$!J9GEK9#:$8[P[7^:;/^OS(A0K46"( M029-@6#*,D *28'^F\2$")3&3K6!>N:;&B4TXD9'\D9&8,^SN#[ +:V0<# . M;8#<@J"[Z6&'2U"KHV?*<0T.._W/; W+VSQBB>Z3./E*-6W1OYJR0@4K("0( M8)SGFE(2O9-)! =":C9AF,<06L477QY^:@RBY8MJ 7WB9\[AZR:(VT$9F ^" MX^$04'03+B-%%+7P"111=%7KSI"B\[O&BRFZ*O%14-'UJ_Q,H=_H?+F5IB[C MOF=I&K.TD@YGV14L^2JCJ>&R/4+?4R/Y_5\H7> >?TD%K%26&AP M)%04(*Q-$ )E#K0YPDR]]ESD5D6?+PT^M3>Y%"\R\GE]94^0L[$Y_/$8^/4- M"X6+N>$/R4C&A@LTCD;'9=V[38Z3>T8T."Y+>VQN7+G&T^]2UG;^A?+2G5L5 M,9K)-"URDF.0Y"0%")EFI+$L0,:PA&F.!*=.=;HN33(UHJH+G3=">E;6N@BG MI2OE1I"&]I^XXN/N,^D (*BCY-(\XWI'.C0]MAC#RLUMO5LOZ(I)RF M,C,5H:!)@I19"EBB]QD02XDA8@)"96V)M$>>VMM=R>;SW3W"R\+^\$5AX-:&AT=2C.M&E&C M32VKF\%Q'5P[JR,(9 -SUP&MO931USZTG,V/7B1"VB#7)QO5$.G5^=0:Z;_! MCR/VXWV4="-/^H=_D<;H:7[Y3:Z?DAE1.68<)2 O8@$0CR$@:8P SE">%%#_ M(W;*MW058&J,TD@,:"5RM&YDCA9&Z$@+\13]-%]&+Y*N-S^[L8SS\MB1SY"@ M#\Q)!R8JQ;N+&NFC6OQH+W]U160T",=6OM"%)#%G&4;E-E^$3BG/>QP_)C0Y M#T_+N9KST@#^=4?7=+G=ERW ,(Y)GFE#B4.3B)0E@-"L;'^:")@HD12%"^]U M3S,'N5RQ#5\U/8>()(((04&AF#+E=+01E1 *L$PSI3))$V'O_KD\ MQ]081,\&M)317DROLYC+<-J<3MT,TL <,20^+D=6-^,TDAOI#*]0YU:= '0? M7UV^=<13K$[9CP^SNB_UH+IO]$\IZ,-WNG[2*[;;:C)=O%U]W(K&YOS1O>A:D%] ;$:F -KF(Y% MC=ZN_A%I:?\Q!'P.S!@0QI$HLAO.0'QI"4LG7V M+=U\?UBO?LR%%&]>?M](\6&Y[Q]]S[?S'V6ECAF6*A$QS %#9HN:0::M2D2 M*DB2<4%3AK15N=K2A:57WWIJ)[[="S"@XUIN(ZY%CYYKV4U;AY]VIJ'#?/ES MI/9MV.E>!4?OO_VJ6!X'#(+UT.<#&F8C=?30AOGW!N9#M_O[?IC=CPV<$0MZ MCF _^[@'"\ZHG)TTN(_@QVQ?JD3NO2>OU:7B,UO,'ZMO[;&6)0+*D59T>S-::N= M]W^;'^4L3R5$(DU 3!@$*)8(T$)PD$/$XA0QR#+FU"##:MJID=+7[8K_6;?) MXNUV6K*2U[$]AAWT=OP4'M"!">IBR[%#8Z>[Z'T/IN[M,IP@"MHTPV[F<5MG M.*%QUD##[6X/Y]HGN=E*;K;MYJ>%_%^2+K;?O_*YU.HUW8)AG+*<2@P$$C% M5#,24X4 *,$DYVF68KO0#.L9I\9(ECM[ M:S83*U":9& MRVT9(R.D4V_$JS!V$VX(< ;F5V=.NCCW*V]ZG M6?-R]U[G6Z[QZ6FU+'<^_T87.SF+(814)A(01HA^ERD!)!4"%%+0(N,,I0K- M?L@U6]D79SR>PN6!;4\TY'-K)(PV1L2[Z/^,_Q''<6*:(D8_C,#1LUQ77=C_ M-4KB^$[_MF[*'M'=]OMJ/?\O*?XURLA=DF;[WRQ%E.$[7!3-O\PWFYW>#9E? MK';;S5;_4'KLM]'_O5O*__%_)'G\KS"^B\SC65[U3O*2KNM?)>97";F+]&#/ MTC@MY<*RBO;5U;;;?=ZR@H-33KET7ZNE*Z6[BSZ42(?Y_+'^6M7_2O9U FD%"4 M@C1#"4 H8X#%, 9%EL<\4Z)(A7UUA*&EG9J-LQ?;L-_>L?RH!8_H0?)HK2]Q MV"D-ON86F]8IK>2(7KBVLFU7G#GBO.BM,RK?18?GH'W 8-2.6GI'7R;V'#CL MMJ?T/(RT4Y_(<^&VU1]KG3K=!(,+,9Z+82P\C]P3HTWJ4]!@O1([OOU*%WNG M74QHQFENG!H< I2HW!R,9?K!4% (E3.5616JOS+^U#[ZM811*:)7BO\YA!9? MY-N &?@;.@0F+L4/;L)FK!((;A@Y5D*XBD!W/83SVT:LBG!5YN/:"-FRSJ)^4L#J1:W:C141B+M)0X)H$L#[H! CM60^T9 '9MU6P+4W;R[ M;Y 1FWE;ZG/7[;B!F15V4^SH:\?IGG.2'=?+]?"O.?]_^YF__0%NMRNRF/K7E.*2(" M @:I "C'$%#&)* I25F:92Q&B5.-SZM338W)RE018QR6/[2$=8H'L(#8\I@N M"'!#']CY8N9^:M<+1]#SN^NSC7N2UZOUV9E>_QT>=D[56ENNS9#/I1=O*;ZN MU/8ONFZ*HB09(UD<%P#%2-L]*<* )E3_50E%DYQ0!>WMGO[Y)L<>M<317N3R MO6B$]K$#+$"W,)7"0CE\ , KH.A@785%XPZ+3.+8<:SU.QU M.K+<'&[S[&%.33O@,H3C83WG\D&NRQ.768%PC).T--R@WH::6F XSX#*4I%F M,52Y73V+OHFFQL,/>J#OIJ[>LY'29%6+0\278WG#J^#:67 A(!N8;XV(IH!J M'7%5BFF.@*NSXH#-PGN@"-H1_-IJ'FD)??B$389^?IT(Z<@]^I]GGCT]VY3=OF<)+I@4) :2Y]P4/"" DC@'),M)C'.5Q%GF%E%^:9KI'39^ MY=^EV%5?R[W$9;C5:NE>GOTBM'94<2M< W/$7KR[R-1?^:,1,6@-T>L(A*T< M>F&>D>N%7M?TO$IHQ[4>+I\W=&&.R+]^EW*[>2>W=+[8[!]5H4T'_>['0!$A MJT@J(E-3,!2F@L4$IBBV=O9TS30UPZ&6-:J$C6II;1YS1X0M/#NA]/MO(Q4 MF/&,XIQ38V&5Q1(H!!A+#KB@)",,D[P0LZ5\-$:@K<%E/;O5NT"J=Z$MPY"^ MS$K4.K++U>RRQ]W6&@N+Y5A&6B5M]%,C]\_1?!GML?U+RQXUPM]5 4HA[3=G MS,*:=?;3CVSM.>-R;@2Z#^'I>.X+_7]S)?2__./?Y,;$8I9169L'J1]K_4%[ ME+,$YCR)50+23&* BIP"QA@!D"&5)(I@))S*Z0TBY=1LTE+6Z$J[D=75Y#[*LEO[RUUZLH9WMM^=I54M=JUI%D6[NHH.V 3WV0RY&4'?_((*. M>U8P)-9G!PV#3N9;MV*A_[HR ?H_9$N4=_,-7ZPVN[7\)O_>OM&8_3F+%14T M11PD(M'V,)4,$$1B@!!&24Z00IF5Z\%C[JD1_Y'H;19Q-(M=X+>C\H% '9B@ MK^(9'>2._C"21Z7H(Y<)]B*#%\(UGMF3-0VWJ MO<\*R@QBQB&@TA3;RA,%&.<J.'E00*,9GB5,0I3QQK%]K, M.SUK:)]D4_8,D@?)@V0DG:".I(0YSG+ ,L0 @MHJQ8QD .:D('E<9%3@ /E? M_IB/F@HV!N*6A!T:QZ'I^UIFV)VID=E(7=5X'#Q+[#)*(R2,G4P\A=RQRUA8 MII%=N=D_OG"S-5OQSW\MM5':G+>;[\PLB1&,4Y0"R1*],2YDIMF?"<"E"4"4 MF*O"J@>QS613HY]/.Y,98B(-F_*S7*_!NMRDZ7>J)*3M2_0DM]]7YM\:S=QC M$*_";WOZ'0;4P8^[&S&C4LZ[J):TL2O#QB;V(1(Z1O'J?*/'*O9I?BEFL?<> M/W+YW-3[*B5 M>:9&*:5TK4YBCI;,-33M:"( 1@,SQ%["J"[0LQS89B[F=/WRN4S"W+[\5GXU*^:1LI5V]>;E_.+FLF^4+>2L$"QG M(L]!GL1<1 *IP"FBU A^%QWE M'Y:Q#Y=N:ZZ/_BA5=:RWLP"SY*FOJ'KDR /A! U9"RC=NG,H MR)Z%IPPQA^>W0SZ6A8CELRD6MWS<'Q2F(LXS(5,0YP@#)"@"E"8<$)D7"2\4 MIREQ^@YT%=4[BZ(76DE\# #8T5_I@Y,$("DI)H[VH/K5ZK@/;S0OAX!J:%89'RJ571@C$QFIRX8>< M8U.*/D"ZNTEEBO_D/RIGAIFB8D+A(%8@++B-T" M8$D2@)50!8Z1RHB3N70T^M2XL!8N^N/=RG2"=[2+CH&S,X:\X1B8ZZR1<+9Z M+FH6+0N6BWG-N6E-NOFB+9?ZC='MHNT7;,1*:6 P$ M$$DRP&*N@,!,)(ISH=_E6Y-0SZ>U>IA'S3YM9(S6>R'OHF5']#M&P>:87YGWE!-/K2/1GEG;7-F M@DB)I"H (3D&"+-,_R0X4(226!L5&38=FU9;NK#TM)Q-X60_["<:[@WY9N:H M D5K.?]G?=[OZ&$Y![-(L6(91T!;8 P@A:@F<9P R95DB$"&$SQ[ENOY2GS= MTO5V#$A/IQL.V#?R<;Y<&D<,JXZ9;\83IT+H1Y*#A%.H[=HT!XS3#"0T)TK& MVKIEJL;S_=+RLQ@"S6:RX;!\7S4[#@6DI=/O)FB&WM@?O;#U&L]W6 M<&.T79FZ>5U1.N[>OZN(!/7[G<\RKL?OJI9GOK[K5WHF=-'M;BT_J_IL>K7< MS!3%L529YL\8ZC\D(8 )4@!.($^85"SEV#%AZVP2E^=ZG!#D=W+#U_/G,EM] MI:(WN\U\*3>.0207T+1[\V]#:. WOQ+.H'(0;Z DT>LX!,V*.I]EW*RGJUJ> M935=O]+3;U6ENV_J T:3[& ^<&]7F^UFAJ'*4D1RD,=2[X$E%@#C@@.FUW@-L9?2\T".X!Z-V M(I\@@A%7VKQ*"VIR$C3HM"@ 5G&1I)FB*';,! F%_4CIL+5X&O2-:PY")[!4 MDI3@ H-<2@UL4>2 )#P#C B]OTHS A5T<^O<#.S(Q<1>\[&V=.\&>E2']O;6 M8AXB?_9/[=O.I];=^VL!2%!G<-=\X_J&+30_;/ M;WJ M&@*>YK+(<4R2S"II[GSHJ=&N%@X8Z;PZ#1YA9D&DWD@,;8L% \&ELZ(O&&,U M4;0&Q;%;XB6]NQLC'MTQ8@_$2Y(>MSN\>(4'_?RF9>*[!2U+53^QQ5QN/BQY M_5!!P40,8P6*G!0 055ZK1C(\D10DB)88*L2);TS38V<]K)&!V'O(BWN/WS> MU$Z,+=@K%'(#D]F(H#FP72CP1B*_ZR &8D$;/#I)L7. \3C21H\CRK2ZP<\_ MU^10FZI^2W$A[B)#%".:(Q#G!0(H35* \P*"#,D,QC3%B0G,MH^NZIO0B4]' MB[5:'*0NMS*WQU[U F_GN L)Y\ D^_$$P_?=J#G[[&RA".FXZYUS5.^=+0*G M+CSK^V[L$?F%_O4;U4;0G"XV,UQ(I!(6@URH5.\739$5KC>-12(A1%0E.7,J MLG)QEJE99UJVZ*D1SK,=Y!&*=BQQ,S8#4T.K(:1!:"_B7?3K>M410N3?%O(2 M$(/TA3R:Z'4:0U[2]6IGR(L7>\9JU^U0-Y_5T2'!9V6."=Z\F#]_H5S/>F@= M(/)8,>/-)YA(@$3! ,TR#I2 @O D89ERZC?M(F8$9:R^]P?KX7%+_ M@Y']SI0U*<\H*RWJ(B;1(%%_-X 9- S80XQQXX3]<3H+)+YA*#\^??_TO%B] M2%EW\VY9;6]-;-)R.XM9"EDJ""!$Z^B6MYPA&4-34AZ MZI]T5#*RQN"4>NQO]".:7^A\71;O??.R__%_S>7:G"6^?#0GB?=_SS>S'*8Q MC0L,N,P@0!A!0/.<@!1BG$JF=W3"*6??;MJIF6=&U*I$=;07MO1O?+K_M^@/ M([%C-)[<=,7^1&;WBX M)KW22_7[WVVDL<93:1F()(6!4 QQGH;6<1 Y!"G"I)$H=R%D#IG MFQH/:<$VCJ=5=JC:$4TPK ;FEX.<=0AZ*6GTDX'OYX#G]DZXA&26[@E')10K MW4]YQ.ZF$ 6_37S[#'(FXSQ7P!0IT4:,2@&E1&A4-970.&.<6U5CNS[%U(CB M4,=Z49;9, E#MU3Z+F&T(XG;P!F8&<[J>[_M N;&TMYMW8>KZEW.\HH%O=M: M=M?R/KK2*UR\#&K\(OGJ43.&WO+OJY4U_8F?C"=T1G,9I_J5!_K%3P'*$ 48 MQP@("F.<(9E(896AZ33KU"C@4!SON>X=3DLYG<*;+0'O9H;!8!S'AX1XL?#P&S:PRY&UP]@>26@XT93>ZFWTE(N>/-?H;: M_7([%_/%SK1C_BKY;EUZM][_S1<[(<4O6B'3F'ZWK3WN[^G:5.TQS>;+QC#U M.Q(3G!:9$( 7# -4Q,8=KAC(J"@2(C-,[$+2@THUM6]!74RJ:B(E:UTB:F)T MMG/0J.O9@#3,.MH9EZ.OSL"?F+8^T4&AJ-$H,N]UU-+)G#PV6D5:K:IQU5TP M=AP$Z)#&;QC!1K67@V)Y:F*''=S#*K]_7,NR(H+)"2V]U@H2QJ#$@$E3YY>; ML\H\SH#$,4N@I+DJK-KC7!Y^:MRZ%[#.4W8X#;B"GX4U?1,J0W-:<$ <[."; M@!G)X'4#R,VPO:I_IP5[?M=XINI5B8]LTNM7><:M?5^MM]_D^NG@WLIA+AB) M,:!9PDU%-P88CB'($X@53V$*(70*2SN;8FK454H(]$Q/WF[""SC:67*WH3,P MA;6 &<1/>%WYH)%:Y[.,&XAU5K7[(W^;+^=/NZ9M>HXV)G=A<.6 MBE39.!$UJD1/E2[1ME'&I6'*R ^'A3$WX24?G&>U6OJU,7+SH&M MZ_;^0(/ 7;1_8!Z:!Z:"H3[Y+8&(:B2B/11W40W&A)\;SLNK ^;!>/0LP(0#G2?Q1< 8)P!G@,>8(02FB2NE44M9O8BII& MK2UJY(XTBXCYYGFUH0M#+,^U[&70HVQD=]MY62Z$W6XL(+CC6 XEJC\9D7\V MX+XKP9TW'O)&_*B4/WK?B[#S#LX-L)"[.LN91]WIN:%QNOMSO-LSL:;,K*F:E,*:=I 60*,X!,"62"317_/"F$@''*H54)F( K21')M V0IP+%( 8$D2:#(%,S8#=&B_1),C24. M$NO]B1&Y55G -$DHA;XIWM%B52S\ID-C/3#?7(Q[;&%?J=!JA1E]& G[F^). MPZ[!:\:@WK86MP:DVN/H&)QJ,?!K!JK:Z]T3M.HPD-NG1LCY[+T>>_MR+X1^ M"C?U?S[.ES*9<58PS"G5=J306TH&$6 B+D NDAREN62"6B4H=LXRM4]&)6A4 MBWC7_! 98://2TO&Z@:V^XL0#*ZA=Y:^2%GSB142!X-STUB<&\G_\;CZ\2_Z M?@U'0LP/P/S0LC&[QQZ%-JS4:ZC![F+/)G%M-]7]4NP]59_D=@8SE$J>0*!X MD@*44@(8S#$H,JX8,TUA)7)L5=8QG+'FZ/'NF=*)O>Q;%)]$J% ME #Q3 J,0(BXXS'&G[""Y?"I:$P'J-HZ4@( MS8>UKB>!$R:0E )(@6/]^2,J1V338UVFC+:EI)/M?2 M>A;NZ,39CD9"H3C6_T/ZM_QX_%GDW MW_#%:E.V;VZ'O]1ES\KVE&?1+YM#'5(&BX)RG((D9@E 0FFB43(#.54IEH11 MGCJ5]KA1GJEQ41D-="$LSHV";ETD.Y8:$?J!B>QBD&$K#G&8KO"!\ M)>[>* M-"HS!L+OE#Q##>O'K]K.^[#DJR=I FQF>2X+D:8(\"3/]'XYD8 H+@"!19)A MJ!B1PF6_?#3ZU#;(6KAHT559W@*PE":"*8U5JDQU .-V3C^&U"@*9R2 JD04O26.AO MR0 J!-8F90Q!6E )10(9BJ6;F60_^?1LJ+??S4YO8UQ8JWV]R>H$H72-MQK- M_=.U/Y3UDMC9%,/ /##?-$)'/S5B_VRP/M3VK$6/_FB$#[C+=D&EV7Y_D28450_Z6?VB]^]T\;\E7<^R M.!=BFCC=M;D\_81/4EUM13F;$AS#:/+/S\K)==2?-'F MZ,B.RO3%HE[#\3#"^#>K6]8&,P M:"T&UF3P6VWT$,T=O'"*2F-. X_+6#Y8')"3U\5^/%0M5VW=X.]J];"0MM5I MM5+JJ_E"M25J5+$RPU+ C.L$8J$4I%P12$I"\YQ+DF;8A7S.#S4UQFDL;'.Q MS.<\Z_XBA$7.3#H68?^W3A\,HHW"&N[=KHO"X MXL(FY?]8+/]9)[(($S#=,<6I4HS E&<"X@132"0V_T0I$K),<)%Z]2,^/LS4 M6,$:!V=S^-R8%]BH?!=)UTVG2_$9@0/:5N76Q#873=2;VT,U*S^*Q2#=RG=' M>IMVY4>]/=FO_/BG Q/.S.IG+C^H6BYFG48I2D4+1 0L2I1#3-/$,H"$.<&, MI6FFJ$J\LLB.##*UY[^Q$:R-#%R1'(73C08N!6E@$O#&QS]AJP> J%E8Q\89 M-[6JQ].#?*F^SP9V&JG/7M9]G3,E:$8S!1DVX3\F20$)0RE$N2RE-'& 5M0G M"6KG[EY/^0A)4$WG#]$8%U3&L@N>VZ,=#,G SW1CUP"MKH\Z'+7MQ[S M;](V[,MLKCZOU%-U1Y5@A2T>QK2@$-N_,9PGL"AHJJA@N2J\M/]B&38U]HG4 MHPK\:3T$M8N>I!5MRAVCES>8R*$#GS'G<.QF8P> 3ZC?V-:V_TXMQPX0C=QU M[/#^ 6)O?SR;<>:K]EB[W7K@.,$BX0@62"N(LQ1#IG,&*2W*DNDLR3(G4<>3 M(TR-G?]XAMH:N2DT\]O'.8UD/U=&P6=@TAL,&@]]M$LA&DG_;!^J2*IF?=[W MJI8=O7 \5;(^NW=4QWH_&%G 0"(I@@C.;1J,% M*U44RI9[M*#K=M* M/@Y> ]/Q+E!MYX'C);2#[&2>!REJ4\K3HXW;G/*LUP=-*L]?$5J!6R=%FAN9 MU?0'MF+KP[9"2Z9XGL-"Y;8C+9.02L6@X8Z"(H0($TXIB^<&FEILUQ:4=HP% MUMJSQW9^Z/932$S,AC[Q"(0KH/JV'XN+JV]/W'[DZMM^)P^K;\]\/F 9^/ZE M6BV>U/+=.C\I2XL,$PTS5FJ(&2:0$99#(U?,][RZ(2U.^N@ M4Y\)C58ZC2;KW?SJYF55K=A(%@1A\W^5 M.YVJN@TW-?)J7\7=QK%7S=%9!3IF^T8PO8B[QC&QK G=17G@UDS.V?&U:0-:#?-FW?_M!:;6T]=7+9AN][BQA M'YQU,OGS8NDO)>PZ$6X$- "X0R_I6HO!+V,R6-N\(]VQM3NJWKD/4)&ESYV& M'EL%W0>/(X+H7I>'[PN+Q=(\9_5BNE9W>[]X,4.;4$RJNQ*CC&)#41(I:7.= MJ(F*$($Y5KE0)$]9ZJ1][CC>U,*BS;9GQ^:.^&!K.;"F^^\8]^'NOG$<"QT7&2^ -FZ V=8/WU69VV2X+L^B0SSX.JV#KC496)M!Q^AA3L#]@(J[;G,; M>N0%G!<>ARLYO\O#Q3P:H9;J>BYO5@]JN8V\FG+$.[. 0YE,B5V_Y68Y1PK( M,\IAD6I)>&I 3<:O,=VN^6NC_ M7-@C*W^,A?,*O6\G EU9U;(9EFL M%4P$-8R$10Z9?1,HPA.D">4);\=EZ QIWP-H?4#LTVLQX)(V,-D,CI9@,/%-^ M62E1P.W-8;ELA/$R7J(@L9,?$^>.@=LOXD')%WO>]?'I^7'QJM1WM?QI[KMM M"==M&G?]6']/ZJ+:MJ[A7TH:!V:+II/BNFM:OVX:\Z/31%QS_SH-N_.W+Q\!/NN"DTA4D<>ANI MO__F%?C8S)RLUQ9M>PGKUQ6X?K([J^#/'W7AQ2!].@>?@:C[4X,9.^Z.UM"8 M'^R!#3Y@:"+$)H>K30M.=4:S4MK<NMF='5]5S:+=YG^ZK[LLGH*S7.2L80I(HD$.>*09HG @JX'$UO#G$'*":I M.(PZ*LNXH[!/.QY7^K??,#>7+Z+>^VU#G:KM#L&0U$+97 &N,HB3+(4\45:M M)"]8B10AC+IVWC@YR@39QAI:/Q>MI0%]-TZ#VD\IT: :GD7\4?)JN'$6A4M[ M;9P>8+0V&V=][';8./_AR#'(#W._]DN;)PE+<]M(VM:R8X%L'6M.("USP=*4 M2DZ<6DI[C#E!7CC]WKP"UG!/GO"9@ L#D3!8!^:0+XOY/?PR^ZDD^&%^/K,; M-_5Q8T0F"4!FE!"D,^PT8I!#')R#D".7AI3.+Q[-W^M6TM]RLX])\#A['= 6 ??5.E8OKL'W8)]HT%K/K@='FP?#8#A0!]+ M(R J^)XJ F'H]:L,>-YS1!6",&]W50H"[Q%<$&C/?)N4^F^SZI_OU%P\/+'E M/]M(22M&"ZNVDB.F(58E@CPM$LA866K,459H)^TEUP&G]B[8L1=8@\'&XL M]2SFKIOH\9 E_5:BU&1G&B,++P)CRQ3:DHY(G$,$]Y*7.>HSSQRI@^.^($^:8IC*V/.SV) MY2R\CLP2$[2AJ65K*]C!S@0W:C5 BRMG<**RR]E!QZ475PP.^,7YPB#1\$J9 M*QZN;=N\G^IQ42^GK^^7J@Z@?JCET[O%_*7Z^X(]_J[6(O8)8K8P+GE]SITH3E3[,YFXO9_'ZKI6[3V'Z9'ZI/B^7[I9*SU9=%5:FJSJ:\8P+G MA*$,)D39&ASSVJ%2:<@D%JE$PJRJ_52\@DV9VIMG8W^G-\ 5V+@ M)5AJ)T MUHLV/=57\BM\YMS"YW'F8^ W5>RIN" ].!3%8?)_O:UYHP3?4-1.9_ &WS'V M0?HFU5^4&9:E*&&>J-36=DA(TH) C;%(5()$3KW$.,X/.37&[!9H/+?6UV?I M:GN6/N\)5D*1=V/"N'@.S'AG,OD&K(1PAVF7I[:PIOKPLFTB+46>Z1P1F!%40)P+$^&E20*U M3 O.1$ETF?CPDN?X4R.IC?F@L=^/C7S!=Z.F 2$=F*?VT;P"C?&@M7Y=ZE6! M#U:M\M.L$F;%^G_-"@G\SE96Z^1U$/6@0$1C4IJO":/R6R ^^V07>ILH71@_ MO#1'0ZN%&>I:&_+X??:HJM5BKJ[%P\Q\WHY_)]-4%84J(6;$_"$9@JRD JJ4 M4(%%63#JQ'\763$U%EQ;;4OEGYF)TJSAX&EM.6!;T\%OLSF0[+7ZVT6=!QUG MRVG?=?@Y&'SK]4@WPNZ<&#] [0C8> (ZKHPQ$Q=UA8P_(V_9)S+&S%S:/=(/ M4<]^DHXW?\L.DW[^G^DYZ7FS"[I0?JZJ%R7->.8EV90.-VT:OJI?]:^JNSQE M'&%10,4+^Y*B.:0E3B ILXP(1C1SZR/E-^S47DC6JGHOSXIV-E6O5=-FI%4X MGZT_8&7;*O!;5?OC^$[RG!+'K=7H0 _\UFG*B!N+06,R:&Q>-W.Q>0J_FD]$ MU''S RIZ8\OS(X_?Y-(9C:,-+]VOOJ#/W75["EMBK;DN,]?,WZ?N^N>X_!3GPD+J>IM!JO^]?GI>;EHHK1JG3O%4IT)I&!F MA21Q;E;\A"4"2L*0(HB+,G7B*8>QID9;&U/!K&-KH(Y*'\9N@5$DY 8FN"UH MG[U \PY_'."(&?/T#3=JH./@]WYTXW))&'-\4'SU>5ZMEO4+8BTG^(VM5-V[ M0;9Z@^Q>W5&&2A/8,,AR3B$6G$"&B\*LRA OF29YYB9+ZS_TU'BEL6^C/0O, MHME36<\#=C=N&0;,@:G&&@VV5E]M1$N!-;QMZR+!UO9XY../5TPN\AA]5&KR M1V6?J0+N<%&92LV,-_QQ=E\'M]7G1L1;WB597FC,2YBGVK!5D=>Y>R6414Z0 MS+A,_'K G!EO:A35F@L>K;U@L378L%9C<5#9RDFXW5@J(HAC1$%@:R/X? ZV MT"*5!SJA!C M+#%L@@C$K%209[;D3>*4Z%S+U"]9Y/@P4R.1VDK0F EJ.P/73B=0=2.-R[$: MF"M"8/)FBWX48I+$B9%&Y89^;_6Z+92Q?TL[5IQ9 MF+#FQ^S)?.1&?S<_K303]G?-#G1ZATM$29+9=AZ9AI@J#FF!*4PQ2AC':4F) MUT%6+,.FQC9KD\&JMKF6,^]8?06>:[O]F"?:++IQU5O,S<#L]FW=4GGC%.AX MU0F1&JGR>@9_;&;P^\X,WO;/H#GE\7_>6[6[?&Q=GNE1<)OX+?4F38: P3D#KA$ M3]DX,=SX>1K]?A]-SCAS21B/?UVL5+4M=?O[S+T9:KCO_P\[!FBK_\S?6'_/27[M-"[V?#^.!:B)>GET=[ MTO!!/2^5>1;JO%;U_*CJWC5S>?VT6*YF_VIXZ%11VIW,<(XD-:MT9>,0*35D M29E#EHHD045.2%'>S=6]'>F'>RP8RSZG9XLVS]:!E4/NFE?5OP.V=1+(CI=U MM2;KN.='3]'FUHW21IVJ<6BPXQ+H^G0%-E[5<]3UZPKLU=Q>[1;=QB/)V(#' M)-9HMHU*QK$1W2?PZ/&$)[R0=\WV[O<56Z[>!/J6@_?-& [^=^I^-J\W5-^QQSH _=]L M_L*6KR"] I:(!IN/3)=$"1/8*%;D$!>IA$3G)KKA)2U2A-.,%^U\?)R_S8.P M,QMK(P8\?)C+G8EXF2N0)0-/@V,@,@BP;[+B.KG4&D #U!^VJ &#^^CCA@3> MJ!R\]/WOX-^@ZYMBCQ\KFS%F8XA3848EEK/GIA'I.K:X_FM6F<5;+G*:2Y@6 MC$*L<0F)%!R2E-%$9EF!-7=MXG61)5/;W_]J?F=/Y=8V@C^ME1X]OBZ;EWZ^ M&Q7M@>G/%VBO-F%10+JTE=AE1HS6;BP*5MV69'%N.$#E=/W+]K#HXU]J*6:5 MDG<9*TM1F&6.+&0&<4IR0X4EATA9@LP)+:0,.$_S,F)ZQVQKT^H ML@U0/WU\8E I2YF5"*9)8D)P7&:0,%) @0IL5J@D9RA>>?O%TS).545W(M3: MS/&FQ.,\=#"@1SPF[1[([9R5\E=P]#CU%UO*J_5YM,WV:?RS*>71,WO"41ZM M3OZX%=.IF>]%R:M^OO].H>F5]6OSEIE7XP_SW:N:])[*4R+NW&TF].RUIH+: M5M U=A"I-U=DXN:\G1ESY%PV-P0.<]0[/_M]O=/]FA+.;\I<^>9 M37FSOS"!Y>X/.I]L'LO/<[&T]0\?5/-?\^_'%[N!]?$O\6!YW!9]_2JU&_+VZ\.]UOP< L_KZ>9?LGZ'AD MLZ,W4US_TD[[_L]V+FA )\W7Z8U#G^S=; M%&"-15T1"QHT8I:@O<4LQJUH M&]6#D0ODWF)V#NOMWL2*L'=K<^R@ZN+ ;[/[A]6-_J-2=8?M.T2IEM2\" 4W M?V"I,\@RI6&:9P72A5:9D#XK[IZQIK:TKLV#"PU?#-$TJ8$ MMF"JJD1K@(T MZ/O0=GN-1,)PE,,LU6@Y&ZI?HVE,;;JW7[5"L=T$FVN71"=OQG8 +":]]@TW M*A?F)@]SE:O9MX7+S4QKH_ WBV6R\4O0W'O MS.@=-0^2R2)+M(*&@P3$2.60$)1!A0J4J%(S43H5EUQNRM0X:FVX"9;7E@.^ M-AW8K2A; 'A.""3V?/73V+BS,##+63_LAGA[++]VY0IL9F;K#=BX ZP_+A(M ML6?&0SIOM!D:26AOX)GRT^:+ FZODM]E(XRG^Q<%B1V5P#AW#-047%25[?]J M[JOFXO6K;4NAVN;G:9(5"4D(1 2G$"<(0_--Q3!1:9E2A&6"O$HD>\::VFNJ M;J36L?4*--8&]IGO0]DMA(Z$W= OEV#8_'4%SP,255>P9[AQ=07/^WV@*^AP M2:@BJ8FSU6X?E"\SQFL*6[>XJ=MU;?N5E9SF0B,-"YNF@ 469H&.&-16*$.E MF4(8^>4J!%@QO62%;2^A1LSKJ;7;5[[4?T(<"6A8D(ZR]T['I"FQ< MN.JT9!JPP=P%,,:52?4W8V3YU&"<#F55PV\51HOKVO[.B7I;C)_F99*+@L&4 MEPG$>8XA9R;"*IA$G NNE-9^Y'=RK.E17 RE@]/0NM%8%+A&3-\YHG*P3LX9 M0.W@+#HQ.>CT8*,RS5F?]_GD_ 5AK&'6=;/J1K!I\E:'\T-BG*\^KP[CK\.SW9O6@EF;0Y8N2ZVAKIJH[48@TEYI 8J@*8L41 M9 (KF&K&$"XI2CGSHR_GL:?'8+6A5DG!6@H>MZ;ZL90[^FY$-0BB W/5D0P; MFZ[5(-Q:#KXX(.Q-5MYHQ>0K]\%'I2QO3/99R_\&,3ICU%SY_=F,*&_F_\F6 M,[LJM&DKZ9U9F"58:P2%$%8O4!H&HR;L8@7"6<)2F0NG:D/?@:>V,][$!%5M M*C#AUL_6V+H]!OBM/;SU+.-PG@4W_AH"VX'IZZ!)1H/S]PW.:\/K%,&A.F2< MAVJX_A@]8[]A=XSSB/3WQG"X/K!*T&X2V*- V:WPZ6P3O'O=?J3=1:AK>SZQ MV?(_V>.+S9%Y>6HV8[[-JG]^6BK5[>1Q)PNLUZ!V&W3\MEF% MYCMA7=_M@A2QI&ZL>8I:@3>XT>,6[(TU!P?U?:,-'/;2^KLQ9*7J)E$O52T6 M03.9JZ*04)=(0)RQ'#):,$@08C3A7&>L]'G)'(PPM9=":R!H+/22YCB-HAN% M7X3-P)3K!XLW*YYT/2:+'0XR*NN<]'&?)4Y_T%_"Y^;7W#PT#[/G^GO(AZF(S>Y-1Q.E.>I+5V3F^ <"EX/L4=WH^DC2JA+=Z$Y)!O_N5%[SCV^^W3'*.E)0P2Q(. M,<*&2%+SA\H*CK0D)1'(^RT_3<;HO.6\V.(8;![O^LD]_QXXA+WOG1]ROS?^ MF$]QCS]'W_I1,K"MRK9]XM>/)I$T)53 7'$%,4'*RH 4,,F2C""=X QY=3#= MO?W4GLZZ.U4MPACV+M\#S^V]'0[)P,^H!QK>[^?C3L=\%^^-,.I[][AW^^_8 M$Y^ZJ._H)V.++WK]4J\636FY3RZCBM$ I@TH0$[633$&&M(8Y M5UAG&#%&0_J*GAUX:L]Z:[>M>5SHNSY T MD06%A"49Q)RDD)B_0J1)QI@4K'03-CAQ_ZF1SN:,[MG8YYN3MXN<&ZM<@,? MY+&!PIIF94'7VE7OV?-LQ1YG_U)RQ;G>(D=/G MCOIWF"1W_&,!>B>;CKV;M^OOLT=SZ\5$:)$ M420)E 5/(=8<0:Y2#5G&"\XE)P0K9ZF34"NFQAN-E7;#3!H[ZS88SXVE'L(9 MP5/23S6C 3U2--/QX0ILO ";AN;;N?BPGHO;\>;"0[]DC#D92;IDP+GQDRVY M%-->Q9+@FX\G5G*I_SLZ)1??;(!^"'56^%VJ03H=-) ['G)%!7+H0ZX:N,9:T)C; MZK=>-:E^U5533S*2 /X./J,)WC>C3D?@?@<%+T'[W2L#]]>7"Z&4K.Q"VXYC MM08_6_)CC[0)H@ HDL4%D495$FPFOK MW77DJ5'1VO!FGVG6FFZ922R>GA;SEJ"LEO9B/E?U&66S"_6\G/VT523/C^;. M[A&:_UPY[O0/,0-#'P+L@+^V&K1F@\9NL#8\X@&!+U91SPZ&&K=[9[^_!ZTZSWP\=-5EWL3V'?S^D555FUO4)/GRE""4IY * M;0(=GN20Y";N42S5.$$R81+[+;9.C#2UP*:VKY,%%Y"Z?QI5U_54!*P&I@0_ MF *63&<@B+M2.C78R ND,SX?KHO.71"L\[%X4C_87Q__LN5%ZIV:*SU;W3&L M.*?2+'DRI"#6.8.4$0T31AE%B+*L\%?U.#;2]"(%$Z3]G%5V#6.W+V>UV6#% M_@H0\3@*K>O!X<5P#7Z 6"-C3 2MC>"WULK3NU,A8AQ].$26WC@ZU-A"&WW^ M'I'5Z/UXP,GAW[__G[6XH5:)2$Q,D.O")A^F*20J*V&J"E1BFN>H<#\*W-QV M:E& ,A9/!PJ*A-'0VYU;*]OE1FUG;+P\J"L2 M;B.163!^?@3G $HOY?5=/QX).GBQ0XLNGW^#YK)WB,DRS1F!.,.&37G!(<W"\T/4/GOL[I@\PNTS+A)>8P8*:-0M&TBK4F 5,FB1,E"G/BK)H9_?C7$YR M;M=V36EFE?G5F\VIS(G4I#23R/,"8BP4I)(HJ$5F'N1298E(1^ON[+4@&Z%9 M\P\[AD=?YDG,J-NNSFCS-/26<)QVRA-IB3S$9M)E!OWW:5A\:F,JSDW#HJFO MZE=''7NYF)N_-ODGUST.VR^;3 MC9E'FZ6!F;F#NHFHY[).&OWC6=HT+,O&%\Z/-S%'P34F,5]FT*C$' 6[?6*. M,/372KW6@0#Y$M\)Z.?-@6$=F"6# M$/420@G$YE*A%-]A1Q-2"<2C*[02>HO ',J#S@3O7Y9+6P*6EMIXSW)(E55P MP$Q"0A6""2=<)Q))S:EG%N6IL:9W>A&IP\EI=$LF"97( (O*'&*:*,B3O(!Y MDF>E*"@C-/?9&HF"[6C;'K%0= MZHV S?$"[W^KE"K1F1DQ)/8=$U*34DX.- MFY9ZSN>#Q-2S%P0<$Z\5+CZU1W.\X*PH4@Y92I5Y_@6"-*&E"?YL3Q:6IX[9 MJ,=N/K7 ;J/2\BGD@',?.8=#X OP&'I',2H4'N>[%T RTIGN%II(I[-RZ-'-RZ(Q QP>L<;-<9Q\7P_S'&ZQG\#[-KPTTRP=0H2 MED*;I:.&F%%L=0!-B*,3#8E*L:A;9;BI=Q_>>FJLL;;.\\5^!+/S6U+A2 R] MC'$&P6N;Z;B_E^XB[=UUM$VBX]YT]X!.?"+L/?_#7':C.]UTZL*M$I-<4*2A M*K/$UOV;!4B)2V@>R*(D4J9$>-7]'QUE:L_H^\6CL7EA)=Y^JIVV6/;0J/OO M9@-H]<#F8/>BD/*YXS/@]IJ_&->A5S2#0^H=!_1"%C, .#[0J&_^7E_W7_G] M'X[:T-'*^%@Q?_&@;N9JO5[50M!$*TC*U$0$J9"0Y"6&68FH66XD6:9(A-:, MQ\:>&A.U]@%CH&? $ *\&]4,!.? !'2TF^'V*WX%O*".U;BP#[016A >'7X* MS03[<'%L"]A[BX"MV:^+G\PL]-?1=Y:R-"GS$J)248A+4D"2%(:D1,85M\)I"G20%+E(@$ M2ZW+//4[@>_>?GJ'[EWK_&*A'=A4QG1BTQ5X+LW*5N7:'JTSF)OH4V6RY%CR MN[FZ9RLE?[@'F][8T0:[@Y'& ;!>?K$GNX7]KTL1=0L?0[]< [.[T[?*.^P[ MYFS,N&[G_J,&;L<\VX_,CGXF5*ER]J1LC^;V#4ISQ3')A &&(5OJ)VTK* 13 M@6E6"LEEROWT*'?N/[40K#:O[J4>N SC[H=5]1Q M=XB1I1N/^G+O]L@2K3F7FUR.%]C(NU&MM'P&WPK_UAOK?@^^'C?A<+@J5>=FT5GN_J%;5C?YC_KQ<_#3#+1?/ M:FDCH*81FY)6(_RZLTOQ[K7]S.O-TOSMOY1H#LN9SJE,)8(DH=JPD-"0IIF" MI>WCA5@JD$Z]8IKX-DZ-NUK3@C(6AIA"QV#I;2=F\-6MTYP$"$,,AEI"WMJ_*1O*-KVUUGJ&-YL"#BLD;25Y?LR>S$=N]'?STTHW07 CJ))277"::*A8 M;B).+C+(,68FXDS*)$-$E"RD@_V%9DTMR-STQ-SX!;KBG%O/KL#:-] X5[=: MZ+@7)IH3:;)=5]YC3^'@2_319B]@21\3[+AK_RB6C;Q)$!/-P]V$J'>/VG#U M/]GC2R-D>_-FV[Y.K;4#5ZV:=>L#V#@Q>.O6 M\_B-T,FUQX@I-'8]CY%CGU>'&P6J^=2YT>;:>L.-Z%3Q))&0()Y!3&1BZ,UP M'":J8*G6>9IF/A'LSMVG%HC6Q@%K7="&YRYR;E04C,? -.,.A;^ S#&7HXK& M[ PPKE#,,=\.Q&&.?BB@ZN :)2FY_?X'F\O;=S>W9@+;!"[&!,.ZU%"R/(68 M%@ED(LL@Q2I-9<+2G.7.]0>G1IG:TVO-!,;..FO56 JLJ2'Y^"=A[7^DHX$U M\*,]/$X>%0PQ\!JIEB$0-[_"AG-X])8XG+QXO&*'<_;OE#V<_7"(2%:W+/B; MJI2Y_,$,\,$L+Q\7SW7%ZOU2U75]3>3$'C_^M5)SV\>P":WN1*ITKDL&229- MT,-I#ID)?2#.$4K,ET.7F=.V72R#IL:T:S.!6MOIU48@VCPY\/'(Z ],W;LU M[VMW:D+J. 0V'EV!S51MG&I7BR-/E8_,V+A3-I8TV0A3YZEM%@_G?CVT".., MJ*$6#Y5=W;6(]PUY+>ZVC;B>R\_SGZI:V>%^&!I_9P#XYUTI,-6($D@*9NN6 M\QQR3C3D,M.(GSNHF-ZU@OE'Y\8[TD?-#I?PTXW6E$ MHO?Q;)?*O:[TE[_[G?TU>WIY6B^F$3'L6^8092J!6 L"62(2J#.%.5-)1K!T M5;_;N?/4J+P?BZ]"(:!*=,9 2_ANZ/>7JI[MWO3T63OCOK25;T[ M_@&_9U"JV5W[KG_]^)>H&[U\-=-V1U.98&1E %"F(4:4F_ (9Q")-!6RS$A> M.&E/G1I@:D_DVD:P-A)8*]V>RY,@]C^>,: 9^"GU1,7Y63WG^O:1K=;/;*7$ M_[Q?_/Q?YE+C?TKM7Z#]2^=I/7G;41[:0"_J_0P0'\N!^6 +X_<&QL96L#4VIOB "RAQM0AZ M1QQ9FL#%^T.E J>K C953HC+;84#W[UN/]+J"M:'OVW*QM_-!U?*K!Z:_9U/ M;+:LTSKN!$.V?T]N#R *FW5A>$F:Z2&:2RJ02B5U[^PQE)53HS-K&/AI+;-I M9VW"&;AOK/?881AL5ATV>:8P5T.'3[769NT Z#JYH_/[[A5T/[?1Y+2NKG?& MJRO0N@L^SSOJ[;\"?IM@0T]-[[[98(./M]4V M-'X[NW.##Q;8*6=]G]\5JUZ6M26?Y\\OJ^K#K!*/"_NS[?XURE7&A%F3E$6B M(NV.(>6W1JD\WM)[XNYLO-#YP. MO_W4UB5;ZX PYET!<:9IE0N$;N04#LS [-/!Q%H6L^+OF,=Q*_=V1ABY N^8 M=X>5=$<_%5@1]_+\_/AJ0JFG67/ ::OLMB])BE1BY52A3)&$6*D2E5;7K\>*[7\.1,*B(T;OH5O_:"[/?SQ MH!QZ1Z!!;FMI6P@,!@DLW&")6JG6/^*X96E.WA_4H+E=%;"%^OOLT;#58JY^ M_%JTY_>V,2@K@!1+C2UC8\5P3991$&>E0@60A.>YFF!4>&WR#DV MS-38[%J8+_]+(]KY0>F9F*T"1>E/P.JZ\+D4K,$70(V!8&WA $KU_2#$71,= M'6GDM5&?MX=KI-Y/Q\LVN7E952NS*#"#W"'-B7G\&4Q3K"!FA=W5Q0*F5$LN M!"&Y7^_",^--C1M.Y9LLMB9'3#CI N]&&A'A')@]3J6<=*P=-N?D""Q#)YUT MAWSSK),C_KNDG1R[+/ XJ>Z\;N[S30DU^VG78]>/CXM?5B[ITV+YWHP[6WU9 M5)6J_K&B;2 &4XHM,LLR%6J8%J*,D\$27'NM>\:8L342*DV M#"Z,94"8.;HWSQ2[-Z^&:@56#PJPM3^>)TTAT^-XX#0PZ$.?.ZW-!UO[K\#& M Z 72]#X *P35Z!VPLQ/Q*.E"Q",>L(48L>X!TT7('5PWG3)O4(J'ML.%^_; MA8- 3.E$%)!C;1=EJ8"$91AFC*9EF69*"Z?UV+&;3XW4UN:!]R&;)_O(.>PF M78#'P'P3%PJ?NL)P2,:J(/2 QK-J\+CO_?6!>]>,6 EXW-K=FK\3G[DP&:@1 M*[Z>RTYCK_8\7M[,-TD7Y@/=E(MWK)I57\SR]?-*/55WB,DLE]B\7Z3*($YL MLU*M4Z@R1DA2%%3G7CM-4:V;&C5N\UZN6IGO^LBNX^$Z_T6"Q;PO[Z7V$_QI M/06UJYX;7'&_!([!XUM-[=!1Y5O,:GA.4TST!\EYBF+@V^1$Q<3V9,Y4U$$" M$S-F]_.9G@DV7UT+L7B96_'[V\7C3!A;MKD"N5G54UO39B+>'.+4=M$L"BM! M+S'.=9J4)//4)W8:V(<@'"AOU ^FJ&D>;B./F^[AA<9!VH??U6$\]E6M M;)K:[7+Q>" MILPI"2ZZ95-;SW=3<)MZ0=Y;5UC9![K[P9W"PK &0O&FW3$4?(O)'#I:''<> M_>/*V)A'#3VC&3=N=!H;TX, -OH 0=17QK9S\7RU8K&U4J?Z].$0E%"N(!( MB SBDMM\(,DA-LOTC)>J3%#I?"1U' *@I: U-B M!ZB/PP#E<9P5!;"1#K;"@/,[XCJ+1^]AU^FKQSOV.NO!S@'8^4\'ALS!Q+QM MHS*7MG> E0MK>L_?8:5)5I0%0%[1\P!&3HV6 MNQU_&@M]H^ A9M(Q('[C^1GX1> S-?Z![8#818UQA[!SW'!W0*0/(M\AQ_*7 M4_W0OOA_F/&KF37EFWI>+%=W&4NXR'4)16XE51/&(<<%AB4K!)6%*(EP4C?N M&V1J3+NV$VP-!8VE[M*J)P'M)\Q8, U,> $(>36[UG'-= MR=6SGPWL(7DBL?-F?B0+M-JK;N>& /)<*)@Q*\IJNTT2@CA4*24YS\L<:R?Q MPQC&3(TZKN?L\;4]QF8[.=.BR9E^K%WS[%MYR6RY!6ACS<' O.29O#ZHCD$, M2*-VW;S$GG&;=$9 [J"G9XQ[1BL%JHKDQX+0#^RUNF75ZH,5>:HW?,S"6& L M4JAR>X*>"P9Y9OZ649+*--#V#%H!8@IGD(BK MIW!JL)$E%<[X?*BJ<.Z".")TMG'Z74+R3.82PP)S8556).0XR2&565E0\ZNT M\(IEC@TR-68X(I5FS?3=J3\&I^-.^X4@#5BNMZ M>DX@;N>S%\4%G^>SE8DMK\W]9Z+>Q&YTN=\W,D.SG^JCUDIT=K":3"J64DYS M+6">EQABC.W&L@D>$J&S7!&!M'1J91K'G*GQ2.O-%6C] 1V'6AU]L'4)-#YU M=V.#\N0NG%*OD&6$B1HGKAENCD)CH NA'2!0"K7H+:*I"]$[$7)=>M=0P2NS M-%RIVT?S#>ZD%:&R%"G/&"PTS2!&>0*YP 7,2*9*S4UD5GKMX!\?9FJFMFZ[U-F>@S=I)6:%15@HH6,&M]F4!249RR)3(55DDF4RNRX.FCTQT 0,L+:-9N);+'9CXWMB]1M]F+#WQ5I,VEA1Y]9N64%0E!?4 MA,%8:PDQSZ4)B)D59>%(%;;/N'*J]#H[TM0XW-;3VYPT\*R63;FF'SV?AM2- M:*, -3!E;B3@;]<8#:2-K!1B>BLS_N4Q?-2.] M7\RKQ>-,-DGY<]E5)+K1FX2:[^8G3;+^-:]62\-8=V8M+5.12)C;HB;,TP+2 M4F4PX466EH98-/.2<(YBU=1(I^O4%=AQJ]9[VA& ,E''-H-IZYM9>;7>>>[? MQ9EG-W8;??8&9L*Q)LZ;.:,"'9-EXQ@V*B-'Q7*?O>/>/&0[]/9Z+1:<\E0H MRC.8IC;R0YQ#BC6!A4))6>9%GF5.^6M[]YT:VUK+0LK2.TBY['0&^3_T!N?E MKOOL9@9!,-(FYC=U;[NG6U:^?K&/T>.,78&OZA?X?XJ93\HK\'WQLGI0-AWX MNIJQFM#?/YBG,-;NY@$\_9N:VX^/N)=Y8./N%N;AKR]0OO_0?L5T(6FN<@IE MF9009[B$7',*F5):\3++"^W4H_78S:=&1AM-\P^7R+U_<.>E"_ 8F)SB0A&@ M?!\ R=C*]P[0A"G??_!@HOUKQE>^_]##2:<^$[8*[N@EOV_:H&^6/"E!I;3Z MQ((6*<3"T!1+!(=)7J@DYSDO1>JG5'QZ,)_OY#CJQ*V!X'%K\[_[+3Q[H'5; M3<:!:V!6ZQAI5H@M:$,L^?Y_76OGTS?-FT/0$PQ039<@I0V;-Q23$#"4T M23@I:.JE9.$Z\M08:F-?G;MA#-Q4-:X6@%FOP'+C5B?7PU/'PGEBW$AK$+B' MWI&JP=P:O9-PL9V&UO"(:A2^6$65GG >?%R="5],#D0EO&]P@09C=1%1@#<8VNL.AKQ_@*BH%('55(#+U7G!5MW4KGM?ESF]A$=%F6.D

    K, N6[H>1SIL[7HQ?F,O7J^: MGENOX,_VO\,TWO*!:<@%[/&!WW0%VXO%N25L_\6A3;=^=3IZ+1=S\]>F(*PZ M_J@@6:8T)Q**LM 0TQ)#EB()E5 %2HN2(4[\-N=]39C>EGVWJ=V._;Z-MSSG MPHVVAL1W8 :S60,GP1V'S4+1B]N0R].&D=MRA2%TV)PK\#YAS/=^,:\/)VRX MMS[:7!]AO&ZKY=^SE7CXX_E:_I?Y3%U4MFAK#=X_V!7#Y_G':C5[,HNZ&UW7 MU#?E!+?+F5!WJ-04(:6A*KE9&@M10D(R#E6F1"E8JO)4^$1P(]@\M?BOL;BR MK0U7#PJHUG"S@MX:#IZMY;4.KEBOKI^/UHQ5;8'8K&F6:*XS2[OG6B#!DZS' M^/JX\?O$OA0#OQ+6WH)?QEVP]O=JT^'[]:JKA5([#5^>P=9M^^78U*8UKMNO MPMIYNP/3<1_4_L=[G8PX63'?0&.8/>I+:\1YV'_/C3ETX/;$.A&ZDQQ]NVC4 M8C:I)$DA*>.205$(!+',$TAR+*#$&"59EB!&O+1=7 :=VLMI8_-N#<+:[.#2 M$:<)<-RTB SKT'L6ER/JOV'A 5'4_0J7<&Q;,I4KCO,B4Q!);I@)X0QR@3(3=><()RGFO)!^ M6Q1N T]O8Z+;2_71& T?K=7-07O=-_5^XYAYR)CQS8^G'"?$C:GB@SPP5VT- M!K7%)@BU&-=&-Q+HP]2@^0$5D[$<1QZ5L_S0V&9]+2] PR@@ %0 &-D>',M M,C R,# V,S!?<')E+GAM;.R]69=;28XF^-Z_(B;[=9!A^U*GJOIX*!39.JT( M:23E5/6\\-@"DUA))[U)>H24OWY@]$6^B\LU7G-EYHETN=RI>V' 9S AN5? M_\?GT]D/O^-R-5W,_^U/_,_L3S_@/"WR=/[QW_[TUP^_@/O3__CW__;?_O7_ M OC/G]Z]_N'G13H_Q?GZAQ=+#&O,/_PQ77_ZX3\RKO[V0UDN3G_XC\7R;]/? M \"_;_[1B\79E^7TXZ?U#X()=O>WRW_12K@4M087N0+%O0''10&;I3),9IV] M_K\__HOCVJ%D"7C1!A0J"=&4"%;$X'W*-D>[>>AL.O_;O]0O,:SP!UK/03]6]P]3&H/P(N0/(_?U[E/_W[?_OAAPMV+!0#OE0<55(3(T$-F M](=-L61_9^65ZA61O1''"M.?/RY^_Y$>3&+AOGX#]1M@_%(8__W>2R\8M!_U M5WOP WUVHC$*PX4#JZ.@G2$%>",T1$S<)!98I?5YTRA-S6BP'X=R$<(O=//]"J M"RZ7F%]?R.;1Q6U6MB8%BYM/#B'W_^<\+.F)LR_O\&RQ7$^P&&U*88R%]E]T0!\C=]VZ%!=TO%@[B8Q<8 M>($FF<1^' XN/WNK;!@>L?" M ?SL @^OR/5?DCK;,/X]\1]?+,[GZ^67%^2;34P1J$46@%HR4%HZ\(F.OU(" MJ]ZY#TD.!H\G2=D*+;9WM S'[2[ \R%\?I6)?=,RO8AM7&K%Z#/'9"UHJ24H M8@DX4SAPP45"KJ((0WBH3Q*Q%6!<[X 9@L-=0.4D9Q+!ZO*/U],Y\HD-)4=N MR-^*&*O&3.!8\""3<]F'*%,1@\'D 0*V@HCO'2*'+R@;]\L/RS^F$]* M$9$48@;G@P85N23+2FL0B1=?N'[)E@8T^V]H2,S6'Y9OEV MN?A].D\X$2P6:3.MPS%2@%(SB"8@?4?,RNB\"\,9K@_3L!U&.HZ*#L;@GH#R M=K%:A]G_-SW;F%1>L$20]X .$_GHVD 0V8/0B-:A,M;%H6%RBX+M0-)QL'0@ MYHX,D:H!3Y88-G1K[E1 3<+%>F^N6$7)5B@A"<(">K9!LS'8N9#R#\N^_= M#@ =AT$/8N3(('B/Z7Q) .8B?IBN9SBQF)3@P8%BHH;MB@(?G81@9(J*?F?0 M# ""N^_=#@0=QS\/8N3((/BP##7'Y?V7T[B83:1.1;ILP*@:O)?D2D<9,WAM M8N;>)U.&<"]NO70[\7<<\MR?A9TH@)>?TZ%!8] #">HF$[@'0?OAR P5T Y=6-B^66B998&+0/IBR:%J!PX^A_P[!/C7#*;AXL^W'KU=BE:W<R9>* M(4A7"ME/9;A ]H,D;(>.[D.4A[.W"Y2\_X2SV17UW"3AN(E@+2V!O&E&GK6@ MQ2!J9W3@(@]G8-Q\\W:8Z#A>>2 SNX "$7Y:TT06Z6_O/Q'?5F_.U[6NI/K@ M$W2FF"P<^"P(V()7TT@%R,I$R97QS+K!H/$4)=M!I>/(YL#,[@,ZQ+EEF+V: M9_S\OY#4H/4\*.)(!3D=ELQ!S#5-31JGR.LR:L \OSLOWPX@'4<]#V?IR)@X M.<5YKCG,O\S"QTFRPDDZ!*$$3F8T$0N.)0,A6R.\3\D;-0 6;KUT.PQT'/K< MGX6=E 7\,EVE,/O?&):_T$]6$Q.B*I'\*.U]=::*A)@R?2<13?22FS)DK__GB/CZ_I!WL7DY-]-%]AIF]6B]DTUY8!/X59K88G M;PS7J]L+V+;*_)M/':;\?#?B#ZQ+/U_!QQ#.)IO4NZHNWI1?IG-ZV91TQN*B MUNP:; )CMC$$0.XDN2 I0Y2N@$'T.6I;@GP@9>%JSY6PBAL<7+[SQ\K>'W&V M7EW]9,/P&SMP%^+VU3)7[SA9K8BWUTLM3/*_-,'&E@ ;@^=ZJAY1G7!QX,MVF_U*5?N5(""$IE!!D==1M M\> MCR3Q'%,AV\S(!ZYNAX+.'6K&1= A GX0*X?PN@O(O BK3R?S7/]X^7_. MI[^'&2UG=;)^$9;++]/YQ_\WS,YQ4M!*S06=NJ:6UD2E@?P[#< )H_H65U1?WFJSS^^PX0$_#C#G[ LEG@R MFRW^J!;G+XOE"Z)KNGZ]6'W5XQC0))LTV%0OP046"(G1F5^"R]Y$$?P#17.' M8VE/>L=I"](.=,<06P?H/$FI%B:OOJ[R+TM:SE5>3M ^)9[(F"@R@7)!08Q9 MUEYM6$KA*:<'$EL&,+.>)&OG&^6B]. M<;G9P;<696PPP9&7HR47H(P+$++F8(UUE@GB71M'>"OJQCUCQX#@\$+K (E_ MGN'<_''Z/DS3N$3L& MY@823P= ^VVQQKO:FUQUXVV."!E3;>Y 7GKT)@/+.F6GHL0V\:^'B!FG>]>8 MX#I8)/O#:K$.LV',MQOLV:R'?.S7BS"_L:ZK#<,,:O*. D@D+BE!RW.R=@6P MBEC(:!OI!^Z!!S#EMB9QG*9AHYIU;<2W.S#]!3#G^+'>A SJ63RRKM]P?;4T M'5F)R3D(Q9/-4"*#0.H;F$F88VUS(VU+)^.;%([3P:P'?V-8X76@,%_-?R>J M%\LOM(1)]BI)%S@X9SW1KA7XQ#F(J(+,Q7K_4&KEX<"[2<2XY^[P<9.]&=Q% M//?M$L_"-+_\?%:OAPGX;]:?+MV<:\O3,E\\LGIE7]NDQ)P@6')V=#:>ZXC! MZP=ZY1V.FBUH&_<$'1Y,0XNC"XS=)E\'U!:C@)A-S1XS"-[(&M+.6"37+,LV M9MG.N&EVP V/F_U9W,$1=?NZX_ZEV6^+>;I<&:I$=I_S8(A;A'UG(,:80:,S M'+UE 9N$9[[J$&NQAM)I8/01#VQ5^O3S7WLI8;]NI@+#DZ*3DD%Q2$) M.KZ5<[29"HN@DC&&%V:#;G*QN05M/5P\#8*PH>70Q6'WY@QK$]SYQ]<85OBN MC@MZ4_Y*9WE=SR1IS6R]J% Y.E#:)?"N()3$HLH^.]WF>NE)JGJPR IB";)8$_0U(,E/@B(AN)[ M!Q!ZNUS0CEA_>3L+I%#GN9[>9U7?5E=5B6@]EQ*,%&0D*HVUOY$!168H,T[7 MBHXV7MWC1/5@E@\"HL$XW\69]I?%(O\QGDRO+495@ MM2T/=!P;P*YYB)IQ&N2WL&<.YG47D+DTY8-EC-4T1I1UHHPR",%D.D9-\4Z@ M,!X?Z!(S5.!GG);XS5+6=^)F!S&>U],0I[/I>KJY7=DT(_BTF!'35_5H7'^Y M9HWDS,O,7%T-6>E)TN$8R%3/7 ?!;-88FUQ1;$O@2/WS&P"IB4BZ4#@W5G8W MR.H5>N%]) 34WKZ&E*=SMAKT1='V\:JD)C40CY,T;FYG&Q \CK1#Y-$%MJXN MBM^&+S>S%92-(L3(R!^LU?%*.?"U3AYM5-P+[G5XH')XN"O]V^1T@ZF#Q/W( M%?T!G.\"02]/SV:++XCO<+;)/;G'K8D0LO"@:]EXL+0D+B D$8"VH.?)HO0L MM #3-RD;]W*C$:Z&E4<7$*.MLCQ_<"DE95\44V#09U#9%'"8&!@A<@XR,,>; M.&J/4C3N;48[534 _[N TNV8^M6*KOH?3YS5NH@L@3%.;D@* 6*)M1I#ULDZ MTH74)"+T-%GCWF@T M6 DN@@-GTSS'YO+;0+C%5U6S#A:HBC@(\YU*N:+ WC M&$*3 _ IHL:]X&B$J<&DT &B'JK7N;[8:73P2FYN;V\P;H;*U$ZA\RR &OJ//@D:>L$[B"%E"QI=5M\&Z_Q M49*Z\1@; FP8>72ARFXL8R)X\+EV3BJF#N?**H*KRW!:HF?"DE)N?6/8C6]X ME#NA>EU>CJ]SC.NQSMI69RGNI3(B"4N,&0%&GF!E3Q&7SR"F(2099"OFUI$LP8*F96L6M-N7=-_.AFE^-7\1SJ9D?4VLDB6[4,NM M:@\.CIF<3:M)*Z/-PNDH4I,JN$?H&3<*T @]0_"^"Q"]PW68SC&_#,LYF7.K MDY3.3\\W.14_8YFF:0T!6Y/KI#I6IPDH9R-$R6KP#(T.BOML&[6+_19IX_K_ MC: UL$2Z0-E]5DVTKL'NDS)N'* 1B@[D M> '?-V(Y!/N)XF,G-NK6:H.3*W7W&VM$L/?+#>OS1M7Y"TN-S,_)VA<]51K!D]-8651 MD3=2,UIC8#HIC"6TZN&T!7ECQQ$&QM#3$85!9-1!D.'VJBY&RYZTB2&^-U;C(LXG&2Q@Y.C("L/631*:IN MCL2.S/*"R8!EA3:)*H%L35: +,]@E/"FQ";NY#?H&CM",0*^]I5*!R"[$1-^ M]+PO2@9!:R) ! Z*?&:(AM:%ON22$YD"V*03XA:TC1W(: RVH:73163LQJ+N M'?P^92+9*RBF-D^SDD/P6-GFE8B;(/M,*CF'!#Y%#Z@\VI245K%)-/\1>L9-;3@^H/:00H]@NGG("^6),4R# M"=629,9!%$D0D\@U,9$;5*VOJ?>SNYK%8(\/JWWE\9S&=E]S=;4HEWG7]-O! MXJZ//+Y9S'6;Y0P4;WTU)U+P^H4W)L:GX@-/9!YY)&L))2%%D8T>=519IF), MDTRW1^@Y_);Q\H$?:JN)B;/,U!M1.J9#[3'A(CCT#)*@$]M:8[EODG)UFXQQ MHZ1#2/[^U>+>;![Q*%LMU[7!8SY/:W(=2&%=4E%M8T6V04>]ZD8!R/#"/8^2@[D\HA0 MJ:;$U2K>AQFN?L73B,N)8Z%X)'4:8^VE;T6 J!6"8[(4SES*J+YEE#SR[-%% M?ZBT%L.Q;FS)OR/FT]L_D:'],_Z.L\6F._ [^G9^CI?K\3E;)3PM)64RZ^N8 M>.\]AZ!C3I(%IN[>V3X"A2U>-LZ]6"-L#,W<#MSFZ\.5O 5\1=^N)J($+1/Y M94:2]Z\X>?\^AEJ.+!-F9I*)35H9WB>EDTO5_>V.@;C< 4XN0?ZU0ZC*47 3 M&>C-4+Q0QRARK<%BJ),4B_.Y2>+'74(ZL4WW%.R]Q-H#N-S%9<'E"GXA3CW4 M[^#EYS0[KR&@VF^6_LL?PN>)-RJ9D"J+Z)!5R&F/J10 0[;1Y")IE0VAM NM MXZ+M,'@\C+5FDNH"CM?-#UXL5AM3X'("WE<6VE2R*C6N;1*QT!H'(3D#5K,L MK$_"B"8W6-^DK)/#;QC%-JP1*USBP8 6@#&9@H M)'A6./ D+/-9>,.:M#MYG*1Q]=; TK]WTS"((+HPLB[\BY-;_L4ELR96\))Y M37_'6E(C&8,0E:3]EV.26@9CFJ2F/4G5N%JJ+;"&$T<7"NL]SNA7'_^"T9T)1I.8=!Y/1!Q;(/<8VO06V(F_< M;,BV>&L@H Z4VEU636B_,%0^@M=U'JW6 ARCOR9IN$>=C6DSI?XN(>,F/K8_ M$_=F>@>5==?DW(D5ELDQ;T "V= MY&0/;)OOR>L.X/)UXNO%&E[-27_13R9:^50GNH+/:(DO=$C[8AUH$3$9E%JX M)E&JQPCJ)-EZ&. ,PO4N3*.K&<&+VUOAVM3302LM%!@5#"CO'+A:C*J15N5% M*=@F">5ILCK)I1Y("0TG@0YLGJ^:]"J\-IV?TZ*^)E']A&6QQ(O/?0B?LZDL^"5(3-!D)G@C2CD\K(H M@\TNRR8UYD=<8R%,L-5]%"*9*6P6JK MVBPB.,NTU9*^8!./X1%Z.DD('Q*.A_&\BS/\-US?,&!-,#E%+D"7PLG?R1&B MCP62T(4;1PZ0;.(LW**BDQ3O88"R/W\[T"Q7G8JNJK!^"JMIJG&]Z>Q\74M- MM92UORP$NPGFQ9JPP3QXKK@O.AJFFQ0(?(.N<8?+#@R@(670@8WW'SC]^(GH M/B$E%C[B;^=-V2SM1JW#W57Z%+(L7($HW%X.:2_*0_$6@_5.N]PDY7L_ M>2CLP H\@LN=:K?) CZA;*QJH:N6Q5E2MJU>^M;SANP8]T=8*!29C2X L M=,T_K(HNR0Q)*X,I:"M5DZ#45M0-7.%BA(@QEUHX9NH-+*W:9VF S$L,PJO( MDW]!4=>+$[/%O.Z;S>9_&AR"!@1N-&N.B(6 MHB7F%%5DSE(QWS@=]2&J.@'4'N)^##D'\[X#(-U9PV6Z-[HH3) "LI>I-OJS MM=>M ^TLDA^KM"U-AL(\2$TGP#E-^X-9WP%^;M0L7V;S["Z ZP\TE[[89/F/0R/H &8W@%T'HB2H-=C\M=X(1.VP_+,%^1OUDO&F^U4?YYNDJS MQ>I\>2,%+6CE/=*9''RL_(H"O&46N,>0"NT2IMIUP-^%TD[,ZCVA\5!C_&9R MZ@"(K^9I68>1_HP7?[Z:WX^+O%O,9K\LEG^$99YHKB1SZ,'Z5$ IEL%'%* - MRSD8*X1OE,6U$YUC@[ I:NY?&S<380<(O=^R2AO!#9<*BK,:E$\&HB>;P)G$ M1=(<,33)0=BO;UC+;CWMY'Y7#QXDA+U1=(;+Z:+>'BS7K2;+F%R",@B6&A2RK/G))!FYME1T728&/J"TT6/QI_/E[0KWEZ\8+-9 M-K]\<[;1_R\_XS)-5[65(S(DND-6L8X&B$CGSY)R!3\@@<<]J79W2KMU@VUTH M'3>1OP.@#B3$GG%Z:7_4S/0)0ZES\!RLT1:4D;9.B_(U&T2G8EWFH5% Y5ND MC5L&T $2]Q53!V[&2?ZO\\M<[0^+1\+9F^7%L$EN.:TINAO9OD-B[6JZQLMZ M]PM6O,.T^#C?/.5B8FR(3$IND SFR@7'D&QELI\Q67+U,B^QS3B3U@L;MR+@ MF*#O"B*C:NM-"[9MV/';8O[R]&RV^()XE6AZFS,3Y[D0+ I0LM9%U.II.I80 MLO'!2!Z"37>VQ2,=\ 8A9]QZ@F. >231=:#A+PZGND;BWX?PN;98JJRETXM^ M\,@:C95,)H\@+"U/!?KB>4+@.C'%"G>RM$F:VX/8<6L'J+^ Z MQX\UX?5#"[OD'6[F.G]8;+MBIC7RX )@D0%J[B($*VF_AIQ-CB)XU:2;VP$T MCUMF,9(UT52P_4#Y2:?A-_QC\ZO5A&,)K%@)J"7MTZ@#A!I>%L8GSF31,C;* MR=Z&O)'+,+IQ\O:35P]FP!-!E*^+BC8;PXT!%S32#K,,8D@.#%,U_R0&A<>, MT]ZF;CL,?A\73X-+JXLPU^T*SE!\\K[>I:6-$"F0.N.*:&'I[WHA_ M'[=&!TGAP#O,E_/"R41@XYTFTN_?9_4*2(0W+DK.@BM/@@W>0A32*EVQM M:6)1/454)QFQKP?)51R,^]]/X?2MO+O;RVM617W[G2.55#^Q\./65^LD6Q]L0I&KA0@)1 M8J$-H\FH;!+%.%C=C5U[O0-B=M* NPAD0#/_R#KP15A]^F6V^*/-I-.O3S^* M7GMD,<-KL.L77<.0>5\L$@)3TO6R@,Y@)VC#&6ZL-ZD(IAM9P8\3-4#0H3[S M[7+Q^Y38]].7OQ+O7\VOF\Z>I/7T]^EZ>B,O71:6C1 &,@H!Y-8XB-F0>:(L M;0O'4K1-BFYW)[4;W788EAX(5;2461?QC-OAF&BC%XK+BR9FRJ< SI@"):+D M(:.RMLG!N4?8M" M3*H3Z=8GIXOE>OKWR^5(^I\0=5P!!E N@A!YY!<]M:8;_DA6[UI7+W6 M#::Ð7*NPO83JO3'PSK^.?WQ1B(S%N_>7M+%RT3-H,@)HD,J:M5@9LK!TG MDBA /Q!@C(_2).4M;Q)4WHZ\<4NHNH%H0YD>FMPTW'WL_20M+H53K%A@K)8T M6I/ <4]H4JHXQSR3IDDCXP,2ZYK=I76'Q0%DUH6>_.M\B6$V_3OFK[OKYM@! MYEURIDZ7LB+6V(,$AX09Y@(:BSPVJCKY!EWC5DIUA\8AI=A/ON?]"_2OD]8N M:@RNF2>TMB9X#RCHB_*!3).<_K[I7U6RRCX'\M,$DMM6Z) (BE:5I1/NM+ M,@PTOHG Z74A2UY?U4/383?.'B3A&@MK00TJTV#=&VA5GR ***-L5@O;1,# M^MI;]6_[K*:MA28TCD 62.TS43R$&.*0+Q4CG8> MY^5(7<'N$]=;'Y,C0?! *76*O6H4S^D?D1DS*9R4N,H6HDGDJQ7BEW<\@(A1 MA1#J9,LFL9\GJ>JM&9GO&P2"579*>(W2SGJ[-WL2XF M:Y9XS.3116(E5[03T2#4'#HK:9?F-CUCMR.OM\8A1T+DP9+J.&TD07T4*)HEYMJ@+120;1YI0X6J\\'O% OD]A;^TW MCGDF'RBOGJ'XVV*>SI?+3:G9U]7%J&.VO-XJL5@W&H> 6H',(D=M,0?6I+?1 M+D1VUV[CF(@\7&P=).AN%QV]6N"7B=8\GO"X4YO;YR1.?N2P*8YT%RD&IVOU9" \Q2ZN+YHR,YG%K M8<8-=1^_:J&%Y/;7F O:="TQ>9$0\C CA4B9V\ @&VGJP/98KY4TH+))%)6+ M$TWJ;'UNZ5W=;$KG-H->MR>QRPJOP>#R2&'TP)+K(A9.2TF(>?4+,?F! MO.);BU.TML , QT5FW.>EL%4G;+K WCO$YT^GD616(1RGKTHP\FFH\2$Y= M:,3M.5ACK5:$.E050Z!-Q3RX4$J%3A:R#J6[6ZUU;+MQW(2*(X.QD>3Z]6DN MLI0>9J0MUL=H L2("A2W%F*1&L@\$:5P%@IOTM1P=U+'59C']FF&DED?/LU- M"^3!$4K)HRW)6! Q(:AB$)RW!FPP(JDD@W5-7.MO4M:E!S,8.)ZR% ^64W?0 MNVI5]:J.@PFSM^=Q-DUO"E&VF;4I;7+962B:";) T),M@A:,4SQ86E=636H- MMJ:P2Z?E&% <3FX=N2P/MD\S1:*A_\BL07*_*F""U1*D\,DGF9QHA,%#^]D= MVU%I!KNAI-.%CW*9GKYI7/"6-DN:GM7Y0Q=+G)1<3+$R0G&<-@Z+H>IR 051 M<5XRQS7TF@63^H8*\]])TTB1^2T*DB:C#%E$ZD-ISQH9Z((.IN8 MFXP0.HCJ<8V5/G&^DR0/G/M!'%BN.P"OC,DHILE_,'5\%R\98A89."\H"SH= M6)-*WO;@;6; = K>7239R=":]^=G9[,-*\/LBI6OYF6Q/+T0YA53%0M,*"/! MA+ *4[;M(:=DTV86)L96]O1-VY!6S,XMI!.!Z'65W-Z%NVB.L*8G(.) M+DGDZ!'H&U+Z5?,'&>HH;2&<3 S)[&^3]'Z+CI&;Z+>0];V$]OT9WP5N:KNO M#^'SQ?3KB>*F:$/Z-IA-K\SHZKPH#Z8(*] PETNK8HF;=(R7T79E]G M%E[C,45C\: Y]Z#RTRDQ'SVIDE#ZT&H/_BB.E2S]4VYK,4E,B;! M&Z5W?1APFGV]&H#VJ( MGW$=IK/A=-G5\YJIM <)[DJS."Q5?+&;T^T7=0K_CR7)9+Y\O7C7/M6_+([_^0-^MB)"Z[SYL6K#E ME$U@"L%J^J)RTN"DM""$U8Z7* (VN?P:?BG?@V;=!=WW[BK&!<>(3M%JN9Z\ MJ(T%<4G"6G_Y+9SB"2F["3>",W0.1#0,5.&B)MI9<#$(YXPS,FT#;GK^#6#3 MW^Z"^C$"1K[0&!D0BP&E,S*ZWN'9^3)]"BL\^;C$#7/N+NGGQ6F8SB?:.Q]\ MMJ J7Y2M/=MX;1^(.0;/BC>X35QG*\AM3=4X.!Q&\(O64A@16IOIB;^1;X_I M]3K_N7XWP_^)8;;^]#Y-<9YP]2N>1EQ.T*FD1*"=%EPFDSMGB"72P:"YSAZ9 M%WJ[N9;;O&T\N#22\*(EN\?&SX?P-\SA[:>P/ T)S]?3%&8O%K3 R[48DVB? MB031A%HMD3UX:QG8XF7./J.YFYOW"'2^\:)Q;F&/A)HAF=Q%^'ASRU='OFTJ MN-Z4O\[/EHO?,5]V0)GBZN7GFMR*N18:WISF^M.7JRXI;Y;TW7]A6F^TND)? M'$1;%=>(!AB+G_S2< MJTO*(_.&R4B6<:[3V+UF$',6@,%(SXD)FNFMSNI;CQT7*P?(9C$(HSI0(!_H MX?+J M '3WF1<>YM?EGG+;"!VI'-<;38 ,A;' M$U,'*'QL/U^NIM!JBG8&DO'D. E+CI-)"7@RVM4M M^^'$,W*,]NL14O-CUE]^Q?6G6K)YU4KQ_D\1KT.2"K/%8@DF*9+Q:8L$EY.! MF+B/OD2.9IN6'UN%;0\A=.3:W#Y.Z:-*>V14/[:.RX!6(:.9HT2H^;%D3@>R MI%FR4'ATN;8=BVZ;A/FM,%C8\'A443N8SM@OY*STKGL["91WD:9]-- MRO_5V1(-8A+$&E/GF#/%(8J2(4LF0HC!1KV=1_K46\;#SI!B7+3@:0<6W'6> MPHM96%TU -ML'I.SX4I&2*@**,T-^.S)M\]>E,23UJ))W>"C%(UFU=D9M,2-H!QM(4YJ6UH&)6:77/:6ES9NPSU21L[Q&$;&=YV" MPQC> 63>8QT&?O+VZO6;I5RJWSICVQYO_EC3L_Y-#W;;">K> F1.V Q1-I.-M)V0D:.MN%, ML]I98AO0;&5HWWKSR(T^^CC2#I-'+T"ZW%L\<.TPUUG'+I!12#TMA.V@'2>P@#>["R:SCK'5V0 UKY=5CGD$>@T)9\2D9:M..VH M$!5J'='(-B6= RYBY"9"?1QUHZ-C;#WY#G_'^3F^P[3X6/O:+^:_3F>X6B_F M>-EQ]^2T9O=-LI2(15CP&#.HJ"5]EPHQ.V,T6F;FY58Z<]LWCFRECP:(16OI M] >YG\\OJA/7"UK52:'W7"_SA.1$G]],A=,E9!<\0@K%DYMD YDPKHXYELHI M.LD,"WM"<#L*QLU4[!62#:0W-D0?8_5OY]7T>5.N1H L%Q^7X;2.9+ :=6*0 M8^T+4'SMD>\E:/+BO=0N9^.W0N:.+QXWC:@/0+:45>\X/,EYLP5O+$^@M$72 MHH(UM#R=%011IS<(G[E.)K+(!H'B_7>/>UW^/-!XH,0Z<*1NCD3ZNMK%DIB6 M+.>>&PBYCE[GR=-"3*ZC6R5G-C*90PNOZ%&*QKV@&AV0PTJL ^A]S3*H(8[\ M4YC5N36;N1^TC5*.B?$"/!-$5(ZV#G&U8&J"8%T)RB;C39\B:MQPT!A:$DC5-@KDV MR0!;D3=R'OHP>+F7'S"\9+IM"W:(#AA+^76C!,=2AC[E7%BP$#9Q0A0XV.-UDS%<[9;B1 KGZMU_PY>+KURU79'2\. _1$X'** G.QPC)B""S MM&39-'%8MB.O6V6X"U[N*L,&DNEBO/A?5S4??[6>GH8UN51*6%0H-.@4B$6I MU!(E;\!K8^MXX)!UDP:K1KJ M5Y<[I/;0X5GMXO.8B6JY+3SY3(M"5UNRT&YRI5JL"I,L6JJ[Z5A#E55L0=VXUQZ- M #>\7#H V_6HLWO:.FLOG:MCE*NVCJG&UF4AE6U2D.0$*=-VV-P^D&IV=]'L ML!R ^QV@Z#?\XP:'EHLY?9LN+G<>WB6JWJF8PFIN+JGD9"K3*@^=Y#H)))N@ MB2VV*Z'C#@%KA+JFTOHN8\,'3)88XK5C1X9;SJEX N,B)DO*+H!+H9:M> >. M8P#C8E0L*(.^2<.V=H'A)W;>F^6+3_7*^]7\YB>F\S0ED%W4-R@MBE9!7UP M*8$L#=!>V7 M-8PF"F<$D2QX8*!L3A"LC1"M$]FY+(MHSG_^Y?3ZYD"PF1/[#" 62"I=ZYKUQ\')2FO/!JG@ON6[?;D&T;& MPOX26PS-OK$Q\-OB=YS]-%W4*XYPMAD7\+57(XN&T0HX4X(8@[0,[C2=])&6 M(Z0K)F^%@L??,7+W^F%P,! +.S@U]CU\7W]-+=72"X>*%&DFZ#NR"'=YH$# ?=!#YIEZR@"J,SACF$(@C*B:C/5J[U9'ZV!N>IQH[##C#L;P#]72UC@GG M]<:_#GR*L4XNMHSH-@$P>L>B+A)5DP#>%0'C)O>,JX+V$D)'X'EU>A:FR\JM MUXO5:L(PL5!JSV!>^UN8;(D5P9-1BJ%P@<6XIE"Z30_Z-=Y%D2:XIH4K[W.$GCYN_T9$KM+:A. MJ_3N-U/9YX[Q@:<,<67X+>(&N@&\?,U%)J'2 &;">F>Q2*3(VJ1W;DK[#4[.??,W7VWAC!/D)J4 I=4@( M*P)\9H9<92.#YYGG-C-O!9KNYUN1"//JN-MGJ( MT"/KK"B3=(FL;5O;+BM)'G^L;C\6)F(N@5G7I$_DD736S]-5^/AQB1\WXJJ' M].:U&\9_W04Z)N:T&5 V9? F%Y#1Y4"G=+2E23725M0]#VVU"X[N:JOA MA=2!_?X@MVKR]\D\OYZ&.)U-UU_N++%84O"):\C&!M+&]8;4:P$] Z;@SL&*AL+< .,'I](M6[N>H9?;UL?1-GTXO]^/+S&:8UY@_34_K( MF_*>?KHJ%_U.[FY1[Z+65@$K=9!-\0F>!WC1N6.@>TQ M!?]LS,C;Q]+BZE@Z(-5VYW>T,3MW6=B1S5%7R.VI4R4=HJ\#MLCI<00D\G>\ M(8>$,]=2@XQICDZLD]K+Y,G J1DM4A7RQ0*"8=PF&93EV,1M?HJHYV%\[H*: M78S/G432P7G^=/Z=#4&*'#4$TLV@$K,0 SG\3(22C"%7/S7IYM%Q(NQPPM\I MSW472?0 JULI7%(J%;F*X(HI1'R0$(ROLZT=*]I[:]O=I/MDGNLN MK!X['>/%8GEU\7&5EVXB <2$RN'$Q")]''GYW27]MJ7NY@M7E'DHB<2.% MJ.JN+B(I((7HP!3EE."^1+--5O,N8+E/Q7@CT0X7['V4',CEL4V*RU6\#[/K MJ@_K;,DJ2M*LQM6:R 1>! Y,Q6 "Q\C*=@-V[C][=-$?*JW%<*P;6_+OB/GT M]D]AGG\FK3E;G%TT-MDHT*OI?EF1CT_'K;.)>.,50DC6 )W%P@4>E&9I*RAL M\;)Q#I)&V!B:N2.?*-?.V%^PCBLY^S1-8;;1GCH59R7GY'YQ 4II X%I!MSQ MI"S:PMPVGNI6)\JC5(Q[F=#$!AF&XV/#YL+6OKF$RXW%BG=>UT;3OA9!%.'K M'%*YF7LCR2(O'@_+B&LV()F4+4FE: M,R-3S7'RX(3+A71 ;Z^<>_]\G.:G>?I_&-- M1Z/_\H?P><*9UD)F#R6D0AX;;<-@"B>?4$162]0M'Z/XX"%:N[SSW1,LNR7> M'RRY9Y,\=;7ZU1\WEC]HZM23;VB3.+7]HHZ<-I6PGI\\@D#/:IPXPZ:1N1&* M)VZ2I0/Y&:=-/9J*^Y?E8K5Z<;ZL^WY"KFD*KDC@J;:D58R8X-!#"B$XSS/2 M)CYJ]O1-ZIY'(M4N.-HZ7WIO(75P$O]U'J>S&>8; RNN5X+"RA(19(JU9I2\ MDIA=!JY9[=HHN)!-^@H^3M+SR,D_!&,#B:,#8+T(9]-UF$W_COF*6R\6J_5O MN+Y:$!>L:E@GSUCADK@[5)H-7D2\?"XO LY1<(Q,^-$D\?I*J<5W5L0[,_832;4OS M!TI>R3(^#[-!/8$[SVQ4J_L$X4>V]DTP7!HG8),=IJ2I\\B- TVG8I YHVDS M)VIL:_\%P7JZ:>922Y/F*YSD(%@QO$#*W%=7'079UJ9 ,'SV6"XE)0P?%<&/O.=.*UK7#5XNC#]!3+,ISB@^6<%^6;T^H\ MW9'E)#!IN.(.?+1U>KGYS-:ZN_X(JS3I[^>G>3_.K\8 OEA<;GT*X9=C_\=CE- M.,&2)4_,@Z_]"17W$L@XYY"]4TEKP:QOTB?D"&M['K&C=KOE^ 9.U/ABA]_ M/,2/34L]8@<=_KC:17/47TV\1N&4XU!L;;482&#..@81C9#&,Z7O)EX^6OG5 MBL;G$<3:!^\]";?W<^'^J6=SMMIE#E9E6ETQ-1.E3F8UY+IX+86R37SKWU ZER'<)< M)Q/5HHJ@N!6R<&G;3-4X;O?.5U4*879R=C:;IG I$/+AOQI +TO!M-Z8-E^; M%$ZLIJT;I:?-:S1I?8T0.;$(33!>,EN2:#*ZX3"RGX)\U,%.GS#+B7V3!08PUT)B+I54/E8:_=X5Q:X =1?C?JD'>11)] M(.F!FCJOA2A!,>"*UTLW8<%;,B-,*IF5'#B/VS3Q_ZYJD'<2[%8UR+MP>6PO M^8%"VII@@MD3O3$20^@O1#ZW$(O@/A@9"OIOF6+/J 9Y)VE]HP9Y%]:-+?EM MRF2=+]Q*IJ$. 2,/1P=P2+H4BQ,&DQ;)L*V@\$QKD/?&QM#,[2#0<'!/S??K ML%S_'-:7K1]<<5):#99)\FASG8H3;00;==!QZP5".L5+4J1P2-UAL*2)1<_&:];1I:>INZ9>K![0F8?+;V3 M_)X+*)\Z>BYXSR>BR#KZJD P/( 24H,KP8*30KC, R^QY1R?@Q?P3(V/(T)[ M:!0\FZ2]IVXA)G>6T^)R9<)'N%ZYN[#K"Y8?]^3K;[B>+5:K,UR^_T1[8A^V MW7W$$%QYDJR!;I5>AF7=5?7Z?/.2ZV"^M5*Y6(=I*69!(>V9R.O$\"R0'B.\ MX$V4YF,$'=SDY,YSOPY]R-9K)IPF8JIBD)Y#T"P!:B,<_4[&W"3Y^E&*QC5E M!D'$O2XH@W"_4[5\9Y_N/[;MX09\^83Z?X9MR,E]/\W1V7HV@]YC.EYN$I(L>"9@OKDU/ MS\[7EXT:'M\+M4U"ECH!-UA3DK FK:H,&B/M+2T<<; %BX9?2J>1)#?1?RSR=1\&G6$B2E0*%YWH/8!,XD^N8*?*.F+(^ M/"^+:K@-L8G89 M:3(B5!=]XJ;;+?1;.,7+ZW<,0A91)'COZO4[*Q"E2I 8*5E3A?702V9V%^U;)52%4"(C!7KTQT)#[%F*$H M6ZPKA@N^32+=[D;)XS3U",I]A7]OVMPPDN@ 5 =NWJ]W)\(8#,E**$(0/WEV MX'1MU.(-L\II1-_QA0P3-MB1UL/JVBU3:DUNIM-<1#.VX=X(S*%'1^4]8@UAX M FNC]EQGKD.3J;]/DW5X5>_#+/YYNDJSQ>K\9K18)$*YJ$=.WF11D'D5BDD@ MHHK(=(A.-8D6[$#CV$E8@R'H?AEO&SD]-R7UE_?_BVSR=4W-^(#ITWPQ6WS\ MLDGY(=IO_*O%/,SSZVFJ[;)./B[Q@EG[7PVT):BILAR>9<=1N"G7.8VVIFJE M!"JK %Z@@J)UJ*E4(C'__!3N5X?@48'1BW];S-,CO[[1*V5UX13HI$,FID#B MVM9L" ..=CTXIU0*/!@=FS10'GXI7:OO7?#X^!7&*%(?N4[T1;6=<4E26'^I MD9I-!%"E&+A"#DD@@A(A@PM2 -I-;9M3.-Q,XX<(Z.6B8!Q + :4SLCH>H=G MY[4"[L:I=7=)EZ'!++Q,/ FPIE9-"J.!%JG(.K(E,!7T=L'4K2"W-57CE:H> M+OA%:RF,7;M*MM-E^)><^\*ECB!LG?JK.8(OF( YR6T1I/SY=L7*UX\<3_"- M9+4XF'%C:Y*J7#>[("6.7/,,J$L&96@#A!(D[7'GHHQ6,;G-W+'M-,756WN) M5(]^(NTGAQ[ URE2#]Y*V@,B,U3%\::N\BNWA,[I&V4]B M=V6^!_M&EOJOT_GT]/STDG"O4BG""9#*DXO &1'N3 !I13*[S.D1_,H[GUYO$Z M6@PB_;V9V,'EX@!GY=?[K>1284I)D(61J<2BA>!U@>A-BMH4&TV3.\8A%S%N MT7XG1LSHZ!C;;WIXY..4UE>;TUS-')OXZ*71@OP)IVL=%[$U%,[ &%:"3THY MN9U3M=W[Q@WYC >&15O)=*&&=^IR6[,&>&UPBRZ0B1%9 H?2TE%E:+D\"Z6: MC)5NT)RXF3\X.ER/(-OG=OOY*R[3WQZ_S#O2E>?^5#2]YQR(.<>YW R"N^0+ M!^T]!Q5H5X3H$) %SXUEY#PW,?6>W>5FBHQS)0-H.GA(<]2>OD%*8AFI$T%^ M(K+&):G_$)>;N^#Q")>;NTB]Q\M-KRP3&>5F8 DHSR-X4S0@+24S$U3@VTS1 M^N?EYEZ ^-;EYB[2&3NJO/55C?)H5;0<>*I]+"+Q*O"D08=D!\[R!_K@X@^0, M&I-$SFZ;:%#;Z3O/Z=)N7W?Q8.GT@:[5_0D3.MM@./DZ2D1=&RX$\#)8P.P8 MBUBD<=NT@?^N)O+L)-BM)O+LPN6QC\-+7?H+7B5PV**D=]:3\Q/(.^9:01"T M?9CQ3#,42%S:ZIB[^^31Q7ZHI!9#L:T#0_Q76OT:Y[6Q\>4"LM&Z^*"A&.5 M%4[V(G=(WK!*Y!NG%$23RM9[E/0XF6DLEAPS-IE/&0D8'X_"2>Y9)=N^GZ_!Q-CVC'?@BK,/LRVK]_OSL M;/:E?6;=]J]NGTZW)QN.DT,7A5',D[&:$CY!#MXO4>\RA"ZSX M8A#!8F2@5#+@HG7@K0C6B83:_S.'KAD@OI5#MXMTGDT.G4D\,T?&C,RLWESF M"+2F7.<5*)&-EI$-5_;_3'/H=A+\7CETNTAA;(?Z5AH8R]9F8R$'%;IN%SS*';25Z/YM#MP+P.'-M',F]\<3DQ"S)%6K]6'KPQ MI@Z4"T:A-5$U25KZQ\BAV^?\&DY>'8!NUT2;VZ;/*W,BP#6"@)2 MX%*;)G;_]Y!#MPLR#LRAVT5,8Y]W=[S_RQ5(S9.L_1JV6\[27,Q*&O[2#ZZDV.C4Y2UD-R0=B;C0-?<>!V@Q*@\ M#X:S,%A9RC]$:MN^7MS!TND#70^D:.00+:L:6D72T"K29HE9YLH6+05#VG1# M0ZS_U+9=!+M5:MLN7![[E+I=DK.(L285 M5>M[+1)K.:?5Y0*^]B^6/B5?XC-)O'L>"5#[8/D(LNT=N9-L O.6)W RD]6F MR,@*6 0HIB4FD[P1C;*C_S%RH9KA"LIEWP>(2LIEVDWL&A__#M$@_)Z&(L\%)J8FYM<:ZU M \9[X.>4Y[021K>Z)=Y%7!Z#;]$^\BYC&CC8]?)DI4F!6>P<".1GAC+[S.7+Z M:RZT0X646P;AOX-[XIVD^>U[XEU8VX&*&M2W\TQXZ4G#HV)DH@A2-E%& RS6 M^OL29=*-JBN/'*1_3ME:AYS"HZ&CBYWQ5+!!*5G;]#JP6I'6<%& 9U%"HO]) M*93R[OB%Q-]1*'XGL.P4)MI%0;HZQ3X% Y%)158-G1\Q"RVS M;J'IGET#Q"'&P7J?=8 MW>="L,*:FL-AB9W"1H@N6="1J90W7;,&F\7\#U'=MQ,@OE7=MXMTGDUU7^"Z M,.L9Y.IV*Y$UN*PL9)N,#[Q4*VPHR#W7ZKZ=!+]7==\N4A@[BO4;KM:87J_S MG^MW,_R?&&;K3^_3%.?I.CU21%U"9 :T(0PHZ0-$%0M85;(*100EM@MJ;?.V MYU /N).$%RW9W8,['\ZFZS"K"2LO%JOUZDWYZ_QLN?@=\]OEX@R7ZRFN7GY. MLW,RJ'\AAI^<+NAG?]^(]*PVXZ5W#P(,OY;O+NRUSS'<"U8ZV"Z7I%]EGF?&>' "#-8V0S8) M<"%IX#DQQXV/QC7)WKM%QO'S?QK.U=7,\B"0!TF[*-1V M/UQ($P-CG^Z_3&:[6BSF^F5^U[F>1%$<)=/HQ.K&4,[69*K>@,7(6 MO2CY;E[V8]V=[CW[V>)K7^DNAF-U-TCY\,?BREARS+)8'+&B6CF.EUI1%T#3 M0DR.GLEH=D/*];/'M0E[0^MT5@>][W[6?''H S[6?C#HH KEDT1+93I.?C!%D+C*; MX$,VVP3%MH?/Z#GI]>$NZ3$[FP L&7 DH&_16,M;?^?$P ->[PLREP65#MBB\ 5G(S%)&$=Q9#%!L M++1I L\Q[HZ:,5WC(03UJ,SWX-K84O]&ZX^KSH1"9C5L%Z;>ZG6](&,?<2Z:\G9LM&QZ>_T45IBO/:JKRJ!HE\ MYN25)02&GGQN:Y)F:BN$//J*<1S8X5$Q# \[".\^7-;HHQ&.IP3<5Q^=%45F MDDV 3B7IO57L;D[3V 7*YCNW38:35P>@V[56DI.#EU018*VDY:$@VS\5#W5" M)LMML=B-N\[GD5,.\D[453UG>@TH:M0A2&RZ(36"EKN@4O$(ID("*B MRL9*CDU:VQR]H-G^@YS:HZ&CBYWQ5%FL=TD63[J#:T6+09XNYJMKJ;7-W&7. MF@R?_X)MO>D?OB_/1\MN'PB[!.G_YZ=I+_BSZSX?/BUR0=;6:C5QBBE5B-]>,0?*!%6'E63002HE PJ[U8S%85%^T)*^HY:E MS7;$\3 SMI>WY51U)XS![ N8J,CA,"Z"2Z05I"C(G5,YNNWX+NJ?>.>]/;*_@&D]1S:]WSC6!,B\X[6[ZR:>.( MZX#@>$V#54IP*3@=O?^<:E^/AFB5E\QJ\,'0T< 4 X]10]V.W'IA4YL@V3]8 MWYM=\'B$OC>[2+W'OC>%.<)5=#59.=$7R^D8R068=BZ;),BNV:;7[C_[WNP% MB&_UO=E%.F.G!&_=CT-(U"$J"ZA5;0UKR6$S08#-@4MO:DW%-IW4ONN^-SL) M?J^^-[M(86Q/YNUB28;O5>)M+#[$4J#HVG"%J0+_/WMONMQ&CK2-7E'&AWWY MZ5Z/([K;#KMGWOC.'T4"2-@\+8M^*7$-AJ-U\8GG[OM+LLD5.AX?C7@3WD@M-M,D*(X$99W^Y MMJ8)-1'D(DTF+W [5^_OFN>#H*Y+S?,0"$R]Z3]0B&MSC,4Y"95X\S,V$Z"M M%E2D*HWD+YO]E_ZK:IX':?>9FNGO2L$+2I7,OQ>+C[0FUMCL"+/OP^O5MB^7&D*';;N/?3[;$EBKT]Q8L6L/Y)^>/9 M\G3YX>M:W$SX RV=>Z2-[41 UR2R_45RH%%JM@HA!<-25L84^44C9$"U-'Y7\LOS#U MB]LI7DXRC<("Y:"NYM#$5%M=19#*URA);W<<].USCR&M;)#6EN.(< 9A\C@I M'5JR]D5E:<48P&C/PJNUL:^TC>0Q]FE,]7=BV5@;Y71X..Y%<.]^6/GBHO$9 M=/($)N<,K:\M1!V]K<%&+-LT$/\[L>P@J.N26#8$ E-O_0]D.SGO./0K%8JI M^2K;*:10V'I4E[/*-6[.+/^O2BP;I-UG$LN&B'HV2+G+=G(6LS*1P.?6=5%)9;MCY3=1#V#O93EDZF)J&GLW>+\KQ^^_D!G^>,G M7/UUU?I0&&.UEQ" M^>/RT^=+?M;/_WNYN-HRSLK[9;WX%\OY9BJ2M<$G7Z#4RNZICQE2R!%RE#() M'3#)[0Y7GG_7W%"SCV*7_:0\\<'NV]6R7.:+-ZOWM/JRR%=!#%HLV2<'NC5. M,5ACRS(VX)UE-T)+K\,V-7I;G>$^1,"+FTBUZ[7!WMJ9![J:O*XY.+]IKV^L M22X6T(XY,8I]2_2.P#EAM(M>?E<_M#?$OJ=BNC/A_17[/4KVE/(,/*1WRZ]X M>O'UVHH&#"$8(\&5(L%(CY DAQ]*&)>D,D*E/D62]ZF8'"+[:G7SC&EG$<\ M'Z,F?^E4B[(Q@$J\QHS7',[&$,&A$MIKC+SF7D0!R#'-YMHO7IP('5/[_7_2 MZM.&#AXY0KJY?SS11)97>P++8F7VF#->^ *JM"9K;9S [QG0'YA59I>9":I% HJ60"6+V>X8 58D$!9%40)H;L5)=>=OO7)!U'(<@N MT!Q?,?;Z+*\(S^G$8)#*.@]H!?OROB0(Q )4!DD[%-%O>J$[0.^Q MM[^@4HXN0!Q%:[.(FP;5J@AIHBVD 9/W8+"-0R"MP'-06%72.M"Q#+@XCF[5 MW3;K_71[;'5(AR@UFJ2::$8%0T97@Q$)E&PM0UP;[9:(PQ#4/E-02N5M.H:^ M_((A2C(H$]O116R'N<) 4E4Q7R'S JRVE"Z#*?_+"H:&X/$ !4-#M#['@B&4 M6$)M10DV(9A"!J(.'JR5I67ZQ)JWR1_]NV!H)T \5S T1#M'4S"DBLGMM@'( MM2+L0@E0!'90>%7G('+5?AM#^:(+A@8I?K<>U .T,'F@O>1U>GV#Y15EFZ6' MV*@U568(PB 0;P=8A4Y.J>>%PXQ!5WO(*2K_Y75"N^R/T^'AN!?!O>1PEW++-B$0"GGEE\J6 MPZJ60ID**2VT2',KEGM9=4*#4->E3F@(!*;>\1_JBDQ:DE8.V'RLAR>8-N'- MMR'PP9)56<7M9D^\S#JA0=I]K@'U %'/!BGWNB+K8F1+\HWKKLA9!4BBK3R- M EVMPFX6!O]7U0GMCY3=1#V#O7340WPE??#&2XBJS80)E7DO+7M3<(CFI*3R M0O+)CJG^:!_W!SQ@1IK#G[Y!).9Y]50TZ+.3@8$%R6",;% TCZ MR[*63!)=_/M^O'EF62)&] E\J E,]+QFR6H..WB_X>W&"M_E!.J_['Y\"!X/ M<#\^1.MSO!^/GC3J5"&TI%0CI8)HBH?"T6UKN::5WB;(^_M^?"= /'<_/D0[ M1W,_7IVMUF $TLR*43% C((YLY1+<2+15HE$+_I^?)#B=[H?'Z*%J>/W/_$O M*OCV(ZX^8:;+BT7&TQ^7OUV4F[%?(7LM70#45K8Q<1G0F<1?"F61E4QVNSOS M9UYT#/?H@_2Z["3D&433(XU539I\5!)2DH*EF0I$M )4#055B@:U.J#W^U]^ MM[[+WCH='HY[$=R[4*$8BY*5=Q]'&HRH+''O/3BTB;[6AT!@:F_A'Y]_63%/UZ? U[N72(*,Y!U1J=8:LA)OB]YR[&C;1"]7)::Z ME8OPT-./%F.[:G@YIKBGQLO#\GM'BT_IDE]PCRLOA/*81)OC4< D60!+RR"@ M0%9(*TCX+:^#MGSE2[B/WQE9?10S-=QN+Z^N5PQ+[D]$B\D+(Q:%W8KJO=%B]["5.D=X;8V,J8@<\WZIV7K2H6PFCD2L 572&1?H/7X!8/\'48V5"Y' M4TID>7K3#6S=\Z2T1N?888-:2VX-(CS$RINGR"97HUKHT*5N_;]V"'$W0[^? M;H\M3^IW/..^C55H_:DO/B[+Z[,O='[1F/O^4Z+; M[ ]*UL1,!:0MC<]B 4L6@):*JM:X8$;K);\/H2\N>6L0P)83:'MB5#_&QVWN M23918.5 PK#G)U6&8-KI5,FEL$\69-GFHG@KW#Y-RG29.H>#PK*+7J:.67_G M9^7+4UR].C^G3^ET0>>OS_+-/4\D83,YX) T@LD<=PW#KQ>/2-*E:"6(JA&,2P&B-@H" M\>>42K))=/$)'Z/HQ>5?[;(]CJNW&0#P/OTWH[>TT-F6"GX]&;=6"3%C@.1X M$9%+Q90^I7C?D3*Q1S:.CC?/A/83^ P@\YY6;')?O;UY_9J5:_.; TI#64)U MBB6C4 %BT*!MUJ@"^:RV&4TVW&H]3M/$ETY[JGO3[HPD^QG Z!V=\OHJ;UO& M]SWCO%Y@20B?-05PQALP)D6(47N@8E6LJ3@ANS1K>(*F%W?OOL_V-Y;NY@O# MF[4:' G,"%;'-DTC9\#(WF7"5 3ZE*OOTFO]2:JF/F0;2??;86H'14P>]'U_ M9/_=>?VUS9;9E4JV@F2Y@;&MJ0/'/A!3;'.VDE=^RR'I6[]SENC91X.GB/UN\<^?BZ6,:*[SK^?O>VCF:XNDB==5!AM;)J+9,=P?!V@RV'1L73:JF MT:Z&CK5X>I#B=RJ>'J*%J7?$)P]_@]4E1LL;>N8-W5@I $NJK0FWQ6AM*>*8 M#]0[:73KL_4AXIU%9#=&M6*A4(+T!+Y5?)EBV(@W'X+0DC+*2)=P"Q,UXYKI M8QI O-^AQ:'Q<-R+X%Y%$L=%P6D.Y#%&%KL*%I)* 6PA%8O646.7*X&_:Z9W M05V7FNDA$)C:27AF6',;[_S+XM]4F/'S!:M_#8:;**Z@KK(HX.V-MT[C$:+/ MHGV7@N.OWFTW>GL/(HX6L;OBY?DZV?&5=P0@_6%Y=GG^ZQ)/?Z>;0P:#*=3" MT8"PH@TFR FB+@A2B4#>QFKJ:/#\_O53G_/,'9A[*FSBN/WM:EDN\\6;U7M: M?5GDJYW'2(XO6_T,%LD[CVW7W,DK4%[X=EI*>JO&O%N%Z \1L!7DW MW84?1 MSCS0U>1US<'Y]8HT.FLA%8(J'*.:* B"CP:LRM5$99TJHQT\/DK%=&']_HK] M'B5[2GD.@MLG"K]/Q>00 MV5>KFX'!SB*>B^^$&[U4UA5U-QW^T$4A$)F+[,%4&P&U1A"D29A$$K4;Y"D] M\;)I_*+QD=%%N#,P)J-6A%:J-4GF6%ADWJ7W$&RHO)\7X8-)OO0JP3UP%Q'_ MPKVJR=$Q@Y5Q5\KQYE]G5'[ 4SS+]/XCZ_'\Q"J=F.9&O&8GA'$)2;H"T9#1 M,FD.8;KLND\1]8)ZB R"RK*3WF: P>MN5>=_+E_E_[U'ZBM72) M-RV(H1HPWDC^CEG3+DHB;&WRN^2#/DO9"VHUL@\:Q]7@]-[ECB.:9."UA:[5 M,#415DR0)J;VE(^Q,E[Y-5VN^1.JL9< M2O"M_C?REQPA^M("QRBLIRR["XOEW39OM,#F\>FAD!G;NVFC_P@)_B+F? M_YU/+\OB[$/+6.+_EC_QWR?:6-)&24"7F$6/"*&PMR%(B"#9T(O4:,OV\HZQ% M++Y3XN,8Y,\RA687W#UB* ^IW3D6JR@7D:1#P'6C?)4EVWYKP#ECK(_,2MVF M/<:13OJ; @3/%:@,TTF^SD YAKG.N3B5?0@21G&.5D.@1GVEDJV4ACV+LVHD)G?K@DOQA>V;Q(R%@TF5\GVK4;>:9- @39X/YK3^\V;)];\ M+GI;CB'$J;6/_[Y'.+M1P16OP>M6TA"H0,B5@'S@=:#1RZUR(+?3_OTW3Y?= M-HKV=Q;B+ Z_'V^V4RBU1JH*BF-OVTAR$!1S9DP5ID0C;:\#FIDVR9K0K1A; M7_.%WK4#;]L,N80!%";'JS'Q/NR=A<".NT]>9I2=;EB.LC'6(-T/:HPU1!&3 MQ\;;=VERQMNJ=8"(FL"DT I>10416(ZZ:"/C=E-\7D9CK$%:WK$QUA"13XVD MH;V9A,54G7"0*/&JBX20M([MYM!%[8TW66P%IQ?4&&MG3/44_BPVOCW=B/<7 M+/"?6/)7/1$Y,LV^(I!PS6]5S;%0#E3U%(*-(FUU4W'X>[1OV)@V=6L6GMUD MJ'@):^*WVRP1#KRR,;D=V;16%K5E AN10'@?)6;!G'?J[3L6"]/FF;V$M; ; M&E[".KC*>9$GP6F#(1%(Z=K@S7:$25Y "#XX6TGDI&:Y"JX9F-I9G@: 8Z^# M7=!P;),?'TOX.MFX6>F4S78BI\EGVV3O-J/M_^PJ8#S_V$;J?,'3]EYDGWL] M8.<]YVZ2LFH)7 M6#*0KFUN<#60?'80/&57E#4YUNU"Q$'OW2\,_O95'(?=U5S]R3+\@?_RKQ.L MN:!!!S:W%C2\P;>YAPJR#%5H(U#HL MG#[]NFIVAM\:_#8!'%_M8B1":R0K$+4+#*(YH0870*$) .0LORQ+%:X+3NX'\0*/5#1 MS^_]?GV\_[AAZ8@+N(51\M!;QQ^6GS\NS]LMEW?CK?:HXQGCO82SI4 %,X>L9 MU*(Z#2@+KX-H+:#)!&0H5JFL3K3=V)4#^GK?KK]OU]Y#+[TZYLDF9TU6M^EB M""9YS]\)L^[;HT.5,N)V79!V>OWQ6,8AB/C&%^ROEAD<>S76F)]-#MM!MJ^Z M6D^*=Q/-7JY&#U%H9B=I'RR2<7F;7,3AA>:/DC0AZ X ALU:\G$T,P.,O6.G M8;5H)V4/\_3PIS?)87=%(R>9D$MH(M#N*- M"1"JLN""D";$3-EU23O>BKKY!!SC@F,[KV\/3>T,OR^T2LNN /P%%ZLU0S\M MSO/I\OQR12?2&9-CCB!#*^)PE0,WRQ:]FL1L1<)B^\RHWY;""8WB]$#<5V-' M>_;7CCHO\;3K.=_&.PYT._($8Q.?.TF.GG?NTGXKE@ MXV;"4S2Q3>T"C2P%(UN$$Q2"1/(E!F^2VZ:2:A@ZIFY!MX?V'L+ #J*<^E[H MR19H%$BC2XHW2IG *%X9R;/ERUZ2(G2H-YV8H^HPMY?>MNXC-T2(,_$VOC>2 M=P>\AFI)Q;+S5$L!]J+84!82D$TIEH(EBP=,T1EV;]BM6JK:*N6Z!/0SOAWL@H>=+@2'*&<6%X*_+\Z6 MJ\7%U]>MAR@'$K?F_RVMPP6[H:'&6-CY M\*DR2UDK:+>F4%*RE(.5@;I4I^MX(:D:\J.@LD-8)1;09, ME1[(,1@2JH2NRVW308S5U>Y[+>;RYNQ=2\]8<1SR YXOSN]6@:SHO6B-YTBT MT1&4(=JH>#T8+*YBP3YS?8<2.F.3-01'CYJL'OHZ+JNU1\K>D\_K9K=ZCDU[ M$G".(NEH8BNA<& 2+S!,V%(Z10A:6DM]2JT.:+@XG+B9Q[J@AY;%U73$U;>K M9'U@&+U \ABA2L$!!QG- 4WS);15M3B65I]3B-$XF+&I&X*\9TS=@30\@^.+ M6\9_^'K[[?^SH%7K /SUMS:<[BIW* 8O?+"@6M\QDRQSE8V!HITPCL-D3*$K M;I\D;R:@/"QV'D/P>(J<$SSO[VW?\W=]W2>HNF1]@EPPL=?1IA;K*(!JCL3N M#LG4Y79A$)4S >N(,-DBTAU'9W,"Y%7LOI:8O$E'DB+&F! J8P]R>:ID!PI[(X-6ENFQ-.PZ7S(E+E3D)&K(W M/FI*PL8NAP)[YN%WN[*:Q\X[DL)F +V]DC$Q.^&*CB!4D&!02H@B*9:H"3;+ M@FYS>.7?N?KC &?,7/TA6IP!8A_)!T]2V=1:=\9@F0N=(_!'$E"$5-I:3[%+ M$?J+R]4?!(?MF_YTL)C#FEB0ODG+6274X!Q>X_T _%!H;-S M/Y(A6ISM5>9]0>YSA?G@<\:XNGR>P#&ZASSTEKN>UVSL2M0"JDUL!D-D,^AM M!55,BCD463:WHD;A/GD:R;LZS&:]KXI\!E/J$>U^G?/OGKB:;TL0:^9"T\BJJ*1);14.[F> M(ZXSH+:MW9752E1-&=-D]N#[ZJ26Y7S&?_SUQZO$YHV6^DP5)NTJ5$>^ 1F9 M&XZX;2Q$5(K)H8LSLBV!<[4K0U#P>'>@$94S"R?X[6KYF5877]^RY"Y>7;4! M^_SM5!MA=(F;+G7#6HC*V0&1PMW MB^=5SJM+NA_B;BP?&2M:SRN'.4,P:"P[Z]Y!*)J(UU$5JDM5S?8D3G-0=BCK M-JJ"9EI=\Y 8;ZPZ,SQR3/7 DWOY5L\QT=_/DNR;9V(76UG5&GZRYUZ]:#/0 MI,FV72YLUZ.QIY]UNX'_01=WG0,+*>]2A)I$2S9D"Q%UR)"4%3I&*XSKTK+G M(6)FZS\-T.Y#A7M["7T6OM(M%^_P7[\C6ZD%GIZ?**N=I6PA.]Z(C3414DGM M9JVX[-@JRMKE8O)!:J8]"-Q?S8_A9F>)S\#_N67B?Y:KOUZ?L8.7Z?S\1"MG M7(@$-6KF0M0"24L!M6J?M"W!N"YN]P-(2Y[H%3DC8;*Q10\!R\>VT@!A] 1*4T!E^\ MU<_)]H 'U(\?45WEX"@21K,_1DXY,*W12PR"%T;P4247"O:9U+$M@7,-L(:@ MX/$CG!&5,X-][%%N?OCZ)S]BG5@K74ZI4@8M9&&6C 7,,4-T3D1R5:+K@K?6.&IHSZ!I#UY4MEIT^464$;YS@/;\*WO/7!Z'"&I5$D$H> M%'1WM$T+NM'QL/7]R&[*F;JW*S]AN6I_\/66D^NL:E-BS@X11*F\%IWF8+6* M BZFF)+GN,/B5E[!HZ^8*5)VU>1R=+'.P!C]1GA.'Y>GY?6GSZOEEZN"NQM6 M@LVJH $KV5B8%LLD1-OZUP95'#GJTX3N"9JF/4?J!:FQE3$#7/VX_/3YDA^W MN3R*X] W&M^&H39 M;CE@*?URN3I;7%RNZ*:Y=I&6ZGK<:IOJR]874""+R6&2.I2*F^>5CVQDS[YJ MVE.FKAO:N&*>A0%:9XOGIIWU"?T'5M>-,26LRI"4$.(Z"928*^LS,![(AX!L M3KNXUT\1M16X[+&!:W1US !:C\KJM]M2F:*U< 8;,YF_*&,X^D@(/J0@S;I7 MANL!L.=)F\L@EBG.#';3SYP1]^MJ>7Y^(I1KG8=%ZZ+7;H^,A!38-'LR*0B. M1[SI>^S6-[76H_2?[8M]B;UY=1A. I:"B^ MM ([GR I%2'E;(Q(0L;-:[@M+K%'OL.^$=")\S;R["3;(ZH16(\;^;Y 8F13\EF.(JBE5UBAE3M.GP[R]7.6/>$YOTNGBPUH))QE-K6VX M459,K3&5Z;WI,S$O.REV>_\D?T$/H\@KJTO=JPJG9\S M WCZ"]'Y=27I56N7ZV%&)SHKMIRB%5I@;(>Y A)_!50R"I78-&.7[/ !-,ZU M^G(?D/52T0S0]XB)?Y UWO1;(:D'+(87EDP)0O&V76A*1>0(^S2\&4#C7 LQ M]T%?+Q7- 'V/%Y!KC7F2)99JE&#M%DD&TC6/A.L'J5HFDO$@]BU M/<4_TTC^_<4R_Y78-2CM/IW.SJ]\H!T\\D>>-(;7O0V1(PUSN>MY]:;>?]D[ M6A\M_K@\OSA__Y'1N";G+7Z]FJAX&P1RJ%=*<9#;":+Q0D-L)T?!%5$YA-/* M=+D:VX_L?0W4UF__X?[;[RKCLR(C39MQ6F0&0YKML8H(.EJC*WD1#]3WI MGO8.Z(!(W;2(A]3W3$\Y'C9)N_>3>O)Y_6QHQWE^>^+3"N5,3AE4UI]632WYF8YW2?JU>GZD?S=F_J. M\O+#V>(_3!2M%LLK2N_67 JZ&AT04+IRM>9BL1J<+%84-@+>=6Y]-3)'1VU] MAZ#[\7JE*3$RBZX2=Z*XD_6WVKAI]KXV?QP%;GSRC[,%:R5?++XL+KYN].L) M$34%J: 8P;N4=YDW1^(=,NFLDHTR8)=QFSV9FC8%8!:+9F*D')4_T^ZM+[Z^ MYK#ZC!FG=IV]SZ7-\)?T\WRV9FT>[E!P.EL,"D1LDR=4#)"P2JBH#0JAJM-= M)@[.Q1UZ9&];K?#LPU4IR0]?OPLY7OT+5^4JY=+71+X6#8$H@FE#.R+*EG11 MG?+!I6*[I,",QL%1NSM#T/N,Y3X0!F9P[-M,TA_XZ:KLTR:IT"OVRD0;SH%: M )K4NA4:)Y3.J?:9_7V?B+E49!\4!YLWJ;LJ94: NADP6,DS(1)*DH*]_2:& M6 FDSB[90CK&+HW[OB5CXD3JG=7Y""YVD.W416BOE)"QT7]=L.*3\&W:&D3* M+ L?(P0A"*HF%Q5+Q"K_G*?WT(/GH>E=%+0<25HSL '/VL['3.=OMXFQT6;T M0GF(1K2UXBM$T=H0H%$JJ2A<[E*0L3_IX_+<_69R8_XN?%!9Y>,?:.T;#Z0H7Y^N6R54Z_/C^_; D7 M)Q65Y?^TBSR1P%@.\Z+1!JS0FH03/N*=]YC5<19=V'J-S,FVMU0LQ[+OAXJB. M^]>?OOG%(&=SWJ7@I!_N#D+"9Y;VS M6F: J=T%=\?V6=DX(K72"9(L/JQ2M70+#ERU22!CK3I:D=!.<[RQ S/3(GP/ M; UU9GLK>NK+BMN$C?L.WO51O(X:79(!2+!TC65TQ4(9K%=.^NI\2=O-T'KB M)3,_(^NN_F4'74R-J3]:N( 7EZWC[0.LN.2DSBP5BU$P*U9"J*U6,6#QN4I* MFT56C\#JZ??,_'3JH,@:42,SV)UOTW3O.+EF1+"'7(UCRD4;6Q"*A^2R V^+ M(R&+TZG+5=JC%,W\I.A0(!Q7<[-(E?XGG5\LSCZL/1 O@T*=+&3I-!A- H+( M@1T2;U/2A*%/[^M[-+R4J]A]0HY=53(#DW9-^O42PXA%28R V/*?BZX0BBL@ M'4IIHB9V;#OB:0XN_LZZ?!@3.PAV!JAX9#&M5PLO*%YT;\YN.BZ+G$TRS79R M!-3F6" D2[REUY(S<2 4^]1W#:!Q%HC:!0G;!8U[J^4H$/?GOY8W0P:40H71 M L?>S%H-!+&F +J$:F2-,:N)$'=+X[2[XB$1MYM:YHNX(;>94BCGD?U0I5K_ M7!,-)&('TGM9LA5&Q7I(((Z=0-5"$'6 CD[1UG+ZFR72*0?2S,_(!P9 MG ^MC>F1,O6!XC7-R_K/9=M07Y_Q*7Z*BV_T.^+L\6GRT^W KM9P\IGZSPO7Z=:T44.!9)1%3A" M+C9%*;PV6R'[P(3/_%2TXUJ8,T*.V3/Z^=^?%ZOU'U\UXCCA&#L5*1TH&UOM MF6*S8;+G'X7,AW[%# M>7%^O1GB!_8FG0[D%4%,2K8VHPD""P50:L(BM8FE3WYK#VZV6AON):^-2?%Q M5*4(#W5?&KTDX:F7]"M-V)JU>90H*!-2B87 1]_.YTL$K.:J=XMP ;6S73J/ MO)02!>N,P9@%($N2EVA;K*HH4"%GZ5(MV?>I(ON[1&$@>ON5* S!P Q\F6_S ME0/'W5)%@N):;Q1T;;"12"!+T#'56+SHTB?F198H#$+"DR4*0]0R TQUR>VK M+9LF"X14*SMDV4K PH$"1J40H[ >IZG0/?(2A4'8.D2)PA!%SP#L#[EX[][_ MXZ9ED#16!%&A6A4:,P9"%0'0^6B%X !#=,GZ?9*JF=];=@?-LI<&9P#'^\F) MR7B_'F:J>!MBTHFI]AS2ENJE%,YI7;J [P7F_NZSE^^JDOF@Z7J1!:=],;J" MMQ;!)-$F7GH)1J N6)2(HDMCU9GF_@[2Y9.YOT,$.P-4#$DRU2I'%@\"^>39 MO9 :DK491(G)E:0M^GZ77<>7^SL("7OD_@Y1RU$@[EZ2*2I5;2#(J56,)<\; MMK<_Q\@\;O%=B"@I MM(D&SD$KIH D=0"*6BEGO7>FRZ3HEW*+3]EZWH\2N&Q+FUK?1CV;S#]FIUP5 M,9N_YP=UN\4?@MY^M_A#,# #A^6;V2;1*L/>E0%I(TO0\\Z&5GL@D]!:J9TJ M79ITO\3Y08-P\-3\H"%*F1&@;AKK,-.66B<=XJ5H1*D038E@L.0H"AH;N[2N MG-.U^>[J?'I^T!#93EU%MCD1Q\;HJ;6,=R9IIMA:B*U%ES*V4M*!?6G]G%\W M^_E!@Q3TU/R@(=*:@::58'_WU=K=O<=$)ID+H@,G;#O'C1924@$PUIB3DAES MVE;E#[YAVLAR1-WO+[\9@( !_/X?N,E$R%:3] Y$<*$->920H@^0*07VUA)9 M5P:L^^_?,.T)]+@&8$_YS0$$X2$F7'9!&JW!JG:'Z(/D/9#A7!C/)0L2:L#P MN(?>,&V=X9@@V%M^,W )-SH;DS+>*@=540:C(SO&QFK0V5O$JJ*)72ZWAF<* M'T%VT3Y1QNYJF0&FNN0":F3;*D0%=LT-KRN2O%)#@6JKJZD2*ISFZNG(,X4' M8>L0F<)#%#T#L+^E55VN/K6!6VM6SV\]0E[K2FAV 2+O)R8GB)'A9;.J103E MR71)TWR$GIG?>G8'RF:T/H+69@"^^XF+LBJ7/3LPA"W11^?*(0A_*9ZC$5.) MP] N%Y%#\X*/(,-DGYU[5Y7,!TW7RZNPORH*65Y4+1&65.%%@8KC&G*\"DCD MTK/']!QVRIUU^61>\!#!S@ 50Q)0C4Q%:Q2 )6HVR55!83+Q,*4=K,CV7]U M7G!?Q.VFE@D1=[ZZ.&ES2M9.P?M,9[A:+-?FOHA<0\$,-3AF %$#AI(9"35( M7X40:9O=CU]P#U/\TR:>'J5@XG95Z$2;E M"Q.+$*CU?(E10=!QG1N!RAJRN6R3RK,=MAZC8II]<"3-+L<6\TRP\LMR11G/ M+ZZMJ/*)A..U@[Y-\>9U!*EZ#=4AYNH<4A@=*-^2,"%*QM'K TC90\CS=8Z& M),EJ6S2UHAU>;RQ XPJ$H!+$9JACK=**?CW)^I>P]&O.-XL#A@,#X)@A_U#1 M@G,I).<#V%!*.^].$*0N8(M5,<: Y%]&C\HYE[ , F#/$I8A:)C+2AB]1$$Z MK!:# :V*96O4TG2Q36-$Y[23T6KTW9;$WR4L8Z^-2?$Q=5[+LQ)(CTC@C\OF M#2[KZ[/S"SP]76_B)^B\XIBDL#-("4RP!J(*%G362-(5[^)VF9"CDG7TW>QW M@?C$VCU:7-^[Z5S_?#<%XS?Z0JE!Y]A_O#+Y > M&#BJ8M^'/_WYW^U;&KW\=ZNW]2L('L[L/$J$I=?$KGH"&RF"R=Y#$** ]R6@ MJX$QV&6*\UQ*A&^'O=/JR^(ZL>M[2W.Z?B1_]Z:^H[S\<+;XSWI=+Y97E%Z= MT)F:3&)+ A);DQE-&I)DT1K*1EB!;59\EYBX!S='73H\!-6/EPY/A8T9'!J] M/F-[1[>W;K]=LWAUZY:M#Q@%Y%@$&,G13ZC&0='*65NMQ,U1A>/ _ F:YE)D M/!EBEGW4-U\DWM3BE%JU2 42B5:!PWPDWP9II6255%D8VV7[>I*J:=$XFNZW MP]0.BI@!JMZQ3IB CZ_.RD\M7%U^;CQ=NVO7E[Q2D)5>.= 4>-EEQ9$JZ@ E M.:HLKZIDE_:16] V2X3M@H3O&W"/JI:=D?:%5FDYU@4,G?*O/OQ*9[3B\.^L MO"J?%F>+YJI<++[0-790$!I![M/CYGX9\^V4H]M&)!BE503:E-0:D82KUORUNN@=*8N; MP[@?0= 3+YEY)LI!L326+F:%JK7DK@SK>6N0>U-0F$2;(R?!ZS9>+BD-,0D- MEDPNE4J*0@[%UL.OFGDVQU0(&T$O\SA/:2OEFV;,=YV4E$T.M5/@L?5B**[U M9F++G"P5765"%;MT/'Z"IIFG3AS:_1I+>[. XJ\LQ@M:'T5=GE^- D,10C 6 M1)093 T>0G8(-<004A4LIR[>_W>4S*6OQER.5O93U0PBSF\8N!EVJ86L%"44 M*KP0E0J05"M+HHVMH!F@ M[YOAF#E$YU,&- 992((78M "2M:8:ONOZ5(\-[3'U 'Z(LQE+]Q5/?-!UDU9 M=TR9$K+[B;D-KVRGV$8&P"!2*,&B5*DCMN:P\^VLRR?[30T1[ Q0,:2QD>?5 M(4DZD%HH,-*QD!(I4#D(5W(Q* Y9S#OW?E.#D+!'OZDA:CD*Q-TU-EHW@6,A M643/4"Y32(FV6_J;Z(VTTM\T77=&)3),086 B%W3Y3L4V&=N"0M8+2!!6VNQ_N1>',$Q?ZP'X^ M.C]F%_R6XU?GYY>?KH32DLDS2^6?RU-^S.GBXNNZ'+PE7^:,!,:U:=32-EO@ M(A2G+$6IC,%#ML,>D[>9YV7,=-_HA)V7MIS>+<[_^F5%])HM#2/KJK="-+D: M-!5,;K5"(0<()D@(Q5C%(9;,>EX![[:6D+Z<:V_+3XLBAT M5M8",2'F;)+E$$XC"T0[B$(J(!VDS%)I37VJTGISMM5":GNU8U=0 MZX/@C50++&!0- =5(#B)QKH:$HE^9[5C<[/5V@@O>6U,BH\9+)+KBQXJ#ROC MNES\)#B=1. %3V(]?*#PTC=1@+/:.1GY0]$EI-^.O*U@'%\HC#MH< :XW.J6 M\H_EV1=>AE2NVW4?RXO_2Q=W=YCW:B;/3Z*SICK7NI^WQH68 MFF_':U=*,L%:50A%#U@?A+OM[O'$"UT6\P/0BUY5MT^Z^D=O+C[2ZL^/>'8K M*"VBD>3!&VS'Y,3;HF*EYI*\+O5]U*OT8\#:#/M1?LC?EZP M*-:&YEM2M^LN^\V_'Z-?[.,$C=0!]N?_O5Q8F!_#XOET)YAYV*7?/L.]NCU M^?DEE9\N5[?G>NL=]?R^5WLCZG*BHPV8504CM&7WEM<;VJS ^9J,#T5:ZA(? M#2=U5A9J"%X>M%#]M#2#(&3W>OX-SF]3T/Z'VBDIY( M=F/1BP+9VY:97!0D%@EX3<8H2\EA%V?BL&Q.F] X)O[GBXX9K)VWJV4F*N>_ ML H>-@8Y*I0>*]@DV!@4E2%Y5D7-43@CK2Q]IMH]2]FTN8T)O*U+4:IW$\QT>>.K;?N WQ?;Q&U)B$BPE(1@W&:,9894LC0[))NHAT M%%'L93I?E 6NOKY973WY=[KXN"ROK\YNZ#VN)P,W4;-A_NZ/;_[LJEXH1D\H MJ@1K/8*1NHU4+*W.5_N2,GD4??;B$9F8E:X7!>@ M*ZNS-X*-=2O8-)HJ)'("3/(.1=$*39_V6X]1-'$YUF0@>12M^VAL#M"[([_U M(WM36U7O.2_FQ6W_]ZRMT-H;"(5\X\A!BD%!ML8J7XJ/JD^.R;.DS06,>V%@ M$UGC*F0&$+OV>=Z>8EZ'3+?-_FUUSAG0SBLPSF9 '0ABT2Y89?A_76#U,#D3 M0VEDI7\7(^RM@1G@Z,'U=G=!:$Q45O&B\[&EF#L*D&0T4%66*E=OL?8I37B2 MK(E+.V>]7^ZFNSD@\=YR78_E?7,]EO?JI/3UV;WE>Q)B3*9=W3@O>.':EIYA M3>0?"V$6& QUWSZ?(W*&&^F.X'AB-QU54_-"X?KT\"VMUKR=.!Z=M? #)!T,^[SFI>V-EI_ZW5KE1.J M45";_.0U+PB#;>2S0 (JHB2O'^R%J-$W,H^W'G7A^7)ZQ MS&BU5M([RK3X0N7--^8W8U3")H),AMBKJ>P_/1I<;%>;7A6F.=60$%G>4&[728\\;A1;A&V)7>DZX-[[WNU M\;Z[!*7;DU\7J6"5 :]2B30%ETR1%^A)YC,F)#<+-IQ,90QPSB MS=_H_)SHS>>UBWGV8]YQ2#3V5>,L8MA?%F8FG^Z1D;OWPWF'& M$ZQ,$FZP5?+LX2E0JG7R(-X]D_0>2!?58ITZ_Z:^72W9J;WXND[F M$W%MT_-/F@MN;TFD0VA4WRRF4 M> 1HO4H2N^'P.D/,)2E%%!F\J^L,,8(4'+-LO4-I?JN8D7(.:K6 M"T5 U![!,W4H=7%:Q>VPL?GH:0ZI)@+&7G*=&A7O+SF6P/,;0+,7%IG #$[F MW-RSMA%&R=!.R8C4;-Z6YP'?/'>:H0#3X&$/B<[@3/P=G5^L%JU;^H]X_K%% MGOQ_K8CA"YZV6/3A3]>NO4Q*DV(3:'TKC_=* A;#7V0T-E&N2G2YM-F=Y&F< MFT,$^@=6Y]$"]V;$+_&2#H6-=9"\V+,+@((\Z)BB-$6HZKKT0=Z'Z&G/40\% MK%'PO(.69X#HG^@3GK6-:GF^N.7!E!PE40;*RK$QL)Z%YPR(0E+H%+RJ72XE M'R+F&!&X"Q26(^ME!MCZD5^YN/@%\_HZ?[TL8U3)$U9P!ENH:RP$]DU ,C-! MVQ*L[I(7]#TITX25A]R6]Q3_[ !T[3/;HJ@472%CC+RJ4ILDHAU8$YS/N;5) M.@"$YM#28%\%/XF7':0]=9CY)ZT^_;;$LVMK&0-'1%D+\ H-&"=:>S;?>E![ M=54P;S;NX!\),[]][IQTOHN2EN-(; ;FX1U]69Y^88OYK5!NF*D9D^)],JK0 M)@YE#TE792_0S@\Y-!YA4 U:+#'G9 M:BXU"R;:"+ID':64$767#+#O29EVP]I/M4_@9 41^6YZ??[.)__#UCU9OL=[I;SZ^BBF5B1AR("BD6$I( M$9)FT^UE%#[XDGSMXDAO3^(T-W^'=) ZJ6MV0+SFZGI]&JPD%$DHJ%NICV2) M&:7 U\J2+*K:U*>*\'&:IMW\>L'@2;3MKI,9P.OU6:%/9XNZR&LE_7J)*^3- M_C:W)NDJG(B\"%E QE1>CNTJWA>1LQ1.U]*EZ\/39,T)9'MH?]E-%5.?-#YA MZW^[[>_#[%#"JJ 6H5E6QD+DM0=HA"F*#+J\T=CMD?/';=ZV%63<,6Z!?00^ M ]/T:D7XIM[E#MWD!ITHGT-.+*!DBFF#>8@=U*2!0HK\OU!CGS'ACQ$T8:G* M^'K?G( \AA)F *:;?IG7]+-\WE^F_X_RQ9_+7U?+R[.RKJUN@SFU]=(*YJCU M.B1M("F.:;6,MFI37:(N&]Z6]$V8+-4=:CU4- /D/=17XAV=T;_PM%TOG1@1 M\7<7+RCB\5J MW0_]33I=?%AKZJ02!INR!4VM[Y?1D7E0!21S5YV76H8NUNQ1BB:\JNF_58ZB MAEFTB7F4E54\&22!PI61M MY#9%@FVWPL-D##](WH0A9W?D=5#0#&!W/=MN[0_<+:;SUU?\E!..:;2O6H#2 MK:;(MU8Z)4M H46A$J+Q?5+KGJ9K*Z#YXP3:F"J9 <*N/,_[[;R:PWEU.MV: MG:<'RYNQ^XHL\L11S%4E 2?S%N)(A6!>935>P),G1>YC_2VH8N69H>^=38=1TN-E??M4J7<6UB2/!I/7?R_[4G<#H%'>@G125,SP.!&VD([(KK$TQ]QM?K*'_T33R_IVNDX ML<5CTLR/\+XU6X@%,%YE %IO M[Q[?N0OOT^Q,TH?72Q_(!L'@;+.=K='MDJL"E82Y.NE].MX^O'?1_;7<;]FN MQ6F2S#8%S6R;7-EJFW7Y>:P^"?9^91<#MTG),?7A'8*51T=][*2"&>R>]\^& MWBT^?+QX4_]Q3NL+F%>?EJN+Q7^NKOJDP^I$0&#OE,VPK.R82E00==$Q1)19 M=[EQW9*^B3,G]T/!$T,1QE+)S)!VXW_>7..A]%B$E>!4Z]XJ>?5%XSTP)P9S M0:WZ' X_0=.T12O]$+6/Z*<^=[O/1Q,.>Z,NL0!D&Z[*2Z#=ER0DA,2.J):M MX!#3=@#+.-K?7V2[ZWO9[K;&L!K?)C.M.3 MMT2X5N&0),O"*+9[ M3K)6+?]&^(Q]?+OO23FF$5+[>#E[*F$&F\_[C[QQKKM>W') UKD@=0&7:V6! M*-XY34&(,JJ,F+S!+K[R]Z0"SN_"'0R=>0>>,/K33T3]'3)2X MM:!5%,*:V'WW!DSR&C#R1BQY=X\I14JJ2[7',+,S>@;AA#'Z()&/YOL<[%3Q MS<5'6EW[^'6Y^G0]+*/'">.3K^I\VK@]FY.[B5ASTY/%;A_!_J)U24'GUA3_]P%AN):,WOVS[O3PQL1J;-4(EW:X- M6B:;MX69J=90BSHVIXST\-F?)_28SBV'(.UICWYD!<[ 47N2OR;+E@W2;C^O M[SU/JDVQ!$607(A@VDQYC*@A"Y%=Q4S?-0T\ $ ?(/280LYN -U7@2/6HAQL M=V_YZ&]Q47C+VTP:[K/';_'"SCO]4)8GV>^+CC9A0& 7TC?#J(#A+4'6')37 MGM'8Y6)DPOW^+7Y=O_=HT[J2,&>S0#]U)7//RYNQV%OA)0).EP@PD>2,QY#/$Q,%;EJDH*ZW@ M<.Y0-T/?DW=,N_$^D.N@K)E!\.UJP8+[C*>WZRDS-[9( ;IEI1M4"#&6"B[: M8K1/HH8N'N&35!W34?%8@-M/-<>7'?;+96N\]#M'8)\N/WUCX_LX>L^_K[.? M-Y#A2=R\@-$4W\X>?6 P1^,YO' *$@K'IHVC'-WEM'9"-^];O=RJY/).*"II M52@YR,D1V_L:(8IL01I5LB0*I4^K]8%T'I-C. 1G3SN&XZIO!MOU0]U-;GV/ M&_ZNSJY*Z[?S"TL73_\O89O(4T5%J\'9UM2I:H(08@'+']I$UH70Y:)N=Y*G MQ6Q7)&W1M*:#6H\%P"S6/WB'^_-?=/J%?F=K\?'\I*(1N>7;!]&FF5?VL$.M MS#&RJQ.S$2YW.6/8E>!IPZ+9@7=?E1X1=-NR_/-?RQ/!WKVV!L&Y-H](&@=H MC #4.<80?3&;B7F'1>PUG=.&4W,$ZBX*/#9\,N#H))+TI: &*6)B!H6'U/K[ M:UUCR,:7VJ<><3"ETZ;WS!:C@Y5X9"C]97FY.G%1>.%*RH+; @FI%\1%"E@*(P[@BL]"^'*S5\;/43M/O;'8@'469\\DK?X3+$TE% ME4"J7<(9,(J(MP+7N(G9UU QY"[W%H_0,TV[LRG -X9"7N#=Y8_V=\#:S3X^_]OF,!P -O.43N_W/,37(_[&*H(10!04M>UMDB MQ)H4H!,R86N!T$E)@=%EU MZ5;](#7'=-<[!#/?;2][JV(&@=_[R\^?3[_><;$>8)<$$Y-U@(2M(ZU5!3"C M !2U^B!U*-@EJ> A8B:^A=U?Q]^54.XI\#F"9K5"7F3MV^N)'Y1Q]-9:EY=O$/@J!-RJ:%T_[*?PY->VEBAM"ZYD(Y$C[5 "ZDUB+% M2@@F%) V)^.4*:;/5='#Y,P,1/OI_!E$[:" J<_07WU8T5HB:RL M:DVM38LB"[ D$%0PS$0I-DKSG"O^\*,GSK,8;7L:07"S4OOUT-3J5,K5F=;2 MW/-*X$40I6 K6Q*E('RVFP.TMU'\E/.(QU#4HSK?06J3:_WS:G&JA'37AJH0 MJEC8XL5U=U0DWE=)29"FD'."3)%A.XU_^^"Y:'L7%2U'DM?4NGY/GR_65#/] M\9K^%$EG+VT; 939V,D,R7G#89Q6IM9HX^8PRM 8G"V##;:(\!/.%@RE'UO8^\9A # M;'HUO]VVODX4I)"*O5!JG:A]31!).9 N"39456;5IT7 8Q1-G+TX^NG$.**? M 8;>+SY[[VCT_5("&PSX'>X-_KFWX]Q(_0X M02/=]=Q_P9\K/#O'O&XS<:^5"9E0R8)0NLUE81\UI()M0#<5P\$/BB[+\CG" M]A](^O#S[VXK_F01_\#_Y*\3JWR[_790C5]G,DJ(&G/[8ER5PJ0^+< 'T#BM M+1H51=]/)NVCJ=GVPKG/\*LFP/^7SBCCV]]^W.-*^_F'CFVOMB#]4$;,2AFE M#@[(M(Z9NEA(O!="-#;X9!4J[))-WMN(O<\?J5R>TIOZV)M^^/K-;]:>JLT< MD!:G6CHV>ZJD>9$H\B!3YA@T\PI27:2Q$[4S-VQ#D/6=K]5=>Q-&!.>KBY,_ M%Q>-N]=G9?%E42[Q='UFRIZAT35;<,%K=D];<[2*#DI1DC+Q!H';7%+R"^Y! MCW_:A-VC%$Q\C]1?Z\LQ53 W#/W/XN+C6CY-5!\7G_]<_GQVL;CX>GUZ4RJ2 M2AR&Q^PJ+TA=(-E@H:#(40=M8]SFRG(W=#U-VS2X&PD%3V%J1)5,C+:?%BO* M_.OK$SQ37<@ULTA2#DPY\?JCZ"$P1TF6D%S:IIAW*S!]^^H9865,[2Y'$?4, M#KJVL]WK9:9$%"B$@DCK[B8N0(C>LXN04]64);-N3..UM^N$VQ,[*FQDL MK]=G*AP4JXA@,"LPE@J$8MG4Q\!2XRV :I>/_[ M'<_PFYPFK8JJ6DHHNM691]N&9&D#;.%+D#%8OYG)L?L.N/GR^>!E%T4N1Y+J MS*S*O:6S7BLE4T2L'HIL&6JBL$7VB@-@85L##9.B[Y+^_P1-T]X.SF8[&ZR> M^2+M>OUI9Z1-(8.VK:0V5+;+F?U-&:2+OI6EF2[IJ$]2-1\KM9?NM\/4#HJ8 M.HOE_LIKHI8#6[T\WXDM66;M\T2 M,;MH=ME3S/.U1K_=WK1;%:/,@:!&T>8\L-PPA I>NFR$]*&:[K[U0X1-VSEI M-CO@;HJ:VF#]L3RC3Y]/EU^)6AU=NV9X2ZO%LISDG&SRRD)(U*JR6]?'3 (P M2Y.T5B0W6_$^8J4>?<4L3=..:ER.+M-9F*0O='9)O[#L[DEK02P;JB*(Z$&D MXEKW!@Y.A-*@YW_B!? MGN+JU?DYNXFGS.+KLSQ2JLO3#Q\[Y64 *X=*?3'6QZI#A.):%[Z@(B3#FQRZ MF"(UC[Y/2? \4U_^__:^K;F-6UGW_?P7[(W[Y>54V8Z3DRJOV!5[UWY4-8"& MPQV9XT5*3K1^_6GP(MF2* ^' \[(:Z=BF1)E3J/[0U^ OB23O=_,D'>1U#,8 M4L\ET1>#&D#7[@-M"EI_P-278Y U3NK+,=*;^"#];H&O_WF](,V 5W]T^=?E M%UQODJD?_A3Q-_BTK2HDUEFNK6(\>%&K"BT+CEY9:[TL=;95[M-7I->A^RF$ M/L=$FJ,PU$T@T(F!>V@=N_.A9#U'1PYMK+FUVD.A5YRS; P44\CML7UR!WM! M\VE2ILN0.!\4NB9RF?J XW$O:7=$*#SYR5YY9KRHU7<40(&QY.%FR5'EHJWY MK@/XW:=,AYTQQ=BUX.D,@M+W)(K-;>FK2UBOWY;W5UWZHZ9,T,LX+BBF0'&OJ9_M_*^KW=&XOW$SO6K3=?E MU>>JC&\]0@0=!43'>$J*Z>0D\Y@20XFJ!"&#-V(LE_HQ IYCNLS0*.YD 4P, MH-_Q\_4J_0%KO.U<<7])N]UF:;=Q8T,]R]4 M]:9J.K_[=,%WK:4PZ[ ,A3*N%,.3.J7(#//L*R1 M1'M':,>P=P:NT%-99\)GH4$IQDW-;=6U)9HOEL5B A=D]74X9[E#;PLWLW28 M4Z*TL<0S7Z3MCTM\R#G6/M)2TJ-;;03S.\FH-N^Z5?X[M1RR5BAB;5%>OR @BS)HYD(P,7!Z MB?VZW/5_YBS1,T3*77N63XVDVOL(5VD!EXM_;46TS*^7_[KYA-O>2??7YJ00 MD&)F:))CVB3/(-3^<")PSE,QX$TO.!WYX%EF8IV*J9;,GX7AV^V/9?X)O^!E M]_E>T^E]'N.'[AVN2K?Z]'.WVO0$(W?B SUDH_$5!, M<TV$,<#Q?3! M00B@$2,V2GX=@?JI3?[943<>[@="8&K'X<"*]Q;K ](2%W]CG:.S7F3<>DP[ M.^:M"UI(J:&FB5M+JDI-)8\'SX^*D]W;D#\T2! M37S[\6[5Y>MT]7;U'E=?%FEK>2!+J37Q1Z(FRZ/(\@!7B4'42H+/KH0^.2&] M+CH>(V#:8=SGO3X[60#S % =4;=;P7JWZ: 0LN)AT[@^XR.C"7/GH$R^5S.HH;A4I&$I !EE90IY M@)'6X[GF&8+QN4FIY2C-!-SS=W":"&H&P+LK3'C[UQ+S2[B$9<+W?Q#[UQ=6 M@JK\8"(:P70HKG9O]'7#"@L:7 C8 G1/$37UZ<*8XN\:R6(&N-J/>O_0O4C_ MO%ZL8@;7%)*^F6N'OKM^OJ#'3E)[A9EVZU6_Z%C$XY M'PTS1M6[Y-K,D7O!P"H=,"7P/?/5AE(P\P8%0R!V/HG,0+OMC^IJ+ZM7U[2^ M3[AZLX"XN%Q@C[YJ.?38XE[_G2ZO\V+YL687T__Y _Q]$230!L#(N(FYUGUJ MBH*$8"EA=-% S*Y)1=L 6J<]16^JNUI+[GAPABTXEWAUE@8_N[NN&NELFZZ- MU-OGX.>.W=:GWP+.U=''ZQQ]5+8RAK!8C"=L*-J$#HL'D>JXT3.>$XTXD6_G M6>[&3'[%];?Q/*=\YUCNF14$K&<[(86I(].G6\@8'DJ]CRT9#\'P.QP;M%E4K;( "&P6GU?;V@34X$; MI5*(YGX'\Q,A,[EB&2:Q^S(?P+ZI)TG1_OAT_6E'>'9!BBP,XUBG^_%2ZZXP M,&ZD=2K;@'RT'B??/'EBR0^16S<&$Z>6/OS]%>$V"0-.%(::4*\#3S61D#., M%$KJ@MJ/*/VOGSQ=3M0HTA_,Q%F<5Q^N0X="1LXHPV*JI9C%6N95#,QC5.#) MNT+?I%O6;&>&3>A6C"VO^4)O7U[!P6$NU+LB_ M2\^(HV1_5,^(8P0Q>6SL5KI",2P*"F4W62H^!'VQ)O;)! *M(C?I&>\JQF,HB +A7@ .7)'/ !1TBSWPYNC M2CD:IGL]_[TP# T_PC[89KZ("P!G+8C @"=@6KO:!%PBXS;SXGFF]?>9 '+^ M7;!;P-3.\C0 ''L?#$'#,YA%=RC3Z^+>T=IXR6H7XFSI:O<7<9NP]I\#.?<> M/U9G^1?L/J[@\Q^+5,N9\J;@9 >P7Y<;2NIRAC#PN >,P<<3EC12_M^.@M_Q M<[>ZJFFA^]PK8:W7LE:&E4!1+I(%]-EHID*L18TA(&^B> \1=/H\A6\_]Z?% M.EUVZ^L5?B!6OJ1?_?/"0);)9<52LJZ.L.<,3-!,!*D3?>LE]+DY.'G-C] V M\9".,5#R<,K"N!(9K/"_X"IV#57^4;M\XW4.2E8>\IBS*[''EM=:E66MA/<) M&2IKF)86J_^0F= F""5%=M$^*U5V6Z1^_PE?,?KES>[-N\T$1I?D'>W.33-Y M[C*+A@?:6SPC1@>0FD24 ^F=J-FM[I8HL*CH2R%?7M0"J:(9Q%"8H,7RY)..O$]+I,'@ M/(+6B<>PM01F*XG- )2UAGB9%I>+_<+N"J5V+%U_Z&H7Q>YRD6MT\Y47@@XC M_<>0UT[V@2NVN:0$$#%H6YS,C6I@AI(\\92E%A ]D_Q&]"+'L/"OEU>+JYO_ M7F2\(+YIKL>[7^=?GK,B^^+/(U7/[;%_>W'''\I0T(DF!U\9K+@D&F#BS,A9P.MA@&KL%[1NRW\M+B\WP=SY#PN>6&[K M0P/R&:R(R3!N7$W]P,B"2IZ%X"%D+8H03=(16AT:;/ODO"UO/V]ZA"\_[IVF MBR2-S8)'IFC7;.<2!G"6(2GVZ#@J-$U&J!VD:*:!_S&(N*_.EC/DM<>ASI+%35LP7T"1 K<1V_@*Q],Z4]MZ#(I./%0_6F+SF"+P M;;-\CK'H@)9%$+6K)GH6A7 L^92EY,F57J-(VXZA: >CUA+_WA"*8]@_#_@\ MTBX=/=\"BG WN?AA\H"#DX6=/+OI3I=6-Q[JI M)=]G @+]$VF$XLQR5YCVX!D(&RALX27D8)7@_9JR/-/Q$H.Q,39S)^\SMK]C M(W%LDH,WJM.F$ /]8;;4!.%0JS85*"9T%#F%XHH%YUJ\^UI!M_NSTRVP]I]RJ"3()E^KO.OB2_'VOS8TGN60H@>&S45_\ 1=.Y M/4T - [G9P"A]R2$3:7VR^OU8HGK]7Y';+2SX^3H6Q<9(@IB#'#F-=V[#1B,RP#&DNT'"B,Y%A:3JBU1G 1: MCX%&A\M?4S'Q>=]XTGV\!F4 JZ>.V$FWXKHDAGK ME4]0B/Q[%5L'>W?<^^A97!H,D5$W&L,F36K;T/]RT=5K0/B,UU>+=,^HG!!UYM:B_1/_&065RFGPJ"L9@XCQS'PZ;US=TLD2AC M*2HR$6K_@N05 ^,T$S$84Q(0&]LX)SV(FS@K]]P^RMCBFH&K,F3:3+2*%E$W M%JG9.M5!$0]Y8@5YP:@QB]2H)5Z;.4%GNRT_'3 CS HZ1GHS .BK;GWUMM3T MX:]/]-]WE_DB12E1:D'F'Q7YC2'3JZ28LCER$%FC:!3]'R)I%B:V'=Q&DL4, M4'7;&O";&YW:P62YQ@MII>+%(3F2=7Q72($!YLR2U"5PE3,/C7K6/$'5O"K" M&JBRL20R$]?NDM[Z^ LNR5F]I$6]R)\6R\5Z4Y;Y!??KXLGS5+QG'A2Y(Z@R M\S)J^E9@G4G)#30Z&^A#WKR*KD:'7 ,9S4"U525=U?.._)J@7JSV-C#4N=:> MTR)"+)),/X*/2MN8FU1%W2=D7B5/38SC8+X/QTUW!9?C7M']NDSD/+[IUNL+ M4*)8P>N-0:C=G$UFX*1F2D7OLK+!MFE^_0@MTT[\;(Z>4[D_"Z/W$]*ST[:^ M^\*+$CQ$,M2QD,G.2C"?A&')&O(3I?0I-*DF^9J(7J!QSQ8T@_E]P@S8C]O* M_+&LU1W<]T'L8GE=VP=N]T.W7+]$XAIN?X_BUSJ3>=FM%E\_N^T*]LZVM$AH!(D0EI7L.TDH;V$P(KJB1>;%!%-S&$ M9UQC+\#[9POXN:)E%MKW_1\DI)>PQORJ^U1]D*U>*-QY+WQB)4K/M-6T#DEN M2(XNI%2X0..:A!B/DM,+H.'9 G0$&?P87?"^:4)4FP^=J[COX(//7MW7CP6M MR_NX*=J'K!BWMF8>*@I<4R[D4W+41J0H>LT/GDUYWP.N;N]UDD290'B6O*FU MLS6W6P?!G#4^81*@4I.#E,?)F=>UPR L/ QO3^;[+ Y'[JWBYW@Z11*S1-9^ M-;N4!QZSPEJ4)CR9?^WJ)L<[GRU)%]*+7^-L1D/4M83-#UDDP^"[&3I#) M##"V*4[;.1J[,J?JMMZFY%JCL@E,8)VTXC4PL,HRJ[W2OF@I4YLNN4]1-3=T MG0* ^[[^:-*8 ;1>I%1;QM%Z$BZ^5.V^GR/JDC 1,^T_GIB6);(0G&?*EARD MYD'E)NE'APB:]HJ]*:!&D<$,L/2(3O] _W2CSHTUW $*)I1*=?:>9E B,"=C MXB$HCF?SK_8TS0Q135RK0?R?(Y3J0G9;+8FPCTR@< QXT!IEQGW8$D[31MH!8*3U8ZECHHD]Y)YA9:A M0*Y >BY#$Q_J.W3-#%=#Y7\?5R,*8_(!]O_3K?;KV5:U"*N,3,XPZ2T%+BH9 MYB%;%H01D?ZHI$?KSO+P\=-FBXUHU$;@[L38^ T^X=ORS1ING47N129GD>=< MKP7BIFV-8T)CJD-YG!T/(@>IF*[F^52Q=F/S>/*2L!WI+_;U3AW.H(.S;#YY.Y"/)J1N):7,1^,L=[8I\- H0)3/: MDI<6P%6+%UD&F7A)3O#2KPSLW@=/5Y;>4.!#F#87@;_:MYC*BMRG(LD.:J+= M%U)U2/H..)0$#H#G=)3 7QTA\-'-?V.!#V':7 3^T_XHQV13K/3,>A[(IXV9 MA>PRXRC!69DCQW*4P'\Z0N"CIVHW%O@0ILU%X*_W?<$E;WW/GB:;.K& A_"M+D(_.<=[1R$2+8$AKQ01"RT8=%EPX*! M)+@W/CMQE,!_/D+@HR= -Q;X$*9-WOCLNJ82?JZCDRMGMG$+#S9;%YC(3E4- MI9CG11#]]'@L(HU6^0:7WQ71A+N6K)[#G<@\'EQ!9>+?]4DY?75^FWYK^7G5?<%\[M5 M]QE75PM<;SL'8*X)\B\^U33"?^VZ:>Q^Y^;MBE[]#Z:K;7_+*!$D[*\LRIEGUDIL98%\\1BEL!0:6YE2@5+OR._8Y\\+>).D'!W+G;/ M0%,]T/]O[NJ2/$HKI&+6UW-NB)GYHH )%8#VF,8,33+Q#I,T;4WV.3*GAG%_ MCCAZAZOZ _B(XL)(!X4KS82N'2ULULQ'*Y@/I,.M@43?G 5)7Q$ULQ27@8+_ M'IZ&2F$>B'K08.S- N+B/RZK5W&!+GA-*I9)F2337I$W +7E MGC#<^U)D"*TP=@29,\O]' UUK23U(XR=W/UD'6^^G;!^K@K5[SW_[(6J1S&D M=;VJ=H8[478:23.T$ M*K2AT+LZ,E$XPT+R&FW2,9?1;K<.4C'=]<1(\NW&9O7$^N<%>:-$^?[RQ(.3 MT41.N\>1]RF4I-W#R=&U*((KL<38Q][W LFWCYX0&>/(L1N%J3,(+5__X_4^ M>U,BV=N!-+53": ,P9C6Q=(BWVDQ<,X#@D!$* MZ$%X)VH_7W+BM+2%>0W($!U7Q67GVR#RQQR <11@1AB <8ST?H3SSC?=\N.; MQ1?,E0E7DQU[]B3C[*>?0]C3^A TYAB DQ?@P)&2YH4@"L&R0ILAJ5Q,%FT. M &=T"$H.CXT.1!WD%@R*QC@$/49BLST$ MY0D@*1^8HE4P73R%SMYD%F1 U,A!^SYMR__=#D&/DGVO0]!C!#'C0U!1?$"O M+<7W2L,?W'Q^[+?^X^<0N0W3?W\7'W MU#F>>QXENNXD/LX@YNP5%H&TVI:0639&,7I)+#%UP%K2)JE0(*@^)67_>^PQ MV#XU$]<,(/AMD+.^%P3=NI#>>&^(0:R$VM[)ETP+LHD9F:*T7)22FIQT]"-O M7G[WZ;#HFLMH%H,J]N4#[R@JK_,XZ@2.32[W;TA!BQ)2&%.8SII6XQ1GD-&P M:'@QRF?A[]>NC5:<<9"H:7'6 @8/RR_&DV@8C,QAB,"( MTGW\&'4 JZ?.17V'J\U&6B9\O?S7S:>O.O^88A$H,0F=9"744 ME+6UKMH4E@Q$%9,,#SJ_SNP"K]EXB+-[+&.+:P80W!_:7@!:]"5'IG2]82K@ MR21#8%;(( 6WDH*()E=T.P)F8:)&%.W]2[@A?)[I-OB*3% MU9NN)D8/N>(X^%EC7%_T(W2DJXF[<7MWEVD$%HJX:T\,D6M/#*]8$#XPEY4K M!@L%U$UT]R.TG-RWY99_/R^6Q-,%7/ZZI(^^WNA6XN%+^NT_+TBA2D?FEAEG M:A:^)/U*XF;<):=523;+)BON1]ZT2N94A#QHT#*^2)Z9QMG8]%'USNX36VJ? MQXANJ(.D<\GBIAM/K>6S#EETOK!L0$3EO(/[LT%FJX-N.?KSMQQ]N]QM@.7' MKYZZX?/=-BB<%PDE,U.G%FI+/B ERP6'84J%'JT&9Q]"M'STU?'H.G!8-IS MB6\&?O4[6%_]=(T]%A8H)-&6UA2,M&0!8F91Z&TAP9C M@["-8)Z9W7RQA,N;]6+=E4._<4+6TND/;6E]!RZ]H8$VWA=M0V(19)U2XS@+ MRGJF9,@^>BMT:E*EU\! /[*K#BG]W[O+2_K17[#*%SYEKD,MH,V:8N)4BWBS ME[3Q0G**]KCC36[CAI$[/Z-\#(+NZ\,SB&P&YOCK)?W6754UD-]TL%S?K?K5 M]:KR_P)];6,9$RLZT@82+%,Q%!'0IA2:^XE/DS@M ,\!F"<-0-1*ZXR:BD4!&CC MDX[L!C0;UC=O-^ 8Z9WH!KQ>YK/'[^^O/WV"U4U7ME+ KX*">//B(TGE%5SA MQVYUTR"./_[A+>/Y$UG1,*X'X<';BO)0V^"# =*-QC+"> I"B2ACG[ZU(:G(4MST>+#D7P,MSW@,.49 :9LB M;BZU3&VA\GV_\T2Y/0X6>^6MLN9%5EY[7ABEJM:959J70^/#+5(OA3G MR&,^%P(/T#AS% [!2 \+JPQ^P#/R13:>MY(7L MBU2Z#E+SN?89%BQJ+$:@T,8WJ3D=3/'LCB_/@M/QA3E/U![RQM_<)JLG)PJY MX98!1PH<,0*+B2"6@RN(RH"?_$[]S=SZP$T=]HPKU7DBMUX=D$#SK\LON+ZJ MFGFR2J'D/D[#S1D2'S?8R.([_G M@LW;^X3HR&#(PF()A6EM' ,H@45/3GCR9%!&2_8S8'"*_&6#S M1=ITI?WJ8NN7%;%NOYJLT8%'S9SCEFD9"_-8% -CK JFV!R:G&$^3=;L/,ZV M^!M11L,1UUW!99_;Q]T;]4N$-?[?__/_ 5!+ P04 " #VJ0=17/!A!P,( M [*@ %P &-D>',R,#(P,#8S,&5X,S$Q_7#UZ?+N7Y^OV=1EBGW^\Z??;BY9H]7I?#FZ['2N M[J[8+W>__\;Z[:C+[@S/K712YUQU.M"M$?]*(XC8ZC:#A(AKWCXR@^_7<7C>R@>.ACW4+!AT8F\]84 M:/Q1O]<^'A1N/)?"34?=*/KGN.%ES\]2G3LFQ15L63 R#8)6_@?0'1S;/\Z# MMS@W8R5SJ+WO]KR_UP]3&4O'CKKM[KJSV]U,<&' [)N?W@$!B3:WK^Q-D_VJISG[MFV:W]?KY5K MT]R-V@,_K3=LRF? #,PDS#&SNJFT[(^2&XQ%M6"W4&CCF,[9S]IDK!NU_F Z MQ50KX$'BNM_D21O7^_2-K7=O;]?[)VYQE7$]LP6[S_5<@9A ,RR["8LM--J0 M:ZRV. 27.>/Y M.:,R6@IUA_?2E&%'"6X9.17+&4)_C*,)UAQG08-E\*I,ILR5]//:? M@X%*"3F02:NPP!-7F$LW10=M 8DWD/06:)H6Z.8,NPD6+U:GX0VB^NCOAVI@ MJ8X7\;Q>Z)*@3H1BRN@:"*.)>7% J%$44#1 MH=0CS"N$V2=#8R0)3X6;)%$J%$!L:P2@'\YZ>Q)NIRQ5>FYKX!N82.N01SO& MZ66P&ZULKN#7UL9L6/L&(=S?6PC?K:WW^W[QV%8@K>@5)3*=IA(?#^RA M!\,-XP8\[!!&,E9 \&" 6(^5M%/J06(9YG'*Y?0LI$V4MB7VHPQOD,!YF<+H M! 2^MNP X28 \1LP=?V03'D^ 7:!R?.V5"C1/>*M[N @A7=@0A/X5$2D\\# M[DD_HPR[$@X!GF3+S@.E:P.E.!#Y^31(4(+HS(L8Z*"_C\ _X(=[AOQA^[3K MY_4*+.[_$ "^FG\;G4TB&@DO[>Y=J.+'@$BK1@H<0I<&%6 6G4GK[U MT#[F,:NO5@8#BGOH5B3B$7[-JFI0H\0,C[98K:3P)Q:VC*T4DAM)#LA =7RM MRDE3:8E^^&"WGJOX3*XMH$$.*P=U*I"4RZ14G H0NN6->*0QV".0HE4NA]]B M($&L$=@?Q(MJPIZ&1KQ_H7'4WQ(:.Z?5C0C9/2'O'"@87#,I"/_$6 M8X=(.@4%-Z(&*(:,Y+%4TBV(V6P;EL+58]G#-$3:FN@*R?<%[J%RJ"A-@6%B M/1-+$FV$-\#3_0GD2+ 41@NV0$%A2"*XE0D1@>$J"ZPQ;S$FDOV+B:I<7,^X M*GU.)\!;M4,;Z4 M!MJ-I-_>D[*XWN?XJ(8P$VB/1S -\,90+/8/Q75F#P#9!!H=ME0DV+=L1?-W MY',B,CI)2D-P6F$-6[1FVCI\3P?QJ,LFJ.BOB+??/$4O3AV M]G.G/'A[.V5_TBWJP&L^9E-*[JO@?TRL!-_OH%T;>X*E=1SW!4X;NV0Z_@6J MS#+I',!72E>LD4M1NY!HGU=R@"&"E<)2)<+_:7=2QS7\54HTW\=PF2?^>.GP M_QOBUVGF=H9SH9#O(O^6B%\ZUJ #DD0"HJUB*+WX7A:@\9#I6V)& NL*.%9?Y]%N\5W\\S==" B'\/^%'[;_/K_)7.+\^S[.++ZEK,8- ># ;^9HPS^"=J_=6MF7:X-=-Q8K/Q]*0=15]I7^O<\>K# M$'1;H>#YA\91H^Y1XQ@M&_6*AR6NJQF@5SLN]7/I:0>FUS7.&3QL+Y9/X,EM6.[]T"[,&D M!X7[-[6?#9(E8@Z>AUQ.):3L^@&2DDYSV*>P?:"[>@?562%6#EBV5]N+P\TE MZ?C,]Z)+?5NN"*[H*72X6#D*/T;,8/6FX9,[B(WM/7F,<5$Z&%=C1YN7%9^_ MH_>\D6N?X5JEO^!Y_E]02P,$% @ ]JD'40"';>\*" 32H !< !C M9'AS,C R,# V,S!E>#,Q,G-P+FAT;>U:;6_;.!+^?K^"Z^*Z">#WQ&EBIP&Z M28H-L-=V<[XK[M.!$BF;B"1J2_W3U^7+\KR_7;.JRE'WYQR^_W5RR1JO3^7ITV>E M&QN>6^64SGG:Z5Q_:K#&U+EBV.G,Y_/V_*BMS:0SONV0JN-.JK65;>%$X^*< MWN!3,RD[ECL9'<2<%*J_()^RJDO6.M5B5UJ8N%49.I8_UN MO\N^:G.G9CRT.^52>5'K.>^$Y_..'^0\TF)Q<2[4C"GQOJ&BY/3DM"M[(CH] M.SX9=,].!H-^@G]XDW23TW_W8&0'XJ&/=8M4OF]D*F]-)8T_/.ZWWPT*-YHK MX:;#7K?[UU'#RUZ<)SIW&-! 0?@:]&QH<_+>M7BJ)OG0^S3*N)E@A$@[I[/A M*;0W@K:Z1\3CNXG192Y:L4ZU&9I)=- ?#)KU'^NVNX>CT/:FZ_^-2$$KX9E* M%\.?QRJ3EGV2D=$#+6AA/4APQV24-BL/OR^G9\\_'F M\L/XYO.G)^?@Y7I\O'UE;YI08RT;\P5&;+)8&J>2!7-3[MZ^&9R.OKW<"C.4 MNV&K1ZX67 C$G10O&>A/3$>O7?O[MSWPTWK#IGPFF9$S M)>=(JVZJ+/N]Y :!F"[8K2RT<4SG[*,V&>MU6[\SG2#/"GFO;)/=Y'$;ZWWV MRM:[O[?K_0NW6&6L9[9@=[F>IU),9#,LNPF++31LR#5*+8;@*F<\7R"G.5-* M>(KBZ^LP4,!9AB>C>,H2'N.583I#NG4)IZ6 3F!Q!11-X%A17BP )8H"BHXT?8!YA3#[:&A$DO \N$D2 M90H!8%L#@'XXZ^V)N9VR)-5S6P/?R(FR#B3:,4XO@]T)%=P'_-K:F UK7R&$ MC_<6PN.U]7[[YK3?>S>R%4@K>D6)3">)PN.!/?1@N&'<2 \[P$A%J21X, FL M1ZFR4^I!8AGR..5R>A;*QJFV)?I1AC< ]Z6>485?"(<"3;-EYH&1M MH 0#D9^/@P021&>>Q4 'Q_L(_ -^N&?(/VF?]?R\7DF+S1\ X*OY]]'9)*(1 M\]+NWH4J?B2!M&JDP"%T:: 672FK,_-D)*YUT/[F(>LOEH9C$RYAVY%(A[@ MUZRJ!C4J9'C88G6JA#^NL&5DE5#<*') !:KC:U5.FDI+],,'N_5ES*@%&)@GXMIIAJ>T6WKSD M43O4B/"XG4K[$$!'Y'<;"'ND2_>T!;M4,;Z4EK0;2;Z_)V51O<_Q42W#3, > MCV :X)6A6.P?BNO,'@"R"30Z;*E(L&_9BN8?R.=$9'0Z)(@+9-I'TI7AV-!*?TY$1TAYN;3K,%@UY79)L2A' M^SB2PAB3??/84/3MV]G.G/'A].V5_TBWJP&L^9%-* M[JO@?TBL!-\?H%T;>X*E=1S[ J>-73(=_P(JLTPY)^4W2E>DP:6H72C8YY4< M($10*2Q5(OQ/NY,ZKN4?I8+Y/H;+//;'2X?_WQ"_3#.W,YP/*?@N^+<"?NE8 M@PY(8B6!MHJE+#>F<\GOB'8$_NN)AV?N_BB^/EW\(0Q7>\APJ+0E 7.!CE8N M\^^3>*_X/KH8^FD4X>:YCP7QL64&.&&6O#-5W=MZ#OM:>)S<:STW:W^XWVM-2[>OCE&0/G/ MU1L?2SR]I D."D<5/FDXS"?S9["L=GSO%F!UTB-S\7>9*Z3)?X+9LB\&Q9XJ MGZ^CEU,E$_9QF>,^!_K[(E=J+T/AH#HQI-L,RUFFF5\Y5*SV'(>;L][QZ?!9 MU_RV7!I/;B4VMO?D$8*E=')4C=W=O+[X]*V]IXU< M^PP7+?V5SXO_ E!+ P04 " #VJ0=1L8*_M$ % "$&@ %P &-D>',R M,#(P,#8S,&5X,S(Q"_F179-B7#&5T+-* M3]/F:1BU(K?=:C5)&)[2H^,PBL)63%U" MXK\]--)!\6).IE8)?5%;,&[-J5Z_TVK8Q^U4^4L6JWG'<]W?_9J1/>M.!5>X MH$0%Q=="SSUMBMXHBR1LQCL&D[\@B#:YG%9H#U&/0GCM$+O-0S>X/3UI-%R_+Q8IX2OSY/F'@)K. MA5R YUIO82JD43EE6402^%1H!HI>B^%USNFSI]Z1ZS?=NNEV=2 9RB8XN+9F M0J-<8@-&W(3',+R)YH3/*%JT6+ LTY9OFE.87%E3A]=BSN&U#9<,W8KV7TF: M,1TSHZT_9W2*.G$-Q:XIC*93%J&!B%CK++$9T;'(,@C("F-31Z,X0VA_HO!6 MC>>,$QXQA+Q=8QUP4JH=?TT3?(H%4!+-84XE#5> $Q2;XOLTEUE.4+42L%'0 MBH@5OC-53?N-Q"+5NXK-.;@*>I$)LDZ;.HX3]%_[ MQ'\4\RU#_93$,>YEK(1.5:=YM(_)8"ASM :]NZ;>\K77LMO&MP%&M4S7:9Y@ M[D;(M$1GS3J3)/V4,TGUUC'3X;Y#HP."R2O!:Q_$AVN>?$F^=>*59/%.FRVD MR:FO:?\_57;2U(>IPCB6Y@4QA9]Q$^N*/83ITI]B@=)$J>MADB2 PF@#5K2R M%#P3*95FI>Q.%;0?I,T/MN3_>MIN1K5V-L!8 MF!(-O7R69ZI(X>.BB3YF![CM,'94X%8D3.@:N) QE1IT0M*,=JHO?LRR-"&K M#N/&/#/)O]9M"_M\N8@2:7EV;+?M=KMMCH\*XZ#B2G]YM+2+HZ6CXON#IR>V MZWYE_-9DQZ@OEM#]'EGVHM:L53.J?$#+.HWT9IT?I0?TJT>&>L.7.KFV0;^= M?!N53Q:AO$^S;Q#AT82ZS<-'(M)EK77L9^;SSK9I3:E=\W')3[T6^A,RD; 8 M*N![%X ]<'JA;>R4CM92IL%,4O^WWM>1)%.%WI:XR':Z1C M=H?_ZG;@Z_OW5!0W-!U)$Z(+]N:5Q9W+C-KVF23$9,D5]',M,C R,# V,S N:'1M4$L! A0#% @ ]JD' M4:#C2S&^%0 CP ! !$ ( !X!4# &-D>',M,C R,# V,S N M>'-D4$L! A0#% @ ]JD'4=IZH >X(0 DF\! !4 ( ! MS2L# &-D>',M,C R,# V,S!?8V%L+GAM;%!+ 0(4 Q0 ( /:I!U$_%F\Z M=I, #?X!@ 5 " ;A- P!C9'AS+3(P,C P-C,P7V1E9BYX M;6Q02P$"% ,4 " #VJ0=1^MK8=J?W K5@H %0 @ %A MX0, 8V1X&UL4$L! A0#% @ ]JD'48IGF?2T MO0 ,,H( !4 ( !.]D$ &-D>',M,C R,# V,S!?<')E+GAM M;%!+ 0(4 Q0 ( /:I!U%<\&$' P@ #LJ 7 " 2*7 M!0!C9'AS,C R,# V,S!E>#,Q,7-P+FAT;5!+ 0(4 Q0 ( /:I!U$ AVWO M"@@ $TJ 7 " 5J?!0!C9'AS,C R,# V,S!E>#,Q,G-P M+FAT;5!+ 0(4 Q0 ( /:I!U&Q@K^T0 4 (0: 7 " M 9FG!0!C9'AS,C R,# V,S!E>#,R,7-P+FAT;5!+!08 "0 ) %D" . %K04 ! end