0001200375-20-000020.txt : 20200508 0001200375-20-000020.hdr.sgml : 20200508 20200508165041 ACCESSION NUMBER: 0001200375-20-000020 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 82 CONFORMED PERIOD OF REPORT: 20200331 FILED AS OF DATE: 20200508 DATE AS OF CHANGE: 20200508 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: 20861380 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-20200331.htm 10-Q cdxs-20200331
0001200375false2020Q112/311,72391919133505000012003752020-01-012020-03-31xbrli:shares00012003752020-04-30iso4217:USD00012003752020-03-3100012003752019-12-310001200375country:US2020-03-31iso4217:USDxbrli:shares0001200375cdxs:ProductSalesMember2020-01-012020-03-310001200375cdxs:ProductSalesMember2019-01-012019-03-310001200375cdxs:ResearchandDevelopmentRevenueMember2020-01-012020-03-310001200375cdxs:ResearchandDevelopmentRevenueMember2019-01-012019-03-3100012003752019-01-012019-03-310001200375us-gaap:CommonStockMember2019-12-310001200375us-gaap:AdditionalPaidInCapitalMember2019-12-310001200375us-gaap:RetainedEarningsMember2019-12-310001200375us-gaap:CommonStockMember2020-01-012020-03-310001200375us-gaap:AdditionalPaidInCapitalMember2020-01-012020-03-310001200375us-gaap:RetainedEarningsMember2020-01-012020-03-310001200375us-gaap:CommonStockMember2020-03-310001200375us-gaap:AdditionalPaidInCapitalMember2020-03-310001200375us-gaap:RetainedEarningsMember2020-03-310001200375us-gaap:CommonStockMember2018-12-310001200375us-gaap:AdditionalPaidInCapitalMember2018-12-310001200375us-gaap:RetainedEarningsMember2018-12-3100012003752018-12-310001200375us-gaap:CommonStockMember2019-01-012019-03-310001200375us-gaap:AdditionalPaidInCapitalMember2019-01-012019-03-310001200375us-gaap:RetainedEarningsMember2019-01-012019-03-310001200375us-gaap:CommonStockMember2019-03-310001200375us-gaap:AdditionalPaidInCapitalMember2019-03-310001200375us-gaap:RetainedEarningsMember2019-03-3100012003752019-03-310001200375cdxs:CDX6114Memberus-gaap:CollaborativeArrangementMembercdxs:NestecLtd.NestleHealthSciencesMember2018-12-012018-12-31cdxs:reportingUnitxbrli:pure0001200375cdxs:PerformanceEnzymesMember2020-03-310001200375cdxs:NovelBiotherapeuticsMember2020-03-310001200375cdxs:ProductSalesMembercdxs:CoreSegmentMember2020-01-012020-03-310001200375cdxs:ProductSalesMembercdxs:CoreSegmentMember2019-01-012019-03-310001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:CoreSegmentMember2020-01-012020-03-310001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMember2020-01-012020-03-310001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:CoreSegmentMember2019-01-012019-03-310001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMember2019-01-012019-03-310001200375cdxs:CoreSegmentMember2020-01-012020-03-310001200375cdxs:BiotherapeuticSegmentMember2020-01-012020-03-310001200375cdxs:CoreSegmentMember2019-01-012019-03-310001200375cdxs:BiotherapeuticSegmentMember2019-01-012019-03-310001200375srt:AmericasMembercdxs:CoreSegmentMember2020-01-012020-03-310001200375srt:AmericasMembercdxs:BiotherapeuticSegmentMember2020-01-012020-03-310001200375srt:AmericasMember2020-01-012020-03-310001200375srt:AmericasMembercdxs:CoreSegmentMember2019-01-012019-03-310001200375srt:AmericasMember2019-01-012019-03-310001200375us-gaap:EMEAMembercdxs:CoreSegmentMember2020-01-012020-03-310001200375us-gaap:EMEAMembercdxs:BiotherapeuticSegmentMember2020-01-012020-03-310001200375us-gaap:EMEAMember2020-01-012020-03-310001200375us-gaap:EMEAMembercdxs:CoreSegmentMember2019-01-012019-03-310001200375us-gaap:EMEAMembercdxs:BiotherapeuticSegmentMember2019-01-012019-03-310001200375us-gaap:EMEAMember2019-01-012019-03-310001200375cdxs:APACMembercdxs:CoreSegmentMember2020-01-012020-03-310001200375cdxs:APACMember2020-01-012020-03-310001200375cdxs:APACMembercdxs:CoreSegmentMember2019-01-012019-03-310001200375cdxs:APACMember2019-01-012019-03-3100012003752020-04-01cdxs:ProductSalesMember2020-03-3100012003752021-01-01cdxs:ProductSalesMember2020-03-3100012003752022-01-01cdxs:ProductSalesMember2020-03-310001200375cdxs:ProductSalesMember2020-03-3100012003752020-04-01cdxs:ResearchandDevelopmentRevenueMember2020-03-310001200375cdxs:ResearchandDevelopmentRevenueMember2021-01-012020-03-3100012003752022-01-01cdxs:ResearchandDevelopmentRevenueMember2020-03-310001200375cdxs:ResearchandDevelopmentRevenueMember2020-03-3100012003752020-04-012020-03-3100012003752021-01-012020-03-3100012003752022-01-012020-03-310001200375us-gaap:StockCompensationPlanMember2020-01-012020-03-310001200375us-gaap:StockCompensationPlanMember2019-01-012019-03-310001200375cdxs:GSKMembersrt:MinimumMember2020-03-310001200375srt:MaximumMembercdxs:GSKMember2020-03-310001200375cdxs:GSKMember2019-01-012019-12-310001200375cdxs:GSKMember2020-03-310001200375cdxs:GSKMember2019-12-310001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2020-01-012020-03-310001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2019-01-012019-03-310001200375cdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2015-08-310001200375us-gaap:MaintenanceMembercdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2019-01-012019-12-310001200375us-gaap:MaintenanceMembercdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2020-01-012020-03-310001200375us-gaap:MaintenanceMembercdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2020-03-310001200375us-gaap:MaintenanceMembercdxs:MerckMembercdxs:TechnologyTransferCollaborationandLicenseAgreementMember2019-12-310001200375cdxs:MerckMembercdxs:SupplyAgreementMember2015-12-012015-12-310001200375cdxs:MerckMembercdxs:ProductSalesMembercdxs:SupplyAgreementMember2020-01-012020-03-310001200375cdxs:MerckMembercdxs:ProductSalesMembercdxs:SupplyAgreementMember2019-01-012019-03-310001200375cdxs:TateLyleMembercdxs:SupplyAgreementMember2019-12-310001200375cdxs:TateLyleMembercdxs:SupplyAgreementMember2020-03-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2017-10-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:MilestoneOneMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2017-10-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:MilestoneTwoMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2017-10-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2020-01-012020-03-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2019-01-012019-03-310001200375cdxs:ResearchandDevelopmentAgreementMembercdxs:TateLyleMember2019-12-310001200375cdxs:ResearchandDevelopmentAgreementMembercdxs:TateLyleMember2020-03-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2019-12-310001200375cdxs:CDX6114Membercdxs:NestecLtd.NestleHealthSciencesMember2019-01-012019-12-310001200375srt:MaximumMembercdxs:NestecLtd.NestleHealthSciencesMembercdxs:ResearchandDevelopmentAgreementMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2017-10-310001200375srt:MaximumMembercdxs:SalesBasedMilestoneMembercdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2017-10-310001200375cdxs:SalesBasedMilestoneMembercdxs:NestecLtd.NestleHealthSciencesMembercdxs:GlobalDevelopmentOptionandLicenseAgreementMember2017-10-012017-10-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:StrategicCollaborationAgreementMember2017-12-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:StrategicCollaborationAgreementMember2018-09-300001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:StrategicCollaborationAgreementMember2020-01-012020-03-310001200375cdxs:NestecLtd.NestleHealthSciencesMembercdxs:StrategicCollaborationAgreementMember2019-01-012019-03-310001200375cdxs:PortonMembercdxs:MilestoneOneMember2018-04-300001200375cdxs:PortonMembercdxs:MilestoneOneMember2018-04-012018-04-300001200375cdxs:MilestoneTwoMembercdxs:PortonMember2018-04-300001200375cdxs:PortonMember2018-10-012018-12-310001200375cdxs:PortonMember2020-01-012020-03-310001200375cdxs:PortonMember2019-01-012019-03-310001200375cdxs:TateLyleMember2020-01-012020-03-310001200375cdxs:NovartisMember2019-05-012019-05-310001200375cdxs:NovartisMember2019-05-310001200375cdxs:MilestoneOneMembercdxs:NovartisMember2019-05-310001200375cdxs:MilestoneTwoMembercdxs:NovartisMember2019-05-310001200375cdxs:ComputerEquipmentAndSoftwareMembercdxs:NovartisMember2019-05-310001200375us-gaap:RoyaltyMembercdxs:NovartisMember2019-05-012019-05-310001200375cdxs:NovartisMember2020-01-012020-03-310001200375cdxs:MilestoneOneMembercdxs:RocheMember2019-12-012019-12-310001200375cdxs:MilestoneTwoMembercdxs:RocheMember2019-12-012019-12-310001200375cdxs:RocheMember2020-01-012020-03-310001200375cdxs:UpFrontPaymentMembercdxs:TakedaPharmaceuticalCoLtdMember2020-03-310001200375cdxs:ResearchAndDevelopmentReimbursementMembercdxs:TakedaPharmaceuticalCoLtdMember2020-03-310001200375cdxs:TakedaPharmaceuticalCoLtdMembercdxs:MilestonePaymentPerTargetGeneMember2020-03-310001200375cdxs:TakedaPharmaceuticalCoLtdMember2020-01-012020-03-310001200375cdxs:TakedaPharmaceuticalCoLtdMember2020-03-310001200375us-gaap:MoneyMarketFundsMember2020-03-310001200375us-gaap:MoneyMarketFundsMember2019-12-310001200375us-gaap:CashMember2020-03-310001200375us-gaap:CashMember2019-12-310001200375us-gaap:FairValueInputsLevel1Memberus-gaap:MoneyMarketFundsMember2020-03-310001200375us-gaap:FairValueInputsLevel1Memberus-gaap:MoneyMarketFundsMember2019-12-310001200375cdxs:LaboratoryEquipmentMember2020-03-310001200375cdxs:LaboratoryEquipmentMember2019-12-310001200375us-gaap:LeaseholdImprovementsMember2020-03-310001200375us-gaap:LeaseholdImprovementsMember2019-12-310001200375us-gaap:ComputerEquipmentMember2020-03-310001200375us-gaap:ComputerEquipmentMember2019-12-310001200375cdxs:OfficeEquipmentAndFurnitureMember2020-03-310001200375cdxs:OfficeEquipmentAndFurnitureMember2019-12-310001200375us-gaap:ConstructionInProgressMember2020-03-310001200375us-gaap:ConstructionInProgressMember2019-12-310001200375cdxs:A2019PlanMember2019-06-300001200375cdxs:IncentiveStockOptionsMember2019-06-012019-06-300001200375cdxs:NonStatutoryStockOptionsMember2019-06-012019-06-300001200375us-gaap:EmployeeStockOptionMember2019-06-012019-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:EmployeeStockOptionMember2019-06-012019-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:EmployeeStockOptionMember2019-06-012019-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:RestrictedStockUnitsRSUMember2019-06-012019-06-30cdxs:installment0001200375cdxs:A2019PlanMemberus-gaap:PerformanceSharesMember2019-06-300001200375cdxs:A2019PlanMemberus-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:PerformanceSharesMember2019-06-012019-06-300001200375cdxs:A2019PlanMemberus-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:PerformanceSharesMember2019-06-012019-06-300001200375us-gaap:PerformanceSharesMember2019-06-012019-06-300001200375us-gaap:PerformanceSharesMembercdxs:A2020PSUAndPBOPlanMember2020-03-310001200375cdxs:A2019PSUandPBOPlanMemberus-gaap:PerformanceSharesMember2020-03-310001200375us-gaap:ShareBasedCompensationAwardTrancheOneMembercdxs:A2019PSUandPBOPlanMemberus-gaap:PerformanceSharesMember2020-01-012020-03-310001200375us-gaap:ShareBasedCompensationAwardTrancheTwoMembercdxs:A2019PSUandPBOPlanMemberus-gaap:PerformanceSharesMember2020-01-012020-03-310001200375cdxs:A2018PSUandPBOPlanMemberus-gaap:PerformanceSharesMember2019-03-310001200375cdxs:A2018PSUandPBOPlanMemberus-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:PerformanceSharesMember2019-01-012019-03-310001200375cdxs:A2018PSUandPBOPlanMemberus-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:PerformanceSharesMember2019-01-012019-03-310001200375us-gaap:ResearchAndDevelopmentExpenseMember2020-01-012020-03-310001200375us-gaap:ResearchAndDevelopmentExpenseMember2019-01-012019-03-310001200375us-gaap:SellingGeneralAndAdministrativeExpensesMember2020-01-012020-03-310001200375us-gaap:SellingGeneralAndAdministrativeExpensesMember2019-01-012019-03-310001200375us-gaap:EmployeeStockOptionMember2020-01-012020-03-310001200375us-gaap:EmployeeStockOptionMember2019-01-012019-03-310001200375cdxs:RSAsandRSUsMember2020-01-012020-03-310001200375cdxs:RSAsandRSUsMember2019-01-012019-03-310001200375cdxs:PerformanceStockUnitsMember2020-01-012020-03-310001200375cdxs:PerformanceStockUnitsMember2019-01-012019-03-310001200375cdxs:PerformanceBasedOptionsPBOsMember2020-01-012020-03-310001200375cdxs:PerformanceBasedOptionsPBOsMember2019-01-012019-03-310001200375us-gaap:EmployeeStockOptionMember2020-03-310001200375cdxs:RSAsandRSUsMember2020-03-310001200375cdxs:PerformanceStockUnitsMember2020-03-310001200375cdxs:PerformanceBasedOptionsPBOsMember2020-03-310001200375us-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:RestrictedStockUnitsRSUMember2019-06-012019-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:PerformanceSharesMember2019-06-012019-06-300001200375us-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:PerformanceSharesMember2019-06-012019-06-30utr:sqftcdxs:security0001200375cdxs:A200220PenobscotMember2020-03-310001200375cdxs:A400PenoscotMember2020-03-310001200375cdxs:A501ChesapeakeMember2020-03-310001200375cdxs:A101SaginawMember2020-01-310001200375us-gaap:SubsequentEventMembercdxs:A101SaginawMember2020-04-3000012003752019-01-012019-12-310001200375us-gaap:DemandDepositsMember2019-12-310001200375us-gaap:DemandDepositsMember2020-03-3100012003752017-02-012017-02-2800012003752017-02-2800012003752017-04-012017-04-3000012003752017-04-300001200375cdxs:April2016Memberus-gaap:SupplyCommitmentMember2020-03-310001200375us-gaap:SupplyCommitmentMembercdxs:September2019Member2020-03-310001200375us-gaap:SupplyCommitmentMember2020-03-310001200375cdxs:TermLoanMember2017-06-300001200375us-gaap:RevolvingCreditFacilityMember2017-06-300001200375us-gaap:RevolvingCreditFacilityMember2017-06-302017-06-300001200375us-gaap:LondonInterbankOfferedRateLIBORMembercdxs:TermLoanMember2017-06-302017-06-300001200375us-gaap:RevolvingCreditFacilityMemberus-gaap:PrimeRateMember2017-06-302017-06-300001200375us-gaap:IndemnificationGuaranteeMember2020-03-31cdxs:segment0001200375us-gaap:OperatingSegmentsMembercdxs:ProductSalesMembercdxs:CoreSegmentMember2020-01-012020-03-310001200375us-gaap:OperatingSegmentsMembercdxs:ProductSalesMember2020-01-012020-03-310001200375us-gaap:OperatingSegmentsMembercdxs:ProductSalesMembercdxs:CoreSegmentMember2019-01-012019-03-310001200375us-gaap:OperatingSegmentsMembercdxs:ProductSalesMember2019-01-012019-03-310001200375cdxs:ResearchandDevelopmentRevenueMemberus-gaap:OperatingSegmentsMembercdxs:CoreSegmentMember2020-01-012020-03-310001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMemberus-gaap:OperatingSegmentsMember2020-01-012020-03-310001200375cdxs:ResearchandDevelopmentRevenueMemberus-gaap:OperatingSegmentsMember2020-01-012020-03-310001200375cdxs:ResearchandDevelopmentRevenueMemberus-gaap:OperatingSegmentsMembercdxs:CoreSegmentMember2019-01-012019-03-310001200375cdxs:ResearchandDevelopmentRevenueMembercdxs:BiotherapeuticSegmentMemberus-gaap:OperatingSegmentsMember2019-01-012019-03-310001200375cdxs:ResearchandDevelopmentRevenueMemberus-gaap:OperatingSegmentsMember2019-01-012019-03-310001200375us-gaap:OperatingSegmentsMembercdxs:CoreSegmentMember2020-01-012020-03-310001200375us-gaap:OperatingSegmentsMembercdxs:BiotherapeuticSegmentMember2020-01-012020-03-310001200375us-gaap:OperatingSegmentsMember2020-01-012020-03-310001200375us-gaap:OperatingSegmentsMembercdxs:CoreSegmentMember2019-01-012019-03-310001200375us-gaap:OperatingSegmentsMembercdxs:BiotherapeuticSegmentMember2019-01-012019-03-310001200375us-gaap:OperatingSegmentsMember2019-01-012019-03-310001200375us-gaap:CorporateNonSegmentMember2020-01-012020-03-310001200375us-gaap:CorporateNonSegmentMember2019-01-012019-03-310001200375cdxs:CustomerAMemberus-gaap:SalesRevenueProductLineMember2020-01-012020-03-310001200375cdxs:CustomerAMemberus-gaap:SalesRevenueProductLineMember2019-01-012019-03-310001200375us-gaap:SalesRevenueProductLineMembercdxs:CustomerBMember2020-01-012020-03-310001200375us-gaap:SalesRevenueProductLineMembercdxs:CustomerBMember2019-01-012019-03-310001200375cdxs:CustomerCMemberus-gaap:SalesRevenueProductLineMember2020-01-012020-03-310001200375cdxs:CustomerCMemberus-gaap:SalesRevenueProductLineMember2019-01-012019-03-310001200375cdxs:CustomerDMemberus-gaap:SalesRevenueProductLineMember2020-01-012020-03-310001200375cdxs:CustomerDMemberus-gaap:SalesRevenueProductLineMember2019-01-012019-03-310001200375cdxs:CustomerAMemberus-gaap:AccountsReceivableMember2020-01-012020-03-310001200375cdxs:CustomerAMemberus-gaap:AccountsReceivableMember2019-01-012019-12-310001200375us-gaap:AccountsReceivableMembercdxs:CustomerDMember2020-01-012020-03-310001200375us-gaap:AccountsReceivableMembercdxs:CustomerDMember2019-01-012019-12-310001200375country:US2019-12-310001200375cdxs:PerformanceEnzymesMemberus-gaap:OperatingSegmentsMember2020-03-310001200375cdxs:NovelBiotherapeuticsMemberus-gaap:OperatingSegmentsMember2020-03-310001200375us-gaap:OperatingSegmentsMember2020-03-310001200375cdxs:PerformanceEnzymesMemberus-gaap:OperatingSegmentsMember2019-12-310001200375cdxs:NovelBiotherapeuticsMemberus-gaap:OperatingSegmentsMember2019-12-310001200375us-gaap:OperatingSegmentsMember2019-12-3100012003752020-01-010001200375us-gaap:FinancingReceivables30To59DaysPastDueMember2020-03-310001200375us-gaap:FinancingReceivables60To89DaysPastDueMember2020-03-310001200375us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember2020-03-310001200375us-gaap:FinancingReceivables30To59DaysPastDueMember2019-12-310001200375us-gaap:FinancingReceivables60To89DaysPastDueMember2019-12-310001200375us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember2019-12-310001200375us-gaap:SubsequentEventMembercdxs:NovartisMember2020-04-300001200375us-gaap:SubsequentEventMembercdxs:NovartisMember2020-04-012020-04-30

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 March 31, 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 April 30, 2020, there were 59,018,437 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 March 31, 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)
March 31, 2020December 31, 2019
Assets
Current assets:
Cash and cash equivalents$87,327  $90,498  
Restricted cash, current627  661  
Financial assets:
Accounts receivable8,384  9,063  
Contract assets619  1,027  
Unbilled receivables13,949  10,099  
   Total Financial assets22,952  20,189  
        Less: allowances(34) (34) 
        Total Financial assets, net22,918  20,155  
Inventories701  371  
Prepaid expenses and other current assets2,989  2,520  
Total current assets114,562  114,205  
Restricted cash1,062  1,062  
Right-of-use assets - Operating leases, net23,199  23,837  
Right-of-use assets - Finance leases, net214  268  
Property and equipment, net6,647  6,282  
Goodwill3,241  3,241  
Other non-current assets547  178  
Total assets$149,472  $149,073  
Liabilities and Stockholders' Equity
Current liabilities:
Accounts payable$2,441  $2,621  
Accrued compensation3,124  5,003  
Other accrued liabilities8,923  6,540  
Current portion of lease obligations - Operating leases1,815  1,107  
Current portion of lease obligations - Finance leases9  60  
Deferred revenue5,970  57  
Total current liabilities22,282  15,388  
Deferred revenue, net of current portion2,566  1,987  
Long-term lease obligations - Operating leases24,319  24,951  
Other long-term liabilities1,239  1,230  
Total liabilities50,406  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,017 shares and 58,877 shares issued and outstanding at March 31, 2020 and December 31, 2019, respectively
6  6  
Additional paid-in capital449,121  447,920  
Accumulated deficit(350,061) (342,409) 
Total stockholders' equity99,066  105,517  
Total liabilities and stockholders' equity$149,472  $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 March 31,
 20202019
Revenues:
Product revenue$5,100  $7,988  
Research and development revenue9,570  7,595  
Total revenues14,670  15,583  
Costs and operating expenses:
Cost of product revenue2,541  4,391  
Research and development10,967  8,016  
Selling, general and administrative8,989  8,415  
Total costs and operating expenses22,497  20,822  
Loss from operations(7,827) (5,239) 
Interest income266  231  
Other expenses, net  (86) (125) 
Loss before income taxes  (7,647) (5,133) 
Provision for income taxes5  3  
Net loss$(7,652) $(5,136) 
Net loss per share, basic and diluted  $(0.13) $(0.09) 
Weighted average common stock shares used in computing net loss per share, basic and diluted58,888  54,170  

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 March 31, 2020SharesAmount
Balance as of January 1, 2020  58,877  $6  $447,920  $(342,409) $105,517  
Exercise of stock options  5  —  39  —  39  
Release of stock awards  219  —  —  —  —  
Employee stock-based compensation  —  —  2,169  —  2,169  
Taxes paid related to net share settlement of equity awards  (84) —  (1,007) —  (1,007) 
Net loss—  —  —  (7,652) (7,652) 
Balance as of March 31, 202059,017  $6  $449,121  $(350,061) $99,066  

Common StockAdditional
paid-in
Capital
Accumulated DeficitTotal Stockholders' Equity
Three months ended March 31, 2019SharesAmount
Balance as of January 1, 2019  54,065  $5  $386,775  $(330,474) $56,306  
Exercise of stock options  219  —  776  —  776  
Release of stock awards  402  —  —  —  —  
Employee stock-based compensation  —  —  2,063  —  2,063  
Taxes paid related to net share settlement of equity awards  (145) —  (2,799) —  (2,799) 
Net loss  —  —  —  (5,136) (5,136) 
Balance as of March 31, 2019  54,541  $5  $386,815  $(335,610) $51,210  

See accompanying notes to the unaudited condensed consolidated financial statements

5



Codexis, Inc.
Condensed Consolidated Statements of Cash Flows
(Unaudited, in Thousands)
Three Months Ended March 31,
 20202019
Operating activities:
Net loss$(7,652) $(5,136) 
Adjustments to reconcile net loss to net cash used in operating activities:
Depreciation438  319  
Amortization expense - right-of-use assets - operating and finance leases692  759  
Stock-based compensation2,169  2,063  
Unrealized loss on investment in equity securities  103  
Changes in operating assets and liabilities:
Accounts receivable, net679  (1,053) 
Contract assets408  35  
Unbilled receivables(3,850) (7) 
Inventories(330) (44) 
Prepaid expenses and other current assets(469) (163) 
Other non-current assets(369) 38  
Accounts payable(246) (999) 
Accrued compensation(1,879) 1,196  
Other accrued liabilities3,116  3,591  
Other long-term liabilities(624) (616) 
Deferred revenue6,492  (2,937) 
Net cash used in operating activities(1,425) (2,851) 
Investing activities:
Purchase of property and equipment(761) (445) 
Net cash used in investing activities(761) (445) 
Financing activities:
Proceeds from exercises of stock options
39  776  
Payments of lease obligations - Finance leases(51) (59) 
Taxes paid related to net share settlement of equity awards(1,007) (2,799) 
Net cash used in financing activities(1,019) (2,082) 
Net decrease in cash, cash equivalents and restricted cash(3,205) (5,378) 
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$89,016  $49,107  
Supplemental disclosure of cash flow information
Interest paid$4  $22  
Purchase of property and equipment recorded in accounts payable and accrued expenses$182  $142  

6




The following table provides a reconciliation of cash, cash equivalents and restricted cash reported within the unaudited condensed consolidated balance sheets as of March 31, 2020 and March 31, 2019 to the total of the same such amounts shown above:
 Three Months Ended March 31,
 20202019
Cash and cash equivalents$87,327  $47,322  
Restricted cash, current and non-current 1,689  1,785  
Total cash, cash equivalents and restricted cash at the end of the period$89,016  $49,107  
See accompanying notes to the unaudited condensed consolidated financial statements
7



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 our 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 Codexis’ 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, Codexis’ EvoT4™ DNA ligase.
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
8



potential treatment of 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, Codexis 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. The parties will begin collaborative work on three initial programs for the treatment of Fabry disease, Pompe disease, and an unnamed blood factor deficiency. Codexis 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.
9



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 disrupted as a result of local shelter-in-place orders and any disruptions in operations of our customers with whom we collaborate. For the three months ended March 31, 2020, the COVID-19 pandemic resulted in lower research and development revenues of approximately $0.6 million as completion of those services were deferred to the future periods. We are unable to fully determine and quantify the extent to which delays in our R&D projects will be affected by the COVID-19 pandemic. 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.
In the U.S., the impact of COVID-19, including governmental orders governing the operation of non-essential businesses during the pandemic, has caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Our Redwood City employees have been working from home since mid-March 2020, while ensuring essential staffing levels in our operations remain in place.
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 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 months ended March 31, 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 March 31, 2020, results of our operations for the three
10


months ended March 31, 2020 and 2019, changes in stockholders' equity for the three months ended March 31, 2020 and 2019, and cash flows for the three months ended March 31, 2020 and 2019. The interim results are not necessarily indicative of the results for any future interim periods or for the entire year. The results of the three months ended March 31, 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 a 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 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:
Valuation Allowance 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.
11


In the three months ended March 31, 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.
Valuation Allowance 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.
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 quarter ended March 31, 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 March 31, 2020 and the assigned goodwill to its fair value at March 31, 2020. We concluded that there was no goodwill impairment at March 31, 2020.
12


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 our 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: 1) permitting net operating loss carrybacks to offset 100% of taxable income for taxable years beginning before 2021, 2) accelerating alternative minimum tax credit refunds, 3) temporarily increasing the allowable business interest deduction from 30% to 50% of adjusted taxable income, and 4) 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 on January 1, 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 of this standard 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 on January 1, 2020 using a prospective approach. The adoption of this standard 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
13


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 on January 1, 2020. Adoption of this standard 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 on January 1, 2020. Adoption of this standard 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.

14


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).
Segment information is as follows (in thousands):
Three months ended March 31, 2020Three months ended March 31, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Major products and service:
       Product Revenue$5,100  $—  $5,100  $7,988  $—  $7,988  
Research and development revenue5,774  3,796  9,570  2,099  5,496  7,595  
Total revenues$10,874  $3,796  $14,670  $10,087  $5,496  $15,583  
Primary geographical markets:
Americas
$2,999  $2,226  $5,225  $2,838  $—  $2,838  
EMEA
4,401  1,570  5,971  2,230  5,496  7,726  
APAC
3,474  —  3,474  5,019  —  5,019  
Total revenues$10,874  $3,796  $14,670  $10,087  $5,496  $15,583  

Contract Balances
The following table presents balances of contract assets, unbilled receivables, contract costs, and contract liabilities (in thousands):
March 31, 2020December 31, 2019
Contract Assets$619  $1,027  
Unbilled receivables$13,949  $10,099  
Contract Costs$300  $  
Contract Liabilities: Deferred Revenue$8,536  $2,044  


We had no asset impairment charges related to contract assets in the three months ended March 31, 2020 and 2019.
During the three months ended March 31, 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.
15


During the three months ended March 31, 2020 and 2019, we recognized the following revenues (in thousands):
Three months ended March 31,
20202019
Amounts included in contract liabilities at the beginning of the period:
     Performance obligations satisfied$57  $2,385  
Changes in the period:
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods(643) 136  
Performance obligations satisfied from new activities in the period - contract revenue15,256  13,062  
Total revenues$14,670  $15,583  

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 March 31, 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$66  $364  $1,623  $2,053  
Research and development revenue5,776  707    6,483  
Total revenues$5,842  $1,071  $1,623  $8,536  

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 March 31,
 20202019
Shares issuable under the Equity Incentive Plan5,071  6,750  

16


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 and we recognized research and development revenue of $2.0 million in the year ended December 31, 2019. We had no deferred revenue balances as of March 31, 2020 and December 31, 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 of $0.9 million and $1.0 million for the three months ended March 31, 2020 and 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 as license fee revenue accordingly. Pursuant to the agreement, Merck has options to future technology enhancements for a specified fee. As of March 31, 2020, Merck has not exercised its option for technology enhancements. We recognized $25 thousand in research and development revenues under the terms of the amendment in the three months ended March 31, 2020. As of March 31, 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.
17


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 $1.8 million and $5.3 million for the three months ended March 31, 2020, and 2019, respectively, in product revenue under this agreement.
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 March 31, 2020 and December 31, 2019, we had deferred revenue balances from the supply agreement of $2.0 million. 
Global Development, Option and License Agreement and Strategic Collaboration 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 are being recognized over time as the development work is being performed. Revenue 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 all performance obligations under the agreement. We recognized development fees of nil and $1.3 million in research and development revenue for the three months ended March 31, 2020 and 2019, respectively. We had deferred revenue balances related to the development fees attributed to the milestone payment and up-front fees of a nominal amount at March 31, 2020 and $13 thousand at December 31, 2019.
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 addition to the Nestlé Agreement, we and Nestlé Health Science entered into a Strategic Collaboration Agreement (the “Strategic Collaboration Agreement”) pursuant to which we and Nestlé Health Science will collaborate 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. We recognized research and development fees of $1.6 million and $1.2 million for the three months ended March 31, 2020 and 2019, respectively. The Strategic Collaboration Agreement has been extended through December 2021.
18


Development Agreement
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.
Strategic Collaboration Agreement
In April 2018, we entered into the Porton Agreement with Porton to license key elements of Codexis’ 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 agreement and $1.5 million upon the first 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 $0.1 million and nil in the three months ended March 31, 2020 and 2019, respectively.
Commercial Agreement
In April 2019, we entered into a multi-year commercial agreement with Tate & Lyle under which Tate & Lyle has received an exclusive license to use a suite of Codexis novel performance enzymes in the manufacture of Tate & Lyle’s zero-calorie stevia sweetener, TASTEVA® M, and other stevia products. Under the agreement, we will supply Tate & Lyle with its requirements for these enzymes over a multiple year period and receive royalties on stevia products. We recognized a nominal amount of royalty revenue for the three months ended March 31, 2020 in product revenue under this agreement.
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 Codexis’ proprietary CodeEvolver® protein engineering platform technology in the field of human healthcare. Under the Novartis CodeEvolver® Agreement, we will transfer Codexis' proprietary CodeEvolver® protein engineering platform technology to Novartis over approximately 20 months, starting with the date on which we commence the technology transfer (the “Technology Transfer Period”). As a part of this technology transfer, our company provided to Novartis Codexis’ proprietary enzymes, proprietary protein engineering protocols and methods, and proprietary software algorithms. In addition, teams of Codexis and Novartis scientists participated in technology training sessions and collaborative research projects at Codexis’ 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. We are entitled to receive an additional $4.0 million subject to satisfactory completion of the second technology transfer milestone and 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 Codexis technology and materials during a multi-year period that begins on the conclusion of the Technology Transfer Period, Novartis will pay Codexis annual payments which amount to an additional $8.0 million. Codexis 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 Codexis 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 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 $2.4 million in research and development revenue for the three months ended March 31, 2020 from the Novartis CodeEvolver® Agreement.
In April 2020, we achieved a technology transfer milestone associated with the Novartis CodeEvolver® Agreement. (See Note 15, "Subsequent Events" for more details.)
19


License Agreement
In December 2019, we entered a license agreement with Roche Sequencing Solutions, Inc. (“Roche”) to provide Roche with Codexis’ 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 Codexis 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.7 million for the three months ended March 31, 2020.
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 $2.2 million in the three months ended March 31, 2020. As of March 31, 2020 we had deferred revenue balance of $6.4 million from Takeda.
20



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

As of March 31, 2020, the total cash and cash equivalents balance of $87.3 million was comprised of money market funds of $68.5 million and cash of $18.8 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.

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

 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):
March 31, 2020December 31, 2019
Raw materials$104  $7  
Work-in-process8  26  
Finished goods589  338  
    Inventories$701  $371  

21


Property and Equipment, net
Property and equipment, net consisted of the following (in thousands):
March 31, 2020December 31, 2019
Laboratory equipment$24,323  $23,561  
Leasehold improvements10,804  10,804  
Computer equipment and software3,098  3,016  
Office equipment and furniture1,329  1,461  
Construction in progress467  691  
Property and equipment40,021  39,533  
       Less: accumulated depreciation and amortization(33,374) (33,251) 
     Property and equipment, net$6,647  $6,282  

Goodwill
Goodwill had a carrying value of approximately $3.2 million as of March 31, 2020 and December 31, 2019.
Other Accrued Liabilities
Other accrued liabilities consisted of the following (in thousands):
March 31, 2020December 31, 2019
Accrued purchases $5,654  $4,386  
Accrued professional and outside service fees3,111  1,802  
Other158  352  
     Total$8,923  $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.
22


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 March 31, 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 the first quarter of 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 84% 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 the first quarter of 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.
23



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 March 31,
 20202019
Research and development $424  $388  
Selling, general and administrative1,745  1,675  
   Total$2,169  $2,063  
The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations for the three months ended March 31, 2020 and 2019 (in thousands):
 Three Months Ended March 31,
 20202019
Stock options$541  $554  
RSUs and RSAs599  461  
PSUs331  391  
PBOs698  657  
   Total$2,169  $2,063  
As of March 31, 2020, unrecognized stock-based compensation expense, net of expected forfeitures, was $4.7 million related to unvested employee stock options, $2.4 million related to unvested RSUs and RSAs, $1.2 million related to unvested PSUs, and $2.0 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 three months ended March 31, 2020 and March 31, 2019, 5,333 and 218,572 shares, respectively, were issued upon option exercises at a weighted-average exercise price of $7.31 and $3.55 per share, respectively, with net cash proceeds of $39.0 thousand and $0.8 million, respectively.

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 are subleasing approximately 3,400 square feet of the Saginaw Space from Minerva Surgical, Inc. This sublease will end on April 30, 2020.
24


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 have 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 March 31, 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 March 31, 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 the term of the lease was three years from the effective date was 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 date of the lease was May 19, 2017 and the term of the lease was three years to be expired in April 2020.
Lease Costs and other information
Lease related costs were as follows (in thousands):
Three Months Ended March 31,
 20202019
Finance lease costs:
Amortization of right-of-use assets$54  $54  
Interest on lease obligations  4  
Finance lease costs54  58  
Operating lease cost1,068  1,178  
Short-term lease cost (1)
31    
Sublease income(55) (211) 
Total lease cost$1,098  $1,025  
(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 March 31, 2020 was as follows:
Operating LeasesFinance Leases
Weighted-average remaining lease term (in years)7.4 years0.1 years
Weighted-average discount rate6.6 %5.0 %

25


Cash paid for amounts included in the measurement of lease obligations was as follows (in thousands):
Three Months Ended March 31,
20202019
Operating cash flows from operating leases$354  $812  
Operating cash flows from finance leases$  $5  
Financing cash flows from finance leases$51  $59  


As of March 31, 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,Finance LeasesOperating Leases
2020 (remaining 9 months)$9  $2,462  
2021  4,197  
2022  4,285  
2023  4,589  
2024  4,726  
2025 and thereafter  13,494  
Total minimum lease payments9  33,753  
Less: imputed interest  (7,619) 
Lease Obligations$9  $26,134  

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  $847  
Development and manufacturing services agreementsSeptember 2019  5,084  
Total other commitments$5,931  
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 March 31, 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
26


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 March 31, 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 disrupted as a result of local shelter-in-place orders and any disruptions in operations of our customers with whom we collaborate. For the three months ended March 31, 2020, the COVID-19 pandemic resulted in lower research and development revenues of approximately $0.6 million as completion of certain R&D services were deferred to the future periods. We are unable to fully determine and quantify the extent to which delays in our R&D projects will be affected by the COVID-19 pandemic. 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.
In the U.S., the impact of COVID-19, including governmental orders governing the operation of non-essential businesses during the pandemic, has caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Our Redwood City employees have been working from home since mid-March 2020, while ensuring essential staffing levels in our operations remain in place.
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.
27


Note 12. Related Party Transactions
AstraZeneca PLC
Pam P. Cheng, a member of our board of directors, 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 $0.1 million and nominal revenue in the three months ended March 31, 2020, and 2019, respectively, from transactions with AstraZeneca PLC and its controlled purchasing agents and contract manufacturers. At March 31, 2020 and December 31, 2019, we had $0.1 million and $0.3 million of receivables from AstraZeneca PLC and its controlled purchasing agents and contract manufacturers, respectively.

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 our 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
28


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 table provides financial information by our reportable business segments along with a reconciliation to consolidated loss before income taxes (in thousands):
Three months ended March 31, 2020Three months ended March 31, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Revenues:
Product revenue$5,100  $—  $5,100  $7,988  $—  $7,988  
Research and development revenue5,774  3,796  9,570  2,099  5,496  7,595  
Total revenues10,874  3,796  14,670  10,087  5,496  15,583  
Costs and operating expenses:
Cost of product revenue2,541  —  2,541  4,391  —  4,391  
Research and development(1)
5,696  4,925  10,621  4,442  3,317  7,759  
Selling, general and administrative(1)
2,345  591  2,936  2,101  517  2,618  
Total segment costs and operating expenses10,582  5,516  16,098  10,934  3,834  14,768  
Income (loss) from operations$292  $(1,720) (1,428) $(847) $1,662  815  
Corporate costs (2)
(5,727) (5,575) 
Depreciation and amortization(492) (373) 
Loss before income taxes$(7,647) $(5,133) 
(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 table provides stock-based compensation expense included in loss from operations (in thousands):
Three months ended March 31,
20202019
Performance EnzymesNovel BiotherapeuticsCorporate costTotalPerformance EnzymesNovel BiotherapeuticsCorporate costTotal
Stock-based compensation$756  $241  $1,172  $2,169  $636  $141  $1,286  $2,063  


29


Significant Customers
Customers that each accounted for 10% or more of our total revenues were as follows:
Three Months Ended March 31,
20202019
Customer A24 %41 %
Customer B19 % %
Customer C15 % %
Customer D11 %35 %
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
March 31, 2020December 31, 2019
Customer A47 %38 %
Customer D %10 %
* 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 March 31,
20202019
Revenues
Americas$5,225  $2,838  
EMEA5,971  7,726  
APAC3,474  5,019  
Total revenues$14,670  $15,583  

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


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


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

The following tables below summarizes accounts receivable by aging category (in thousands):
March 31, 2020
31-60 Days61-90 Days91 days and overTotal over 31 daysCurrentTotal balance
Accounts receivable$745  $  $40  $785  $7,599  $8,384  

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  



Note 15. Subsequent Events
Achievement of milestone under Platform Technology Transfer and License Agreement
In April 2020, we achieved a technology transfer milestone associated with the Novartis CodeEvolver® Agreement. We are entitled to receive $4.0 million within 60 days of achievement of the technology transfer milestone.
31


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 our 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
32


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 Codexis’ 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, Codexis’ EvoT4™ DNA ligase.

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. 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 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.
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
33


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 in which we will collaborate 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 disrupted as a result of local shelter-in-place orders and any disruptions in operations of our customers with whom we collaborate. For the three months ended March 31, 2020, the COVID-19 pandemic resulted in lower research and development revenues of approximately $0.6 million as completion of certain R&D services were deferred to the future periods. We are unable to fully determine and quantify the extent to which delays in our R&D projects will be affected by the COVID-19 pandemic. 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.
In the U.S., the impact of COVID-19, including governmental orders governing the operation of non-essential businesses during the pandemic, has caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Our Redwood City employees have been working from home since mid-March 2020, while ensuring essential staffing levels in our operations remain in place.
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.
34


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.

Results of Operations Overview
Revenues decreased to $14.7 million for the first quarter of 2020 from $15.6 million in the first quarter of 2019, due to decreases in product revenue partially offset by increases in research and development revenue. Product revenue for the first quarter of 2020 decreased by $2.9 million to $5.1 million from $8.0 million in the first quarter of 2019 primarily due to timing of customer demand for branded products.
Research and development revenue increased by $2.0 million for the first quarter of 2020 to $9.6 million from $7.6 million in the first 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 prior year functional license fee revenue from Nestlé Health Science. For the three months ended March 31, 2020, the COVID-19 pandemic resulted in lower research and development revenues of approximately $0.6 million as completion of certain R&D services were deferred to the future periods.
Product gross margins were 50% for the first quarter of 2020, compared to 45% in the same period in 2019, due to improved product mix. Our profit margins are affected by many factors including the costs of internal and third-party fixed and variable costs, including materials and supplies, labor, facilities and other overhead 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 $3.0 million, or 37%, to $11.0 million for the first quarter of 2020, compared to the first 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.
Selling, general and administrative expense increased by $0.6 million, or 7%, to $9.0 million for the first quarter of 2020, compared to the first quarter of 2019, primarily due to an increase in costs associated with accounting fees and outside services, and higher facilities and headcount offset by lower allocable expenses.
Net loss for the first quarter of 2020 was $7.7 million, representing a net loss of $0.13 per basic and diluted share. This compares to a net loss of $5.1 million, representing a net loss of $0.09 per basic and diluted share for the first quarter of 2019. The increase in net loss for the first quarter of 2020 over the same period of the prior year is primarily related to higher operating expenses and decreases in product revenue partially offset by increases in research and development revenue.
Cash and cash equivalents decreased by $3.2 million to $87.3 million as of March 31, 2020 compared to $90.5 million as of December 31, 2019. Net cash used in operating activities decreased to $1.4 million in the three months ended March 31, 2020 compared to $2.9 million in the three months ended March 31, 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 March 31, 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.
35


Below is an overview of our results of operations by business segments:
Performance Enzymes
Revenues increased by $0.8 million, or 8%, to $10.9 million for the three months ended March 31, 2020, compared to the first quarter of 2019, primarily due to revenues from Novartis under the Novartis CodeEvolver® Agreement and revenue under a license agreement with Roche providing our EvoT4 DNA™ ligase high-performance molecular diagnostic enzyme, partially offset by a decrease in product revenue due to timing of customer demand for branded products.
Product gross margins were 50% in the three months ended March 31, 2020, compared to 45% in the corresponding period in 2019 due to improved product mix.
Research and development expense increased by $1.3 million, or 28%, to $5.7 million for the first quarter of 2020, compared to the first quarter of 2019, primarily due to an increase in costs associated with higher headcount and higher allocable expenses.
Selling, general and administrative expense increased by $0.2 million, or 12% to $2.3 million for the first quarter of 2020, compared to the first quarter of 2019, primarily due to an increase in costs associated with accounting fees and outside services, and higher facilities and headcount offset by lower allocable expenses.
Novel Biotherapeutics
Revenues decreased by $1.7 million, or 31%, to $3.8 million for the three months ended March 31, 2020, compared to the first quarter of 2019 primarily due to a decrease in prior year functional license fee revenue from Nestlé Health Science and partially offset by recognition of revenue under the Takeda Agreement.
Research and development expense increased by $1.6 million, or 48%, to $4.9 million for the first quarter of 2020, compared to the first 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 14%, to $0.6 million for the first quarter of 2020, compared to the first 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.
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 months ended March 31, 2020 and 2019. We had no deferred revenue balances as of March 31, 2020 and December 31, 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,
36


we recognized research and development revenues of $0.9 million and $1.0 million for the three months ended March 31, 2020 and 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. Pursuant to the agreement, Merck has options to future technology enhancements for a specified fee. As of March 31, 2020, Merck has not exercised its option for technology enhancements. We recognized $25 thousand in research and development revenues under the terms of the amendment in the three months ended March 31, 2020. As of March 31, 2020 and December 31, 2019, we had deferred revenue balances of $0.1 million and nil, respectively.
Global Development, Option and License Agreement and Strategic Collaboration 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 are being recognized over time as the development work is being performed. Revenue 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 all performance obligations under the agreement. We recognized development fees of nil for the three months ended March 31, 2020, compared to $1.3 million for the three months ended March 31, 2019 in research and development revenue.
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 addition to the Nestlé Agreement, we and Nestlé Health Science entered into a Strategic Collaboration Agreement (the “Strategic Collaboration Agreement”) pursuant to which we and Nestlé Health Science will collaborate 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. We recognized research and development fees of $1.6 million for the three months ended March 31, 2020 compared to $1.2 million for the three months ended March 31, 2019.
Development Agreement
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
37


through our Strategic Collaboration Agreement into pre-clinical and early clinical studies. The Strategic Collaboration Agreement was extended through December 2021.
Strategic Collaboration Agreement
In April 2018, we entered into the Porton Agreement with Porton to license key elements of Codexis’ 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 and $1.5 million upon the first 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.
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 Codexis’ proprietary CodeEvolver® protein engineering platform technology in the field of human healthcare. Under the Novartis CodeEvolver® Agreement, we will transfer Codexis' proprietary CodeEvolver® protein engineering platform technology to Novartis over approximately 20 months starting with the date on which we commence the technology transfer (the “Technology Transfer Period”). As a part of this technology transfer, our company provided to Novartis Codexis’ proprietary enzymes, proprietary protein engineering protocols and methods, and proprietary software algorithms. In addition, teams of Codexis and Novartis scientists participated in technology training sessions and collaborative research projects at Codexis’ 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. We are entitled to receive an additional $4.0 million subject to satisfactory completion of the second technology transfer milestone and 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 Codexis technology and materials during a multi-year period that begins on the conclusion of the Technology Transfer Period (“Improvements Term”), Novartis will pay Codexis annual payments which amount to an additional $8.0 million. Codexis 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 Codexis 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 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 $2.4 million in research and development revenue for the three months ended March 31, 2020 from the Novartis CodeEvolver® Agreement.
In April 2020, we achieved a technology transfer milestone associated with the Novartis CodeEvolver® Agreement. See Note 15, "Subsequent Events" in the Notes to Unaudited Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q for more details.
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. We recognized license fees of $2.1 million as research & development revenue in the three months ended March 31, 2020. 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.
38


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 March 31,Change
 20202019$%
Revenues:
Product revenue$5,100  $7,988  $(2,888) (36)%
Research and development revenue9,570  7,595  1,975  26%
Total revenues14,670  15,583  (913) (6)%
Costs and operating expenses:
Cost of product revenue2,541  4,391  (1,850) (42)%
Research and development10,967  8,016  2,951  37%
Selling, general and administrative8,989  8,415  574  7%
Total costs and operating expenses22,497  20,822  1,675  8%
Loss from operations(7,827) (5,239) (2,588) (49)%
Interest income266  231  35  15%
Other expenses, net(86) (125) (39) (31)%
Loss before income taxes  (7,647) (5,133) (2,514) (49)%
Provision for income taxes   67%
Net loss$(7,652) $(5,136) $(2,516) (49)%
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 March 31,Change
(In Thousands)20202019$%
Product revenue$5,100  $7,988  $(2,888) (36)%
Research and development revenue9,570  7,595  1,975  26%
Total revenues$14,670  $15,583  $(913) (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 decreased by $0.9 million in the three months ended March 31, 2020 compared to the same period in 2019, primarily due to a decrease in product revenue partially offset by an increase in research and development revenue. The decrease in product revenue was primarily due to timing of customer demand for branded products.
39


Research and development revenue increased by $2.0 million in the three months ended March 31, 2020, compared to the same period in 2019, primarily due to revenues from Novartis under the Novartis CodeEvolver® Agreement and recognition of license fees from Takeda under the Takeda Strategic Collaboration and License Agreement, partially offset by prior year functional license fee revenue from Nestlé Health Science. For the three months ended March 31, 2020, the COVID-19 pandemic resulted in lower research and development revenues of approximately $0.6 million as completion of certain R&D services were deferred to the future periods.
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 March 31,Change
(In Thousands)20202019$%
Cost of product revenue$2,541  $4,391  $(1,850) (42)%
Research and development10,967  8,016  2,951  37%
Selling, general and administrative8,989  8,415  574  7%
Total costs and operating expenses$22,497  $20,822  $1,675  8%

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 March 31,Change
(In Thousands)20202019$%
Product revenue$5,100  $7,988  $(2,888) (36)%
Cost of product revenue2,541  4,391  (1,850) (42)%
Product gross profit$2,559  $3,597  $(1,038) (29)%
Product gross margin (%)50 %45 %
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 50% in the three months ended March 31, 2020, compared to 45% in the corresponding period 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 $3.0 million, or 37%, in the three months ended March 31, 2020 compared to the same period in 2019, primarily due to an increase in costs associated with outside services relating to CMC and regulatory expenses, higher headcount, and higher allocable expenses.

40


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 7%, in the three months ended March 31, 2020 compared to the same period in 2019, primarily due to an increase in costs associated with accounting fees and outside services, and higher facilities and headcount offset by lower allocable expenses.
Interest Income and Other Expense
Three months ended March 31,Change
(In Thousands)20202019$%
Interest income$266  $231  $35  15%
Other expense, net(86) (125) (39) (31)%
Total other income$180  $106  $74  70%
Interest Income
Interest income increased by $35 thousand in the three months ended March 31, 2020, compared to the same period in 2019 primarily due to higher levels of cash and cash equivalents which earned lower average interest rates.
Other Expense
Other expense decreased by $39 thousand in the three months ended March 31, 2020, compared to the same period in 2019, primarily due to an unrealized loss of $0.1 million investment loss in the prior year, partially offset by increases in losses due to fluctuations in foreign currency.
Provision for Income Taxes
We recognized an income tax provision of $5 thousand and $3 thousand in the three months ended March 31, 2020 and 2019, respectively. The increase in income tax expense was due to additional interest recorded on uncertain tax positions from previous years. We continue to maintain a full valuation allowance against our net deferred tax assets as we believe that it is more likely than not that the majority of our deferred tax assets will not be realized.
Net loss
Net loss for the first quarter of 2020 was $7.7 million, representing a net loss of $0.13 per basic and diluted share. This compares to a net loss of $5.1 million, representing a net loss of $0.09 per basic and diluted share for the first quarter of 2019. The increase in net loss for the three months ended March 31, 2020 compared to the same period of the prior year was primarily related to higher operating expenses and decreases in product revenue partially offset by increases in research and development revenue.
41


Results of Operations by Segment (in thousands, except percentages)
Revenue by segment
Three months ended March 31,Change
20202019Performance EnzymesNovel Biotherapeutics
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal$%$%
Revenues:
Product revenue$5,100  $—  $5,100  $7,988  $—  $7,988  $(2,888) (36)%$—  — %
Research and development revenue5,774  3,796  9,570  2,099  5,496  7,595  3,675  175 %(1,700) (31)%
Total revenues$10,874  $3,796  $14,670  $10,087  $5,496  $15,583  $787  %$(1,700) (31)%

Revenues from the Performance Enzymes segment increased by $0.8 million, or 8%, to $10.9 million for the three months ended March 31, 2020, compared to $10.1 million for the three months ended March 31, 2019. The increase in revenue is primarily due to recognition of revenue from Novartis Pharma AG under the Novartis CodeEvolver® Agreement and revenue under a license agreement with Roche Sequencing Solutions, Inc. licensing our EvoT4 DNA™ ligase high-performance molecular diagnostic enzyme, partially offset by a decrease in product revenue due to timing of customer demand for branded products.
Revenues from the Novel Biotherapeutics segment decreased by $1.7 million, or 31%, to $3.8 million for the three months ended March 31, 2020, compared to $5.5 million for the three months ended March 31, 2019. The decrease in revenue is primarily due to a prior year functional license fee revenue from Nestlé Health Science partially offset by recognition of revenue under the Takeda Agreement and by a reduction in research and development service revenues.
Cost and Operating Expenses by Segment
Three months ended March 31,Change
20202019Performance EnzymesNovel Biotherapeutics
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal$%$%
Cost of product revenue$2,541  $—  $2,541  $4,391  $—  $4,391  $(1,850) (42)%$—  — %
Research and development(1)
5,696  4,925  10,621  4,442  3,317  7,759  1,254  28 %1,608  48 %
Selling, general and administrative(1)
2,345  591  2,936  2,101  517  2,618  244  12 %74  14 %
Total segment costs and operating expenses$10,582  $5,516  16,098  $10,934  $3,834  14,768  $(352) (3)%$1,682  44 %
Corporate costs5,907  5,681  
Depreciation and amortization492  373  
Total costs and operating expenses$22,497  $20,822  
(1) Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.
42


For a discussion of product cost of revenue, see "Results of Operations".
Research and development expense in the Performance Enzymes segment increased by $1.3 million, or 28%, to $5.7 million in the first quarter of 2020, compared to the first quarter of 2019. The increase was primarily due to an increase in costs associated with higher headcount and higher allocable expenses.
Selling, general and administrative expense in the Performance Enzymes segment increased by $0.2 million, or 12%, to $2.3 million in the first quarter of 2020, compared to the first quarter of 2019. The increase was primarily due to an increase in costs associated with accounting fees and outside services, and higher facilities and headcount offset by lower allocable expenses.
Research and development expense in the Novel Biotherapeutics segment increased by $1.6 million, or 48%, to $4.9 million in the first quarter of 2020, compared to the first quarter of 2019. The increase was 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 in the Novel Biotherapeutics segment increased by $0.1 million, or 14%, to $0.6 million in the first quarter of 2020, compared to the first quarter of 2019. The increase was primarily due to an increase in costs associated with higher headcount, higher allocable expense and higher stock-based compensation.
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 March 31, 2020 and December 31, 2019 (in thousands):
(In Thousands)March 31, 2020December 31, 2019
Cash and cash equivalents$87,327  $90,498  
Working capital$92,280  $98,817  
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 Codexis’ 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. We are entitled to receive an additional $4.0 million subject to satisfactory completion of the second technology transfer milestone and 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 Codexis technology and materials during a multi-year period that begins on the conclusion of the Technology Transfer Period, Novartis will pay Codexis annual payments which amount to an additional $8.0 million.
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.
43


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.
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 Codexis 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 March 31, 2020. At March 31, 2020, 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.
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 January 2019, we received notice from the FDA that it had completed its review of our 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. 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 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. 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.
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.
44


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 disrupted as a result of local shelter-in-place orders and any disruptions in operations of our customers with whom we collaborate. For the three months ended March 31, 2020, the COVID-19 pandemic resulted in lower research and development revenues of approximately $0.6 million as completion of certain R&D services were deferred to the future periods. We are unable to fully determine and quantify the extent to which delays in our R&D projects will be affected by the COVID-19 pandemic. 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. In the U.S., the impact of COVID-19, including governmental orders governing the operation of non-essential businesses during the pandemic, has caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Our Redwood City employees have been working from home since mid-March 2020, while ensuring essential staffing levels in our operations remain in place. 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 March 31, 2020, we had cash and cash equivalents of $87.3 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.
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.
45


Cash Flows
The following is a summary of cash flows for three months ended March 31, 2020 (in thousands):
 Three months ended March 31,
(In Thousands)20202019
Net cash used in operating activities$(1,425) $(2,851) 
Net cash used in investing activities(761) (445) 
Net cash used in financing activities(1,019) (2,082) 
Net decrease in cash, cash equivalents and restricted cash$(3,205) $(5,378) 
Cash Flows from Operating Activities
Cash used in operating activities was $1.4 million net for the three months ended March 31, 2020, which resulted from a net loss of $7.7 million for the three months ended March 31, 2020 adjusted for non-cash charges for depreciation of $0.4 million, ROU lease asset amortization expense of $0.7 million and stock-based compensation of $2.2 million. Additional cash used by changes in operating assets and liabilities was $2.9 million. Changes in operating assets and liabilities included an increase of $6.5 million in deferred revenue and $3.1 million in other accrued liabilities, partially offset by a $3.9 million increase in unbilled receivables and a $1.9 million decrease accrued compensation.
Cash used in operating activities was $2.9 million net for the three months ended March 31, 2019, which resulted from a net loss of $5.1 for the three months ended March 31, 2019 adjusted for non-cash charges for depreciation of $0.3 million, ROU lease asset amortization expense of $0.8 million and stock-based compensation of $2.1 million. Additional cash used by changes in operating assets and liabilities was $1.0 million. Changes in operating assets and liabilities included an increase of $1.1 million in accounts receivable, a decrease of $1.0 million of accounts payable, and a decrease of $2.9 million in deferred revenue.
Cash Flows from Investing Activities
Cash used in investing activities was $0.8 million and $0.4 million for the three months ended March 31, 2020 and 2019, respectively, which was primarily attributable to purchase of property and equipment.
Cash Flows from Financing Activities
Cash used in financing activities was $1.0 million for the three months ended March 31, 2020 and primarily included taxes paid related to net share settlement of equity awards.
Cash used in financing activities was $2.1 million for the three months ended March 31, 2019 which included $0.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.
46


Contractual Obligations
The following table summarizes our significant contractual obligations at March 31, 2020 (in thousands): 
Payments due by period
(In Thousands)TotalLess than 1 year1-3 years4-5 years>5 years
Finance lease obligations$ $ $—  $—  $—  
Operating leases obligations (1)
33,753  3,504  8,579  9,385  12,285  
Total$33,762  $3,513  $8,579  $9,385  $12,285  

(1) Represents future minimum lease payments under non-cancellable operating leases in effect as of March 31, 2020 for our facilities in Redwood City, California. The minimum lease payments above do not include common area maintenance charges or real estate taxes. Minimum payments have not been reduced by future minimum sublease rentals of $0.1 million to be received under non-cancellable subleases. 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  $847  
Development and manufacturing services agreementsSeptember 2019  5,084  
Total other commitments$5,931  

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 March 31, 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%.
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 March 31, 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.
47



Off-Balance Sheet Arrangements
As of March 31, 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 months ended March 31, 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 critical accounting policies and estimates for credit losses and for goodwill impairment. The changes in critical accounting policies or estimates are 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 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.
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.
48



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 March 31, 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  March 31, 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 March 31, 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.

49



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 March 31, 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.

50


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 March 31, 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 may, directly or indirectly, adversely affect our business, results of operations and financial condition.
Our business could be materially adversely affected, directly or indirectly, by the widespread outbreak of contagious disease, including the ongoing COVID-19 pandemic, which has spread to many of the countries in which we, our customers, our suppliers and our collaboration partners do business. 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, shelter in place 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.
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
51


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.

52



ITEM 6.EXHIBITS

3.1  
3.2  
3.3  
4.1  Reference is made to Exhibits 3.1 through 3.3.
10.1  *
10.2  *
31.1  
31.2  
32.1  
101   The following materials from the Company's Quarterly Report on Form 10-Q for the quarter ended March 31, 2020, formatted in Inline Extensible Business Reporting Language (iXBRL) includes: (i) Unaudited Condensed Consolidated Balance Sheets at March 31, 2020 and December 31, 2019, (ii) Unaudited Condensed Consolidated Statements of Operations for the Three Months Ended March 31, 2020 and 2019, (iii) Unaudited Condensed Consolidated Statements of Stockholders' Equity for the Three Months Ended March 31, 2020 and 2019, (iv) Unaudited Condensed Consolidated Statements of Cash Flows for the Three Months Ended March 31, 2020 and 2019 and (v) Notes to Unaudited Condensed Consolidated Financial Statements.
101.SCH  Inline XBRL Taxonomy Extension Schema Document
101.CAL  Inline XBRL Taxonomy Extension Calculation Linkbase Document
101.DEF  Inline XBRL Taxonomy Extension Definition Linkbase Document
101.LAB  Inline XBRL Taxonomy Extension Label Linkbase Document
101.PRE  Inline XBRL Taxonomy Extension Presentation Linkbase Document
104  The cover page from the Company’s Quarterly Report on Form 10-Q for the quarter ended March 31, 2020, formatted in Inline XBRL and contained in Exhibit 101.
 Portions of the exhibit, marked by brackets, have been omitted because the omitted information (i) is not material and (ii) would likely cause competitive harm if publicly disclosed.

53


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

54
EX-10.1 2 exhibit101q120.htm EX-10.1 Document
Exhibit 10.1
[***] Certain information in this document has been excluded pursuant to Regulation S-K, Item 601(b)(10). Such excluded information is not material and would likely cause competitive harm to the registration if publicly disclosed.
STRATEGIC COLLABORATION AND LICENSE AGREEMENT
This Strategic Collaboration and License Agreement (this “Agreement”) is made as of March 23, 2020 (the “Effective Date”), between Codexis, Inc., a Delaware corporation having its principal offices at 200 Penobscot Drive, Redwood City, California 94063 (“Codexis”) and Shire Human Genetic Therapies, Inc., a wholly-owned subsidiary of Takeda Pharmaceutical Company Limited and a Delaware corporation having its principal offices at 300 Shire Way, Lexington, MA 02421 (“Takeda”). Codexis and Takeda may each be referred to herein individually as a “Party” or collectively, as the “Parties.”
RECITALS
WHEREAS, Takeda is a global pharmaceutical company engaged in research, development, and commercialization of pharmaceutical products, including gene therapy products;
WHEREAS, Codexis is engaged in the field of protein sequence design, optimization, and evolution and has developed its CodeEvolver® technology platform that can develop, discover, engineer and/or evolve protein sequences to achieve desired biophysical properties; and
WHEREAS, the Parties desire to collaborate for Codexis to discover certain novel protein sequences, which may be encoded as nucleic acid sequences for use in gene therapy products, and for Takeda to further research, development, and potentially commercialize such protein sequences and nucleic acid sequences as therapeutic products in accordance with the terms of this Agreement.
NOW THEREFORE, in consideration of the promises and undertakings set forth herein, the Parties agree as follows:
1. DEFINITIONS
1.1 “Accounting Standards” means (a) U.S. generally accepted accounting principles (GAAP) with respect to Codexis, (b) the International Financial Reporting Standards (IFRS) with respect to Takeda and (c) GAAP or IFRS, as applicable, with respect to Takeda’s Affiliate or sublicensee, in each case of (a), (b) and (c), in effect at the relevant time, as generally and consistently applied.
1.2 “Additional Candidate” means (a) any Protein Sequences designed, discovered, optimized and/or evolved by or on behalf of either Party or both Parties in the course of an Additional Program for the relevant Additional Field and (b) those Protein Sequences discovered for the Additional Field, prior to the Effective Date, by or on behalf of Codexis, if any. For clarification, Additional Candidate includes any Protein Sequences derived from [***], provided, however those Protein Sequences that include, contain, or are combined with [***] shall be excluded from this subsection (b).
1.3 “Additional Field” means the Treatment of an Additional Indication in humans.
1.4 “Additional Indication” has the meaning set forth in Section 5.1.
1.5 “Additional Product” means a product that includes, contains or incorporates one or more Additional Sequences delivered by a Gene Therapy Vehicle, including all forms, presentations, strengths, doses and formulations (including any methods of delivery), whether solely or together with Other Components of such product.
1.6 “Additional Program” means, collectively, the activities undertaken or to be undertaken pursuant to the applicable Program Plan for the Development of one or more Additional Candidates.



1.7 “Additional Sequence” means any nucleic acid sequences, including a deoxyribonucleic acid or ribonucleic acid sequence, encoding an Additional Candidate.
1.8 “Additional Target Gene” means any gene, the Modulation of which would lead to the Treatment of an Additional Indication.
1.9 “Affiliate” means, with respect to a Party, any Person that directly or indirectly is controlled by, controls or is under common control with such Party to this Agreement. For the purposes of this definition, the term “control” (including, with correlative meanings, the terms “controlled by” and “under common control with”) as used with respect to a Person means (a) in the case of a corporate entity, direct or indirect ownership of voting securities entitled to cast more than fifty percent (50%) of the votes in the election of directors, (b) in the case of a non-corporate entity, direct or indirect ownership of more than fifty percent (50%) of the equity interests with the power to direct the management and policies of such entity, or (c) any other arrangement whereby a Person controls or has the right to control the board of directors or equivalent governing body or management of a corporation or other entity; provided that, if local Applicable Law restricts foreign ownership, control shall be established by direct or indirect ownership of the maximum ownership percentage that may, under such local Applicable Law, be owned by foreign interests.
1.10 “Agreement” shall have the meaning set forth in the preamble hereto.
1.11 “Alliance Manager” shall have the meaning set forth in Section 7.8.
1.12 “Anti-Corruption Laws” means the U.S. Foreign Corrupt Practices Act, as amended, the UK Bribery Act 2010, as amended, and any other applicable anti-corruption laws and laws for the prevention of fraud, racketeering, money laundering or terrorism.
1.13 “Applicable Law” means all laws, statutes, rules, regulations, ordinances, guidelines and other pronouncements having the effect of law of any federal, national, multinational, state, provincial, county, city or other political subdivision and orders of any kind whatsoever of any Governmental Authority, including cGCP, cGLP, cGMP, FFDCA, the U.S. Public Health Service Act, Prescription Drug Marketing Act, the Generic Drug Enforcement Act of 1992 (21 U.S.C. §335a et seq.), U.S. Patent Act (35 U.S.C. §1 et seq.), Federal Civil False Claims Act (31 U.S.C. §3729 et seq.), and Anti-Kickback Statute (42 U.S.C. §1320a-7b et seq.), all as amended from time to time, together with any rules, regulations, and compliance guidance promulgated thereunder.
1.14 “Audited Party” shall have the meaning set forth in Section 11.6(b).
1.15 “Auditing Party” shall have the meaning set forth in Section 11.6(b).
1.16 “Auditor” shall have the meaning set forth in Section 11.6(b).
1.17 “Background IP” means the Intellectual Property Controlled by a Party, or any of its Affiliates, prior to the Effective Date and/or created or acquired by or on behalf of a Party, or any of its Affiliates, during the Term independently of this Agreement. Codexis Platform IP constitutes Background IP of Codexis.
1.18 “BLA” means, as applicable, a Biologics License Application (as defined in 21 C.F.R. 600 et seq.), or a New Drug Application (as defined in 21 C.F.R. Parts 314 et seq.) or, in each case, its successor regulation.
2
|||


1.19 “Biosimilar Competition Percentage” means, with respect to any Product in a given country in the Territory in a given Calendar Quarter, [***], divided by the sum of: (a) [***], plus (b) [***], where, in each case, [***] market data provided by a Third Party mutually agreed upon by the Parties, and [***] shall be normalized, if necessary, so that [***].
1.20 “Biosimilar Product” means, with respect to a product, a biological medicinal product or biological product for human use which: (a) is highly similar to such product notwithstanding minor differences in clinically inactive components; (b) has no clinically meaningful differences with regard to such product in terms of safety, purity, or potency, as determined by Applicable Law or any applicable Regulatory Authority; and (c) is approved for use (i) in the U.S., under 42 U.S.C § 262(k) as a biosimilar biological product (as defined in 42 U.S.C. § 262(i)(1), (2)) and for which such product is the reference product (as defined in 42 U.S.C. § 262(i)(4)) or (ii) in any other country or jurisdiction, pursuant to an equivalent regime in such country or jurisdiction, and for which such product is the reference product.
1.21 “Business Day” means a day other than Saturday, Sunday or any day on which commercial banks located in (a) Redwood City, California, (b) Boston, Massachusetts or (c) Japan are authorized or obligated by Applicable Law to close.
1.22 “Calendar Quarter” means, with respect to any given Calendar Year, the respective periods of three (3) consecutive calendar months ending on March 31, June 30, September 30 or December 31; provided, however, that (a) the first Calendar Quarter of the Term shall extend from the Effective Date to the end of the first complete Calendar Quarter thereafter; and (b) the last Calendar Quarter of the Term shall end upon the expiration or termination of this Agreement.
1.23 “Calendar Year” means each successive period of twelve (12) consecutive months commencing on January 1 and ending on December 31; provided, however, that (a) the first Calendar Year of the Term shall begin on the Effective Date and end on December 31, 2020; and (b) the last Calendar Year of the Term shall end on the effective date of expiration or termination of this Agreement.
1.24 “Candidates” mean Fabry Candidates, Pompe Candidates, [***] Candidates, Additional Candidates, subject to Section 5.1, and Option Candidates, subject to Section 5.2.
1.25 “cGCP” means the then-current standards, practices and procedures promulgated or endorsed by the FDA as set forth in the guideline adopted by the ICH, titled “Guidance for Industry E6 Good Clinical Practice: Consolidated Guidance,” (or any successor document) including related regulatory requirements imposed by the FDA and comparable regulatory standards, practices and procedures promulgated by the EMA, PMDA or other Regulatory Authority applicable to the Territory, as they may be updated from time to time.
1.26 “cGLP” means the then-current standards, practices and procedures promulgated or endorsed by the FDA as set forth in 21 C.F.R. Part 58 (or any successor statute or regulation), including related regulatory requirements imposed by the FDA and comparable regulatory standards, practices and procedures promulgated by the EMA, PMDA or other Regulatory Authority applicable to the Territory, as they may be updated from time to time, including applicable guidelines promulgated under the ICH.
1.27 “cGMP” means the then-current good manufacturing practices required by the FDA, as set forth in the FFDCA, as amended, and the regulations promulgated thereunder, for the manufacture and testing of pharmaceutical materials, and comparable Applicable Law related to the manufacture and
3
|||


testing of pharmaceutical materials in jurisdictions outside the U.S., including the quality guideline promulgated by the ICH designated ICH Q7A, titled “Q7A Good Manufacturing Practice Guidance for Active Pharmaceutical Ingredients” and the regulations promulgated thereunder, in each case as they may be updated from time to time.
1.28 “Clinical Trial” means a Phase I Clinical Trial, Phase I/II Clinical Trial, Phase II Clinical Trial, Phase II/III Clinical Trial, Phase III Clinical Trial, Pivotal Clinical Trial or such other study in humans that is conducted in accordance with cGCP and is designed to generate data in support or maintenance of an IND or MAA, or other similar marketing application.
1.29 “Codexis” shall have the meaning set forth in the preamble hereto.
1.30 “Codexis Candidate/NAS Patents” means any Codexis Patent that [***].
1.31 “Codexis Foreground IP” shall have the meaning set forth in Section 10.1(b).
1.32 “Codexis Foreground Patent” means any Patent that Covers Codexis Foreground IP, but excluding any Patents included in or under any Codexis’s Background IP.
1.33 “Codexis Indemnitees” shall have the meaning set forth in Section 18.1.
1.34 “Codexis Internal Fee” means on a Program Budget-by-Program Budget basis, those [***] in accordance with each applicable Program Plan.
1.35 “Codexis Know-How” means Know-How Controlled by Codexis, or its Affiliate(s), as of the Effective Date or during the Term, including any Know-How included in or under any Codexis’s Background IP, the Codexis Foreground IP, the Codexis Results and/or the Deliverables, that is necessary or reasonably useful (a) to conduct the activities under the Programs and (b) to Develop, Manufacture, or Commercialize any Candidates, corresponding Nucleic Acid Sequences and Products for the applicable Field in the Territory, but excluding any Know-How that encompasses the Codexis Platform.
1.36 “Codexis Patents” means any Patents Controlled by Codexis, or its Affiliate(s), as of the Effective Date or during the Term, including any Codexis Foreground Patents or Patents included in or under any Codexis’s Background IP, that are necessary or reasonably useful (a) to conduct the activities under the Programs and (b) to Develop, Manufacture, or Commercialize any Candidates, corresponding Nucleic Acid Sequences and Products for the applicable Field in the Territory, but excluding any Patents that Covers the Codexis Platform.
1.37 “Codexis Platform” means the CodeEvolver® technology platform Controlled by Codexis, or its Affiliates, used to design, discover, engineer and/or evolve Protein Sequences to achieve desired biophysical properties, as further described under Schedule 1.37, including any modification, enhancement or improvement to such platform.
1.38 “Codexis Platform IP” means any and all Intellectual Property that Covers the Codexis Platform. For clarification, the Codexis Platform IP does not include any Codexis Technology, Takeda’s Background IP or Takeda Foreground IP.
1.39 “Codexis Program Expenses means (a) the Codexis Internal Fee and (b) [***] Third Party costs and expenses, in each case (a) and (b), [***] by Codexis in furtherance of a Program in accordance with the applicable Program Plan during the applicable Program Period.
4
|||


1.40 “Codexis Results” shall have the meaning set forth in Section 10.1(c).
1.41 “Codexis Technology” means the Codexis Patents and the Codexis Know-How. For clarification, Codexis Technology includes the Codexis Foreground IP.
1.42 “Combination Product” means: (a) a product that contains a Product and one or more Other Components; or (b) a Product that is co-packaged or combined with one or more Other Components, and such Product and Other Components are sold for a single price.
1.43 “Commercialization” or “Commercialize” means any and all activities relating to the preparation for sale of, offering for sale of, or sale of a product or service, including activities related to launching, marketing, promoting, distributing, detailing, importing, exporting, pricing, reimbursement, and advertising such product, and interacting with Regulatory Authorities regarding any of the foregoing.
1.44 “Commercially Reasonable Efforts” means, with respect to the efforts and resources to be expended, or considerations undertaken, by a party or its affiliate with respect to any objective, whereby such efforts and resources shall be undertaken using reasonable, good faith efforts that [***] companies would normally use to accomplish a similar objective, activity or decision under similar circumstances. Such efforts and resources shall be consistent with those efforts and resources commonly used by similarly situated biotechnology or pharmaceutical companies under similar circumstances for similar nucleic acid sequence or products owned or controlled by such companies, which nucleic acid sequence or product, as applicable, is at a similar stage in its development or product life and is of similar market potential taking into account: (a) [***], (b) [***], (c) [***], (d) [***], (e) [***], (f) [***]. Takeda’s Commercially Reasonable Efforts with respect to Development, Manufacture, seeking and obtaining Regulatory Approval, or Commercialization of any Product (including seeking and obtaining Pricing Approval) shall be [***] and it is anticipated that the level of effort and resources that constitute “Commercially Reasonable Efforts” with respect to [***].
1.45 “Commercialization Milestone Event” shall have the meaning set forth in Section 11.2(b).
1.46 “Commercialization Milestone Payment” shall have the meaning set forth in Section 11.2(b).
1.47 “Confidential Information” means any non-public or proprietary information (whether scientific, technical, financial, business or otherwise) disclosed by or on behalf of either Party or its Affiliate(s) to the other Party or its Affiliate(s) in connection with the activities contemplated by this Agreement, which may include ideas, inventions, discoveries, concepts, compounds, compositions, formulations, formulas, practices, procedures, processes, methods, knowledge, know-how, trade secrets, technology, inventories, machines, techniques, development, designs, drawings, computer programs, skill, experience, documents, apparatus, results, clinical and regulatory strategies, Regulatory Materials, Know-How and submissions pertaining to, or made in association with, filings with any Governmental Authority, data, including pharmacological, toxicological and clinical data, analytical and quality control data, manufacturing data and descriptions, patent and legal data, market data, financial data or descriptions, devices, assays, chemical formulations, specifications, material, product samples and other samples, physical, chemical and biological materials and compounds, and the like, whether disclosed in oral, written, graphic, or electronic form. This Agreement and the terms herein shall be deemed the Confidential Information of both Parties.
5
|||


1.48 “Contractor” shall have the meaning set forth in Section 3.4.
1.49 “Control” (and, as applicable “Controlled” or “Controlling”) means with respect to any Intellectual Property, possession by a Party of the ability, whether arising by ownership or license (without taking into account any rights granted by a Party to the other Party hereunder), to grant a license or sublicense to or under such Intellectual Property without violating the terms of any written agreement or other arrangement with, or necessitating the consent of, any Third Party, at such time that the Party would be first required under this Agreement to grant the other Party such license or sublicense.
1.50 “Cover,” “Covers,” or “Covered” means, with respect to a subject matter at issue and a relevant Patent or specific claim(s) of a Patent, in the absence of ownership or a (sub)license granted under such Patent, the Development, Manufacturing, Commercialization or other exploitation of such subject matter at issue would infringe such Patent or specific claim(s) thereof, or, in the case of a Patent that has not yet issued, would infringe such Patent or specific claim(s) thereof if it were to issue in its then current form or in a substantially similar version.
1.51 “Cure Period” shall have the meaning set forth in Section 15.2(e).
1.52 “Damages” means all losses, costs, claims, damages, judgments, liabilities, and expenses (including reasonable attorneys’ fees and other reasonable out-of-pocket costs in connection therewith).
1.53 “Deliverables” means, with respect to each Program, the items specified as Deliverables in the applicable Program Plan. For clarity, Deliverables may include any Codexis Results that are necessary or reasonably useful for the Exploitation of the applicable Candidates, Nucleic Acid Sequences, and/or Products.
1.54 “Develop” or “Development” means, together with all correlative meanings, all research and pre/non-clinical and clinical drug development activities, conducted before or after obtaining Regulatory Approval that are reasonably related to or leading to the development, preparation, and submission of data and information to a Regulatory Authority for the purpose of obtaining, supporting, maintaining or expanding Regulatory Approval or to the appropriate Governmental Authority for obtaining, supporting, maintaining or expanding pricing and reimbursement approval, including without limitation, all activities related to Chemistry, Manufacturing and Controls (CMC), preclinical testing, assay development and validation, in vivo testing, biomarker development and validation, toxicology, pharmacokinetic profiling, optimizing, design and conduct of Clinical Trials and any other clinical trials or studies, regulatory affairs, statistical analysis, report writing, and regulatory filing creation and submission (including the services of outside advisors and consultants in connection therewith). Development expressly excludes (a) Non-Gene Therapy Research, (b) Commercialization and (c) the Manufacture and accumulation of any inventory of a product.
1.55 “Development Milestone Event” shall have the meaning set forth in Section 11.2(a)(i).
1.56 “Development Milestone Payment” shall have the meaning set forth in Section 11.2(a)(i).
1.57 “Dispute” shall have the meaning set forth in Section 19.1.
1.58 “Dollars” or “$” means the legal tender of the United States.
6
|||


1.59 “Effective Date” shall have the meaning set forth in the preamble hereto.
1.60 “EMA” means the European Medicines Agency or any successor agency or authority thereto.
1.61 “European Union” or “EU” means all the European Union member states as of the applicable time during the Term.
1.62 “Evaluation Research” means any activities related to the Development of a Product outside the applicable Field in the Territory, which expressly excludes (a) IND-enabling pre-clinical and clinical Development, (b) Commercialization and (c) Manufacture of a Product outside the applicable Field.
1.63 “Exclusivity Period” means the period beginning as of the Effective Date and ending on the [***] ([***]) anniversary of the Effective Date, provided, however, [***].
1.64 “Exploit” means, together with all correlative meanings, to Develop, Manufacture and/or Commercialize.
1.65 “Fabry Candidate” means (a) a Protein Sequence designed, discovered, optimized and/or evolved by or on behalf of either Party or both Parties in the Fabry Program for the Fabry Field and (b) those Protein Sequences coded as [***] and [***], and any other Protein Sequence discovered prior to the Effective Date by or on behalf of Codexis for the Fabry Field, including, [***] sequences.
1.66 “Fabry Disease” means a disease [***], including any Indication thereof.
1.67 “Fabry Field” means the Treatment of Fabry Disease in humans.
1.68 “Fabry Product” means a product that includes, contains or incorporates one or more Fabry Sequences delivered by a Gene Therapy Vehicle, including all forms, presentations, strengths, doses and formulations (including any methods of delivery), whether solely or together with Other Components of such product.
1.69 “Fabry Program” means, collectively, the activities undertaken or to be undertaken pursuant to the applicable Program Plan for the Development of one or more Fabry Candidates.
1.70 “Fabry Sequence” means any nucleic acid sequences, including a deoxyribonucleic acid or ribonucleic acid sequence, encoding a Fabry Candidate.
1.71 “Fabry Target Gene” means the [***] gene or any other gene, the Modulation of which would lead to the Treatment of Fabry Disease in humans.
1.72 “FDA” means the U.S. Food and Drug Administration, or any successor agency thereto.
1.73 “FFDCA” means the U.S. Federal Food, Drug and Cosmetic Act, (21 U.S.C. §301 et seq.), as amended from time to time, together with any rules, regulations and requirements promulgated thereunder (including all additions, supplements, extensions, and modifications thereto).
1.74 “Fields” means Fabry Field, Pompe Field, [***] Field, Additional Fields, subject to Section 5.1, and Option Field, subject to Section 5.2 (each, a “Field”).
1.75 “First Commercial Sale” means, on a Product-by-Product and country-by-country basis, the first sale of a Product in a country by Takeda or its Affiliates or sublicensees to an end user or prescriber
7
|||


for use, consumption or resale of such Product in such country in the Territory for the Field where all Regulatory Approvals that are required in order to sell such Product in such country for the Field has been obtained and where such sale results in Net Sales. For clarification, the following shall not constitute a First Commercial Sale: (a) any sale to an Affiliate or sublicensee, unless such Affiliate or sublicensee is the end user or prescriber of the Product; (b) any use of such Product in Clinical Trials or non-clinical Development activities with respect to such Product by or on behalf of a Party; or (c) any disposal or transfer of such Product for a bona fide charitable purpose, compassionate use, or samples.
1.76 “Force Majeure” means any event beyond the reasonable control of the affected Party that materially affects the Party’s performance of its obligations, except payment obligations, under this Agreement, including embargoes; war or acts of war, including terrorism; insurrections, riots, or civil unrest; strikes, lockouts or other labor disturbances; epidemics, fire, floods, earthquakes or other acts of nature; or acts, omissions or delays in acting by any Governmental Authority (including the refusal of the competent Governmental Authorities to issue required Regulatory Approvals due to reasons other than the affected Party’s negligence or willful misconduct or any other cause within the reasonable control of the affected Party) and failure of plant or machinery due to such events (provided that such event or failure could not have been prevented by the exercise of skill, diligence, and prudence that would be reasonably and ordinarily expected from a skilled and experienced person engaged in the same type of undertaking under the same or similar circumstances).
1.77 “Gene Therapy Vehicle” means (a) any [***] that encapsulate or contain therapeutic genes or (b) any other gene delivery technologies, [***] in each case of (a) and (b), [***] or other technologies that act as the vehicle or carrier for delivering therapeutic genes into cells.
1.78 “Governmental Authority” means any multi-national, national, federal, state, local, municipal, provincial or other governmental authority of any nature (including any governmental division, prefecture, subdivision, department, agency, bureau, branch, office, commission, council, court or other tribunal), including any Regulatory Authority.
1.79 [***]
1.80 “[***] Candidate” means (a) any Protein Sequence designed, discovered, optimized and/or evolved by or on behalf of either Party or both Parties in the [***] Program for the [***] Field and (b) those Protein Sequences discovered for the [***] Field prior to the Effective Date by or on behalf of Codexis, if any.
1.81 “[***] Field” means the Treatment of [***].
1.82 “[***] Product” means a product that includes, contains or incorporates one or more [***] Sequences delivered by a Gene Therapy Vehicle, including all forms, presentations, strengths, doses and formulations (including any methods of delivery), whether solely or together with Other Components of such product.
1.83 “[***] Program” means, collectively, the activities undertaken or to be undertaken pursuant to the applicable Program Plan for Development of one or more [***] Candidates.
1.84 “[***] Sequence” means any nucleic acid sequences, including a deoxyribonucleic acid or ribonucleic acid sequence, encoding a [***] Candidate.
8
|||


1.85 “[***] Target Gene” means the [***] or any other gene, the Modulation of which would lead to the Treatment of [***].
1.86 “ICH” means the International Conference on Harmonization.
1.87 “IMS” means IMS Consulting Group.
1.88 “IND” means (a) an Investigational New Drug application filed with the FDA as defined in FFDCA, as amended, and applicable regulations promulgated hereunder by the FDA, (b) equivalent application filed with the Regulatory Authority of a country in the Territory other than the U.S., the filing of which is necessary to commence or conduct clinical testing of a pharmaceutical (or biological) product in humans in such jurisdiction (such as an application for a Clinical Trial Authorization in the EU or China), or (c) documentation issued by a Regulatory Authority that permits the conduct of clinical testing of a product in humans in any jurisdiction.
1.89 “Indemnitee” shall have the meaning set forth in Section 18.3(a).
1.90 “Indemnitor” shall have the meaning set forth in Section 18.3(a).
1.91 “Indemnification Claim Notice” shall have the meaning set forth in Section 18.3(a).
1.92 “Indication” means an entirely separate and distinct disease or medical condition in humans (i.e., a separate and distinct histotype) that a pharmaceutical or biological product: (a) that is in Clinical Trials is intended to treat; or (b) has received a separate and distinct Regulatory Approval with an approved label claim to treat such disease or condition, as applicable, as set forth in the a New Drug Approval Application as defined in the FFDCA, BLA or prescribing information for a Product, as applicable, for which such Product has received regulatory approval from the FDA. For clarity: (i) moving from one line of therapy to another within an Indication (e.g., moving from second-line therapy to first-line therapy) shall not be considered to be a new Indication; (ii) a single Indication would include the primary disease and all variants or sub-divisions or sub-classifications within such primary disease, and regardless of prophylactic or therapeutic use, pediatric or adult use and irrespective of different formulation(s), dosage forms, dosage strengths, or delivery system(s) used; (iii) initiating a Clinical Trial or obtaining Regulatory Approval for use of a pharmaceutical or biological product in combination with another pharmaceutical or biological product, where a Clinical Trial had been initiated or Regulatory Approval obtained for such first pharmaceutical or biological product for use as monotherapy or in combination with a different pharmaceutical or biological product, shall not be considered to be a new Indication; and (iv) initiating a Clinical Trial or obtaining Regulatory Approval for use of a pharmaceutical or biological product in a specific patient population where such Clinical Trial is initiated or Regulatory Approval is obtained without reference to such specific patient population or for a different patient population, shall not be considered a new Indication.
1.93 “Indirect Taxes” shall have the meaning set forth in Section 11.5.
1.94 “Infringement Action” shall have the meaning set forth in Section 14.2(a).
1.95 “Initial Programs” shall have the meaning set forth in Section 3.1.
1.96 “Intellectual Property” means Patents, Know-How, copyrights, trademarks, service marks, and other intellectual property or proprietary rights (including, without limitation, applications relating
9
|||


thereto and extensions thereof) in any inventions, techniques, know-how or discoveries, whether or not patentable.
1.97 “Invention” means any discovery, invention, contribution, method, data, information, results, findings, or improvements, whether or not patentable, which are conceived and reduced to practice in the performance of each Program and/or in the course of conducting permitted activities under this Agreement, and any and all Intellectual Property therein.
1.98 “JSC” or “Joint Steering Committee” shall have the meaning set forth in Section 7.1.
1.99 “JSC Term” shall have the meaning set forth in Section 7.1.
1.100 “Know-How” means, whether in written, electronic, oral or other tangible or intangible form and whether protectable under patent, copyright, trade secrecy or other laws, any materials and information, including developments, conclusions, strategies, techniques, methods, methodologies, processes, procedures, technology, skills, experience, expertise, practices, recipes, formulae, designs, equipment configurations and uses, samples (whether biological, chemical or otherwise), compounds and cell lines, and assays (whether biological, chemical, pharmacological, toxicological, clinical, or otherwise), trade secrets, data (such as Manufacturing data, preclinical and clinical data), specifications, ingredients, intermediates, Manufacturing processes, formulation, specifications, sourcing information, quality control and testing procedures, and related knowledge and trade secrets. For the purpose of this definition, the word “information” means any information, whether technical, scientific, financial, business or otherwise, pertaining to or embodying any of the foregoing items (including, any information pertaining to or made in association with any Regulatory Materials or any other submissions or filings with any Governmental Authority or patent office).
1.101 “Manufacture” means, with respect to a product, those manufacturing activities involved in or relating to (a) manufacturing process development, (b) CMC activities including analytical development and qualification, formulation development, solubility testing, bulk drug substance manufacturing, stability testing and scale-up activities, bulk drug product manufacturing and stability testing, (c) quality assurance and quality control activities including validation testing, qualification and audit of clinical and commercial manufacturing facilities, and (d) in the case of either a clinical or commercial supply of such product or supply of such product for any non-clinical study, the manufacturing, processing, formulating, packaging, labeling, holding, quality control testing and release of such product.
1.102 “Marketing Authorization Application” or “MAA” means (a) any BLA filed with the FDA to gain approval to market a biopharmaceutical product in the U.S., (b) a marketing authorization application filed with (i) the EMA under the centralized EMA filing procedure to gain approval to market a biopharmaceutical or diagnostic product in the EU, or (ii) a Regulatory Authority in any EU country if the centralized EMA filing procedure is not used to gain approval to market a biopharmaceutical or diagnostic product in the EU, or (c) any other equivalent or related Regulatory Authorization filed in support of approval to market a biopharmaceutical or diagnostic product in any country outside the U.S. or EU, and, in each case ((a) through (c)), including any amendments thereto, and supplements, variations, extensions and renewals thereof, but excluding Pricing Approval applications.
1.103 “Modulate” or “Modulation” means to edit, engineer, modify, or modulate a gene or locus, including by means of gene knock-out, gene tagging, gene disruption, gene mutation, gene addition,
10
|||


gene insertion, gene introduction, gene deletion, gene activation, gene silencing, or gene knock-in, which includes knock-in of a human gene, a heterologous gene, a mutated gene, or an evolved gene into a genomic locus, or as extrachromosomal element such as an episome.
1.104 “Net Sales” means, with respect to each Product, the gross amounts invoiced or otherwise billed by Takeda, its Affiliates or any of its sublicensees for sales or other transfer or disposition for value of such Product to an unaffiliated Third Party (other than any of sublicensees of Takeda or its Affiliates), less the following deductions actually made:
(a) trade discounts, including trade, cash and quantity discounts or rebates, credits or refunds (including inventory management fees, discounts or credits);
(b) allowances or credits actually granted upon claims, damaged goods, returns or rejections of such Product, including in connection with recalls;
(c) bad debts; provided, however, that the amount of any bad debts deducted pursuant to this exception and actually collected in a subsequent Calendar Quarter shall be included in Net Sales for such subsequent Calendar Quarter;
(d) charges included in the gross sales price for freight, insurance, transportation, postage, handling, warehousing, insurance and any other charges directly relating to the sale, transportation, delivery or return of such Product;
(e) customs duties, sales, excise and use taxes and any other governmental charges (including value added tax) levied on and actually paid in connection with the transportation, distribution, use or sale of such Product (but excluding taxes imposed on or measured by income) and permitted as a sales deduction from gross sales by the applicable Accounting Standard;
(f) that portion of the annual fee on prescription drug manufacturers imposed by the Patient Protection and Affordable Care Act, Pub. L. No. 111-148 (as amended), the Japanese Act on Pharmaceuticals and Medical Devices Agency or other similar foreign laws that Takeda, its Affiliates or (sub)licensees, as applicable, allocate as a sales deduction from gross sales of such Product in accordance with the applicable Accounting Standard consistently applied by Takeda, its Affiliates, or (sub)licensees;
(g) rebates and chargebacks or retroactive price reductions made to federal, state or local governments (or their agencies), or any Third Party payor, administrator or contractor, including managed health organizations; and
(h) any item substantially similar in character or substance to any of the foregoing Section 1.104(a) through (g), which is permitted as a sales deduction from gross sales by the applicable Accounting Standard prevailing at the time and customary in the pharmaceutical industry at the time.
All gross amounts invoiced and all of the foregoing deductions from the gross amounts invoiced will be determined in accordance with the Accounting Standards as consistently applied by Takeda or its Affiliate or sublicensee, as applicable, with respect to external reporting. In the event that Takeda, its Affiliates or any of its sublicensees makes any adjustments to such deductions after the associated Net Sales have been reported pursuant to this Agreement, the
11
|||


adjustments will be reported and reconciled in the next report and payment of any royalties will be due.

In the event a Product is sold as a Combination Product, Net Sales of the Combination Product will be calculated by multiplying the total Net Sales of the Combination Product by the fraction A/(A+B), where A is the average per unit Net Sales in the applicable country in the Territory of the Product sold separately (without any Other Components) in the same formulation and dosage in a comparable Indication, and B is the sum of the average per unit Net Sales in the applicable country in the Territory of all Other Components (in the same formulation and dosage in a comparable Indication as in the Combination Product) in the Combination Product, as applicable, in each case sold separately during the applicable Calendar Quarter. If A or B cannot be determined because average selling prices for the Product or the Other Component(s) are not available separately in a particular country, then the Parties shall discuss an appropriate allocation of Net Sales to the Product and to the Other Component(s), and thereafter the Parties will mutually agree upon the allocation of Net Sales for the relevant transactions in good faith based on an equitable method of determining the same that takes into account, in the Territory, variations in potency, the relative contribution of each therapeutically active ingredient, and relative value to the end user of each therapeutically active ingredient.

If a Product is sold in any country in the Territory as part of a bundle of products at a price that is discounted by a percentage that is greater than the percentage by which any other product in such bundle is discounted, in each case by reference to the non-discounted price of the Product or such other product, as applicable, charged to an independent Third Party during the same period in such country in the Territory or, in the absence of such sales in such country in the Territory, on the fair market value of the Product or such other product, as applicable, in such country in the Territory, then the Net Sales attributable to sales of such Product in such bundle in such country in the Territory shall be increased so as to reduce the discount on such Product to an amount that is equivalent, on a percentage basis, to the discount on such other product in such bundle.

Notwithstanding the foregoing, sale of a Product by Takeda, its Affiliates or any of its sublicensees to another of such Persons shall be deemed a sale or other transfer or disposition for value of a Product for purposes of this definition of “Net Sales” if such Person is the end user of such Product sold or transferred.

Any use, supply or donation of a Product by Takeda, its Affiliates or any of its sublicensees for no profit and (i) in connection with patient assistance programs, (ii) for charitable or promotional purposes, (iii) for preclinical, Clinical Trial, regulatory or governmental purposes, or compassionate use or other similar programs, or (iv) for tests or studies reasonably necessary to comply with any Applicable Law, regulation or request by a Regulatory Authority, in each case (i), (ii), (iii) and (iv), shall not be deemed sales of such Product for the purposes of this definition of “Net Sales.”

1.105 “Non-Gene Therapy Research” means, other than any activities related to the Development, Manufacturing and Commercialization of any Products in the applicable Field, any activities related to the discovery, identification, profiling, characterization, advancement or progression of Candidates, whether within or outside the applicable Field, which expressly excludes (a) IND-enabling pre-clinical and clinical Development, (b) Commercialization and (c) Manufacture of any Candidates.
12
|||


1.106 “Non-Gene Therapy Research License Term” means the period beginning on the Effective Date and expiring on the [***] ([***]) anniversary of the Effective Date.
1.107 “Nucleic Acid Sequence” means (a) Fabry Sequence, (b) Pompe Sequence, (c) [***] Sequence, (d) subject to Section 5.1, any Additional Sequence, (e) subject to Section 5.2, any Option Sequence and (f) in each case (a) through (e), derivatives, fragments, progeny, or modifications thereto.
1.108 “Option Candidate” means (a) any Protein Sequences designed, optimized and evolved by or on behalf of either Party or both Parties in the Option Program for the Option Field and (b) those Protein Sequences discovered for the Option Field, prior to the Effective Date, by or on behalf of Codexis, if any.
1.109 “Option Exercise Notice” shall have the meaning set forth in Section 5.2.
1.110 “Option Fee” means [***].
1.111 “Option Field” means the Treatment of an Option Indication.
1.112 “Option Indication” has the meaning set forth in Section 5.2.
1.113 “Option Product” means a product that includes, contains or incorporates one or more Option Sequences delivered by a Gene Therapy Vehicle, including all forms, presentations, strengths, doses and formulations (including any methods of delivery), whether solely or together with other components of such product.
1.114 “Option Program” means, collectively, the activities undertaken or to be undertaken pursuant to the applicable Program Plan for the Development of one or more Option Candidates.
1.115 “Option Sequence” means any nucleic acid sequences, including a deoxyribonucleic acid or ribonucleic acid sequence, encoding an Option Candidate.
1.116 “Option Target Gene” means any gene, the Modulation of which would lead to the Treatment of the Option Indication.
1.117 “Other Components” means other clinically active (a) compounds or (b) substances, in each case (a) and (b), including those that Modulate a gene target, that are co-formulated or co-packaged within a single box or sales unit or that are sold separately but approved (or being developed for approval) for use in combination, whether sold at a single price point or under separate price points or as part of a course of treatment, which compounds or substances that have a clinical effect when administered as a stand-alone product, are not a Product, are not Covered by a Codexis Patent, and do not embody any Codexis Know-How.
1.118 “Other IP” shall have the meaning set forth in Section 10.1(d).
1.119 “Party” or “Parties” shall have the meaning set forth in the preamble hereto.
1.120 “Patent(s)” means (a) all national, regional and international patents and patent applications, including provisional patent applications, (b) all patent applications filed either claiming priority to such patents, patent applications or provisional applications or from an application claiming priority from any of these, including divisionals, continuations, continuations-in-part, provisionals, converted provisionals and requests for continued examinations, (c) any and all patents that have
13
|||


issued or in the future issue from the foregoing patent applications ((a) and (b)), including utility models, innovation patents, petty patents and design patents and certificates of invention, (d) any and all extensions or restorations by existing or future extension or restoration mechanisms, including revalidations, reissues, re-examinations, inter partes review, oppositions, and extensions (including any supplementary protection certificates and the like) of the foregoing patents or patent applications ((a), (b) and (c)), and (e) any similar rights, including so-called pipeline protection or any importation, revalidation, confirmation or introduction patent or registration patent or patent of additions to any of such foregoing patent applications and patents.
1.121 “Patent Committee” shall have the meaning set forth in Section 13.1.
1.122 “Payment” shall have the meaning set forth in Section 11.5.
1.123 “Person” means an individual, sole proprietorship, partnership, limited partnership, limited liability partnership, corporation, limited liability company, business trust, joint stock company, trust, incorporated association, joint venture or similar entity or organization, including any Governmental Authority (or any department, agency, or political subdivision thereof).
1.124 “Phase I Clinical Trial” means a clinical trial of an investigational product in human subjects with the primary objective of characterizing its safety, tolerability, and pharmacokinetics and identifying a recommended dose and regimen for future studies as described in 21 C.F.R. 312.21(a), or a comparable Clinical Trial prescribed by the relevant Regulatory Authority in a country other than the United States. The investigational product can be administered to patients as a single agent or in combination with other investigational or marketed agents.
1.125 “Phase I/II Clinical Trial” means a combined Phase I Clinical Trial and Phase II Clinical Trial. For the purposes of this Agreement, a Phase I/II Clinical Trial shall be deemed a Phase II Clinical Trial for the purposes of Section 11.2(a)(i).
1.126 “Phase II Clinical Trial” means a clinical trial of an investigational product in patients with the primary objective of characterizing its activity in a specific disease state as well as generating more detailed safety, tolerability, pharmacokinetics, and dosing information as described in 21 C.F.R. 312.21(b), or a comparable Clinical Trial prescribed by the relevant Regulatory Authority in a country other than the United States including a human clinical trial that is also designed to satisfy the requirements of 21 C.F.R. 312.21(a) or corresponding foreign regulations and is subsequently optimized or expanded to satisfy the requirements of 21 C.F.R. 312.21(b) (or corresponding foreign regulations) or otherwise to enable a Phase III Clinical Trial (e.g., a Phase II/III Clinical Trial). The investigational product can be administered to patients as a single agent or in combination with other investigational or marketed agents.
1.127 “Phase II/III Clinical Trial” means a combined Phase II Clinical Trial and Phase III Clinical Trial. For the purposes of this Agreement, a Phase II/III Clinical Trial shall be deemed a Phase III Clinical Trial for the purposes of Section 11.2(a)(i).
1.128 “Phase III Clinical Trial” means any clinical trial of an investigational product in patients that incorporates accepted endpoints for confirmation of statistical significance of efficacy and safety with the aim to obtain Regulatory Approval in any country as described in 21 C.F.R. 312.21(c), or a comparable Clinical Trial prescribed by the relevant Regulatory Authority in a country other than the United States. The investigational product can be administered to patients as a single agent or in combination with other investigational or marketed agents.
14
|||


1.129 “Pivotal Clinical Trial” means a human clinical trial in any country that is prospectively designed to generate data intended to satisfy the requirements of 21 C.F.R. § 312.21(c) (as amended) in the U.S. or a similar clinical study prescribed by a Regulatory Authority from another country, from time to time, pursuant to Applicable Law.
1.130 “PMDA” means Japan’s Pharmaceuticals and Medical Devices Agency and any successor agency(ies) or authority having substantially the same function.
1.131 “Pompe Candidate” means (a) a Protein Sequence designed, discovered, optimized and/or evolved by or on behalf of either Party or both Parties in the Pompe Program for the Pompe Field and (b) those Protein Sequences coded as [***], and any other Protein Sequences discovered prior to the Effective Date by or on behalf of Codexis for the Pompe Field, including [***] sequences.
1.132 “Pompe Disease” means a [***], including any Indication thereof.
1.133 “Pompe Field” means the Treatment of Pompe Disease in humans.
1.134 “Pompe Product” means a gene therapy product that includes, contains or incorporates one or more Pompe Sequences delivered by a Gene Therapy Vehicle, including all forms, presentations, strengths, doses and formulations (including any methods of delivery), whether solely or together with Other Components of such product.
1.135 “Pompe Program” means, collectively, the activities undertaken or to be undertaken pursuant to the applicable Program Plan for Development of the Pompe Candidate.
1.136 “Pompe Sequence” means any nucleic acid sequences, including a deoxyribonucleic acid or ribonucleic acid sequence, encoding a Pompe Candidate.
1.137 “Pompe Target Gene” means the [***] gene or any other gene, the Modulation of which would lead to the Treatment of Pompe Disease.
1.138 “Pricing Approval” means any approval, agreement, determination, or decision establishing prices that can be charged to consumers for a pharmaceutical product or that will be reimbursed by Governmental Authorities for a pharmaceutical (or biological) product, in each case, in a country in the Territory where Governmental Authorities or Regulatory Authorities approve or determine pricing for pharmaceutical products.
1.139 “Products” means a Fabry Product, a Pompe Product, a [***] Product, an Additional Product, subject to Section 5.1, or an Option Product, subject to Section 5.2 (and each, a “Product”).
1.140 “Program” means the Fabry Program, Pompe Program, [***] Program, Additional Program, if any such Additional Program is initiated in accordance with Section 5.1, or Option Program, if any such Option Program is initiated in accordance with Section 5.2 (collectively, the “Programs”), excluding any Terminated Program.
1.141 “Program Budget” means, with respect to a Program, the detailed budget for the completion of the activities contemplated under the Program Plan, provided in the applicable Program Plan.
1.142 “Program Period” means, on a Program-by-Program basis, the period (a) commencing on (i) the Effective Date with respect to each Initial Program or (ii) the date when a Program Plan is first confirmed and reduced to writing by the Parties with respect to each of the Additional Programs
15
|||


and Option Program, and (b) ending upon the earlier of (i) completion of all activities stipulated in the applicable Program Plan or (ii) the Program Termination Date.
1.143 “Program Plan” means a mutually agreed upon written plan detailing the activities to be conducted by the Parties and associated Program Budgets for the applicable Program, including, but not limited to, (a) the purpose and scope of such Program, (b) the applicable Field, (c) the nature, scope and timeframe of the activities to be conducted by each Party; (d) to the extent practicable, the characteristics of the Protein Sequence(s) to be designed, engineered, and/or evolved, and (e) such other information, processes or procedures as Takeda and Codexis may mutually agree upon. The Program Plans respectively for the Fabry Program, the Pompe Program and the [***] Program are attached hereto as Exhibit B, Exhibit C, and Exhibit D.
1.144 “Program Termination Date” means, with respect to each Program, (a) the date when [***] ([***]) days expire following Codexis’s receipt of a termination notice from Takeda pursuant to Section 5.3 or (b) the date of termination of this Agreement with respect to such Program pursuant to Section 15.2.
1.145 “Prosecution” means the preparation, drafting, filing, prosecution (including any interferences, reissue proceedings, reexaminations, inter partes reviews, post-grant reviews, oppositions and Patent office appeals) and maintenance of Patents. When used as a verb, “Prosecute” means to engage in Prosecution.
1.146 “Protein Sequence” means a protein sequence and any and all derivatives, fragments, progeny or modifications thereto.
1.147 “Regulatory Approval” means, with respect to a Product in any country or jurisdiction, all approvals (including where required to market the Product, any Pricing Approval), registrations, licenses or authorizations from a Regulatory Authority in a country or jurisdiction that are necessary to market and sell such Product in such country or jurisdiction.
1.148 “Regulatory Authority” means any national or supranational Governmental Authority (including, without limitation, the FDA, EMA and PMDA) which has regulatory responsibility and authority in one or more countries for review and approval of development and commercialization of therapeutic products.
1.149 “Regulatory Materials means, with respect to each Product, (a) all applications (including all INDs and MAAs), registrations, licenses, authorizations, and approvals (including Regulatory Approvals), and amendments and supplements for any of the foregoing, and (b) all documentation, correspondence, submissions and notifications submitted to or received from a Regulatory Authority that are necessary or reasonably useful in order to Exploit such Product in the Field in the Territory, including the contents of any minutes from meetings (whether in person or by audio conference or videoconference) with a Regulatory Authority, all regulatory drug lists, advertising and promotion documents shared with Regulatory Authorities, adverse event files, complaint files, and Manufacturing records shared with Regulatory Authorities.
1.150 “Representatives” shall have the meaning set forth in Section 16.4.
1.151 “Research Invention” shall have the meaning set forth in Section 10.2(c)(iii).
1.152 “Reserved Target Indications” means those Indications set forth and defined in Exhibit A. In no event shall the Reserved Target Indications list more than [***] ([***]) Indications.
16
|||


1.153 “Results” means the findings, results, data and information that are generated in the course of performance of the activities contemplated by a Program Plan.
1.154 “Royalty Term” means, on a Product-by-Product and country-by-country basis, the period of time commencing on the First Commercial Sale of a Product in such country and expiring upon the latest of:
(a) the date of the expiration of the last to expire Valid Claim of a Codexis Patent that is exclusively licensed to Takeda under Section 10.2(b);
(b) expiration of all exclusivity granted by a Regulatory Authority for the Product in such country; and
(c) the ten (10)-year anniversary of the date of First Commercial Sale of the Product in such country.
1.155 “SEC” shall have the meaning set forth in Section 9.4.
1.156 “Senior Officers” shall have the meaning set forth in Section 19.1(a).
1.157 “Takeda” shall have the meaning set forth in the preamble hereto.
1.158 “Takeda Foreground IP” shall have the meaning set forth in Section 10.1(d).
1.159 “Takeda Indemnitees” shall have the meaning set forth in Section 18.2.
1.160 “Takeda Materials” shall have the meaning set forth in Section 3.8(a).
1.161 “Takeda Prosecuted Codexis Patent” shall have the meaning set forth in Section 14.1(b).
1.162 “Takeda Product IP” shall have the meaning set forth in Section 10.1(d).
1.163 “Takeda Product Patent” means any Patents that Cover the Takeda Product IP.
1.164 “Takeda Results” shall have the meaning set forth in Section 10.1(e).
1.165 “Takeda Shelving” shall have the meaning set forth in Section 15.2(h).
1.166 “Target Gene” means each of Fabry Target Gene, Pompe Target Gene, [***] Target Gene, Additional Target Gene, subject to Section 5.1, and Option Target Gene, subject to Section 5.2 (collectively, the “Target Genes”).
1.167 “Term” shall have the meaning set forth in Section 15.1.
1.168 “Terminated Field” shall have the meaning set forth in Section 4.2.
1.169 “Terminated Initial Program” shall have the meaning set forth in Section 5.1.
1.170 “Terminated Product” shall have the meaning set forth in Section 15.3(a).
1.171 “Terminated Program” means a Program that is terminated pursuant to Section 5.3 or Section 15.2.
17
|||


1.172 “Territory” means worldwide.
1.173 “Third Party” means any Person other than Takeda, Codexis, and each of their respective Affiliates.
1.174 “Third Party Infringement Claim” shall have the meaning set forth in Section 14.3(a).
1.175 “Third Party Claim” means any and all suits, claims, actions, proceedings, or demands brought by a Third Party.
1.176 “Treatment” means treatment, control, amelioration or prevention of any human conditions, diseases or disorders.
1.177 “U.S.” means the United States of America, including its territories and possessions, including Puerto Rico.
1.178 “Upfront Payment” shall have the meaning set forth in Section 11.1.
1.179 “Valid Claim” means, with respect to a Patent in a country, any claim of an (a) issued Patent that has not (i) expired, irretrievably lapsed or been abandoned, revoked, dedicated to the public or disclaimed or (ii) been found to be unpatentable, invalid or unenforceable by an unreversed final decision of a Governmental Authority in such country or (b) application for a Patent that (i) has been pending for less than [***] ([***]) years from the date of its filing and is being prosecuted in good faith and has not been abandoned or finally disallowed and (ii) has not been admitted to be invalid or unenforceable through reissue, reexamination, or equivalent process.
2. OVERVIEW OF COLLABORATION
2.1 Overview of Programs.
During the Program Period, and in accordance with the terms and conditions of this Agreement, the Parties will collaborate to design, discover, optimize, evolve and otherwise research and develop Candidates that Modulate each applicable Target Gene according to the applicable Program Plan.
2.2 Overview of Development, Manufacture and Commercialization. During the Term, and in accordance with the terms and condition of this Agreement, Takeda will have the sole right to conduct and be responsible for, at its cost and expense, all Development, Manufacture and Commercialization of Products in the applicable Field in the Territory.
3. Programs
3.1 Initiation of Initial Programs. In accordance with the terms and conditions of this Agreement and the applicable Program Plans, promptly after the Effective Date, the Parties shall initiate the Development for the Fabry Program, the Pompe Program, and the [***] Program (collectively, the “Initial Programs”).
3.2 Program Plans. From time to time during the applicable Program Period, either Party may request to amend a Program Plan, including those Program Plans for the Initial Programs, through the JSC. Once approved by the JSC (or agreed by the Parties with respect to those amendments that are not subject to the JSC approval), any amendment to a Program Plan shall be set forth in writing and such Program Plan, as so amended, shall thereafter be the Program Plan in respect of the applicable
18
|||


Program for all purposes. In the event of any conflict between a Program Plan and the terms and conditions of this Agreement, the terms and conditions of this Agreement shall govern.
3.3 Standard of Performance. Each Party shall use diligent efforts (but no less than the Commercially Reasonable Effort) to perform all activities assigned to it hereunder and under the Program Plan(s) in a timely manner, consistent with this Agreement, the applicable Program Plan (for clarification, specifically including timeframe and Program Budget provided therein). Without limiting the generality of the foregoing, Codexis shall conduct the activities in the Program Plan(s) in a good scientific manner and in compliance with Applicable Law and with a level of care and diligence consistent with that which Codexis applies when performing comparable activities for its internal purposes and for Third Parties.
3.4 Use of Affiliates and Contactors. To the extent expressly permitted in the applicable Program Plan or otherwise consented by Takeda in advance and in writing (not to be unreasonably withheld, conditioned or delayed), Codexis may use one or more Third Party contractor(s) to perform activities described in a Program Plan on a fee-for-service basis (each a “Contractor”); provided that (a) such Contractor is subject to obligations that Codexis undertakes hereunder to Takeda (including, obligations of confidentiality and non-use with respect to Takeda’s Confidential Information) to substantially the same extent as set forth in this Agreement, (b) Codexis shall retain control over, and direct the conduct of such Contractor in respect of all material aspects of the activities hereunder and (c) Codexis shall be responsible and liable for the performance or non-performance of such Contractor as though such performance or non-performance were that of Codexis hereunder. Codexis shall at all times be responsible for the performance of any such Contractor.
3.5 Records. Each Party shall prepare and maintain, and require its Affiliates and contractors to prepare and maintain, complete and accurate written records and accounts with respect to any activities conducted by it, its Affiliates and its contractors in furtherance of the Programs and all Results, whether Codexis Results, Takeda Results or otherwise, as applicable, in a manner in conformity with the Applicable Law and standard pharmaceutical industry practices.
3.6 Disclosure of Inventions. Each Party will disclose, through the Patent Committee and pursuant to Article 13, to the other Party any Inventions that are conceived and reduced to practice in the performance of each Program, whether solely by or on behalf of a Party or jointly by or on behalf of the Parties, to the Patent Committee.
3.7 Deliverables. From time to time during the Program Period (but no later than [***] ([***]) days after the end of the Program Period) with respect each Program, Codexis shall prepare and provide the applicable Deliverables to Takeda as specified under the applicable Program Plan.
3.8 Material Transfer.
(a) Takeda Materials. To the extent expressly agreed by the Parties under each Program Plan, or as otherwise mutually agreed by the Parties in writing, Takeda may transfer to Codexis certain tangible embodiments of the Takeda’s Background IP (“Takeda Materials”).
(b) Material Transfer Notice. Each transfer of any Takeda Materials shall be accompanied by a material transfer notice, the form of which is provided as Exhibit E, that may include the identity, detail, and quantity of the Takeda Materials being transferred as well as the
19
|||


supplemental terms and conditions applicable to the Takeda Materials in addition to the terms of use provided in Section 3.8(c).
(c) Terms of Use of Takeda Materials. Codexis shall use, store, and dispose of any Takeda Materials, including any materials generated, extracted or derived therefrom, solely for the purpose of performing the applicable Program and strictly in compliance with the terms and conditions set forth in this Section 3.8(c) and the supplemental terms and conditions specified in the relevant material transfer notice, if applicable. In the event of any conflict between the terms of this Agreement and any such supplemental terms and conditions, the terms of this Agreement shall govern unless otherwise agreed by the Parties in writing. Codexis shall not administer any Takeda Materials to humans regardless of its purpose or manners and shall not reverse engineer, decompile, disassemble, chemically analyze, modify or create derivative works based on the Takeda Materials, unless otherwise expressly required by the applicable Program Plan. Codexis shall not transfer any Takeda Materials, in part or whole, to any Third Party without obtaining prior written consent of Takeda or unless otherwise expressly and mutually agreed to by the Parties in accordance with the applicable Program Plan. Provision of any Takeda Materials from Takeda to Codexis hereunder shall not be construed as transferring ownership thereof or granting any right, title, interest or license therein or thereto to Codexis, other than as set forth in Section 10.2(a), and Takeda continues to retain ownership thereof. Codexis shall promptly cease any and all use of Takeda Materials (for clarification, including any derivatives thereof) and promptly destroy them or return them to Takeda in a reasonable method upon the termination or expiration of this Agreement or the applicable Program or at any time upon request from Takeda.
3.9 In-License by Codexis from Third Party. In performing each Program, Codexis shall only use Codexis Technology that is Controlled by Codexis or its Affiliates. In the event any Codexis Technology is in-licensed by Codexis or its Affiliates from a Third Party during the Term, Codexis or its Affiliates shall not agree to any terms under an agreement with such Third Party that may [***]. If Codexis breaches the foregoing obligation, in addition to any other rights and remedies Takeda may have under this Agreement, at law or in equity, Codexis shall [***].
4. EXCLUSIVITY
4.1 Reserved Target Indications. In consideration of the Upfront Payment, Codexis hereby grants Takeda an exclusive (even as to Codexis and its Affiliates) right to the Reserved Target Indications during the Exclusivity Period. Other than as part of any Programs hereunder, Codexis shall not, by itself or directly or indirectly through its Affiliates or Third Parties, perform any activities in connection with or directed to any Reserved Target Indications during the Exclusivity Period.
4.2 Field. During the Term, Codexis shall not, by itself or directly or indirectly through its Affiliates or Third Parties, perform any activities in connection with or directed to a Field other than in accordance with this Agreement and each applicable Program Plan. For clarity, if Takeda terminates a Program in accordance with the terms of this Agreement, or if Takeda terminates this Agreement with respect to all of the Products in a Field, in each case, the applicable Field shall be excluded from the provisions of this Section 4.2 (“Terminated Field”) and Codexis shall be free to perform activities by itself or with or through Affiliates or Third Parties in such Terminated Field.
4.3 Exception of [***]. Notwithstanding the foregoing, Section 4.1 and Section 4.2 shall not apply to, and Codexis may continue to perform by itself, or through or with its Affiliates, subcontractors, or
20
|||


other Third Parties, any activities in connection with or directed for one or more programs that are existing as of the first date of each Program Period and directly related to [***]; provided, Codexis shall be subject to its confidentiality and restrictions on the use of Takeda’s Confidential Information, Takeda’s Background IP, Takeda Foreground IP and the Takeda Results set forth in Article 9 and Article 10.
5. ADDITIONAL PROGRAM AND OPTION PROGRAM; Terminated program
5.1 Additional Programs. In the event Takeda terminates an Initial Program in accordance with Section 5.3 (each, a “Terminated Initial Program”), Takeda will have the right to initiate, during the Exclusivity Period, an Additional Program for one of the Indications that Takeda elects from the Reserved Target Indications (“Additional Indication”). To exercise its right to initiate an Additional Program, Takeda shall notify Codexis through a written notice regarding its intent, along with the elected Reserved Target Indication, within the Exclusivity Period. Upon Codexis’s receipt of such notice from Takeda, the Parties shall promptly discuss and agree upon a Program Plan (for clarification, including the Program Budget) with respect to such Additional Program in good faith and shall initiate the Development for the Additional Program promptly after the Program Plan is agreed by the Parties. Notwithstanding anything to the contrary herein, Takeda shall have the right to initiate one Additional Program for each Terminated Initial Program during the Exclusivity Period, and Takeda shall not have the right to initiate an Additional Program after the end of the Exclusivity Period even if Takeda terminates an Additional Program in accordance with Section 5.3.
5.2 Option Program. Codexis hereby grants Takeda an exclusive option during the Exclusivity Period to initiate the Option Program for one of the Indications that Takeda elects from the Reserved Target Indications (“Option Indication”), at its sole discretion, by providing written notice to Codexis indicating Takeda’s intent to exercise the Option Program, along with the elected Reserved Target Indication (“Option Exercise Notice”) within the Exclusivity Period. During the Exclusivity Period, prior to Takeda’s exercise of its option, if Takeda provides a written notice to Codexis indicating Takeda’s interest in electing one Reserved Target Indication as the Option Indication, the Parties shall promptly discuss and prepare a draft of the applicable Program Plan (for clarification, including the Program Budget) in good faith. Upon Takeda’s valid exercise of the Option Program in accordance with this Section 5.2, the Parties shall promptly finalize the applicable Program Plan (for clarification, including the Program Budget) in good faith based on the draft Program Plan, and shall initiate the Development for the Option Program after the Program Plan is agreed by the Parties, and Takeda shall pay the Option Fee to Codexis within [***] ([***]) days of [***]. If Takeda fails to exercise its option to initiate the Option Program during the Exclusivity Period in accordance with this Section 5.2, Takeda’s right to an Option Program shall terminate and be of no further effect.
5.3 Right of Early Termination. With respect to a Program, at any time during the relevant Program Period, Takeda shall have the right to terminate the Program by providing Codexis with a [***] ([***])-day prior notice of its decision not to further pursue the Program, with or without any reason; provided, however, during the first (1st) year of the Program Period, Takeda shall not exercise the foregoing right to terminate a Program unless [***] or if [***]. Upon its receipt of a termination notice from Takeda, subject to Section 8.5, Codexis shall cease performing all activities under the Program Plan within the [***] ([***]) days thereafter.
6. DEVELOPMENT, MANUFACTURE AND COMMERCIALIZATION
21
|||


6.1 Takeda’s CRE Obligations. During the Term, in accordance with the terms and conditions of this Agreement, Takeda shall have the sole right to Develop, Manufacture and Commercialize the Candidates and corresponding Nucleic Acid Sequences and Products in the applicable Field in the Territory. During the Term following the expiry of each Program Period and receipt of the Deliverables pursuant to Section 3.7, Takeda shall use Commercially Reasonable Efforts to Develop, Manufacture and Commercialize the Candidates and corresponding Nucleic Acid Sequences and Products in the applicable Field in the Territory. For clarification, the foregoing sentence shall not be construed as obliging Takeda to Develop, or seek Regulatory Approval for, Manufacture or Commercialize any Product: (a) [***]; or (b) in a manner inconsistent with Applicable Law. Notwithstanding Sections 7.5 and 7.6, upon Codexis’s written request, not to exceed [***], Takeda shall provide Codexis with reasonably detailed response to establish its compliance with its diligence obligations under this Section 6.1.
6.2 Decision Making. Subject to Section 6.1, Takeda shall have sole decision-making authority with respect to all aspects of Development, Manufacturing and Commercialization of the Products in the applicable Field in the Territory.
6.3 Trademarks. Each Party shall own and have sole responsibility, at its own expense, for all matters relating to the use of, and shall own and control, trademarks (a) used in the sale of its own products, which in the case of Takeda shall include the Products, and (b) that may appear on any packaging or promotional materials related to such Party’s products, including the selection, filing, prosecution, maintenance, defence and enforcement thereof. Upon selection of a trademark that will be used for a Product, Takeda shall notify such trademark to Codexis in writing. So long as such trademark is not already in use by Codexis, Codexis shall not adopt or use, register or attempt to register in the Territory any trademark, trade name, domain name, or similar commercial symbol that includes, or is confusingly similar to, Takeda’s trademarks used in connection with any Products.
7. JOINT STEERING COMMITTEE
7.1 Governance Overview; Membership and JSC Term. Within [***] ([***]) days after the Effective Date, Takeda and Codexis shall establish a “Joint Steering Committee” or “JSC” to serve as the overall governing body for the conduct and progress of the Programs and as the communication forum for the progress of the Development of the Products under this Agreement. The JSC shall be comprised of [***] ([***]) senior-level representatives of each Party. The JSC representatives shall be senior-level employees of the appointing Party having appropriate expertise and decision-making authority. Either Party may replace any or all of its representatives on the JSC at any time upon prior written notice to the other Party. Any member of the JSC may designate a substitute to attend and perform the functions of that member at any meeting of the JSC. Additional non-members of the JSC having relevant experience may from time to time be invited to participate in a JSC meeting, provided that such participants shall have no voting rights or powers. Non-member participants who are not employees of a Party or its Affiliates shall only be allowed to attend if: (a) the other Party’s representatives have consented to the attendance (such consent not to be unreasonably withheld, delayed or conditioned); and (b) such non-member participant is subject to confidentiality and non-use obligations at least as restrictive as those set forth in this Agreement. The JSC shall terminate and this Article 7 shall have no force or effect, with respect to each Program, upon the initiation of the first [***] of a Product for such Program in accordance with the terms of this Agreement (the “JSC Term”) and Takeda has no further intent to initiate the first [***] for such Program. The JSC may create one or more sub-committees and delegate activities to such subcommittees as appropriate to further the purposes of the Programs, provided, however,
22
|||


only the JSC shall have the authority to make any approvals and resolve disputes in accordance with this Article 7.
7.2 JSC Responsibilities. The JSC’s primary responsibility shall be to:
(a) Monitor, discuss and review the progress of each Program, including evaluation of whether each Program has met the objective milestones and other criteria for advancement, the timeframe and the Program Budget described in the applicable Program Plan;
(b) Review the progress of the Development of each Product;
(c) Review, discuss and approve a new Program Plan (for clarification, which includes the Program Budget and the Deliverables) for an Additional Program, subject to Section 5.1, and the Option Program, subject to Section 5.2;
(d) Review, discuss and approve any amendment to a Program Plan, including any amendment to the associated Program Budgets; provided, however, the JSC shall not have the authority to increase a Program Budget by more than [***] ([***]) of the then current Program Budget;
(e) Review status updates as provided by the Patent Committee;
(f) Discuss and resolve disputes with respect to the Programs properly referred to the JSC; and
(g) Perform other obligations specifically delegated to it under this Agreement.
7.3 Meetings. The JSC will meet at least once per [***]. The location of regularly scheduled meetings shall alternate between the offices of the Parties unless otherwise agreed by the JSC. Meetings of the JSC may also be held telephonically, by video conference or by any other means agreed to by the JSC. Meetings of the JSC shall be effective only if a majority of representatives of each Party are present or participating. Members of the JSC shall have the right to participate in and vote at meetings by telephone or proxy. One Party shall be responsible for having its Alliance Manager (or otherwise appointing another individual to) (a) call and convene the JSC meetings, (b) prepare and circulate an agenda reasonably in advance of each upcoming meeting and (c) record the minutes of each JSC meeting, which minutes shall clearly document any decisions made by the JSC at such meeting. The foregoing responsibilities shall alternate between the Parties every [***] ([***]) months, with Codexis being responsible for the initial [***] ([***]) months following the Effective Date. The JSC meeting minutes shall be circulated to the Parties within [***] ([***]) Business Days following the meeting for review, comment and ratification by the Parties. Each Party shall be responsible for expenses incurred by its employees and its members of the JSC in attending or otherwise participating in JSC meetings, including travel and related costs.
7.4 Day-to-Day Activities. The Parties, and not the JSC, shall be responsible for directing the day-to-day activities performed by the Parties pursuant to this Agreement; provided that such day-to-day activities shall be consistent with the strategy and decisions of the JSC and the terms, conditions and requirements of this Agreement and the relevant Program Plan(s).
7.5 Reporting to the JSC. During the JSC Term, each Party shall report to the JSC, on a Calendar Quarter basis, the status of the activities performed by or on behalf of such Party in accordance with the terms of this Agreement and the applicable Program Plans.  Each Party shall provide written reports to the JSC at least [***] ([***]) Business Days in advance of each JSC meeting, and shall
23
|||


summarize all material developments since the preceding JSC meeting in respect of the Programs or the Development of the Candidates and the associated Nucleic Acid Sequences and Products, as applicable, then underway, including all material Codexis Results and Takeda Results, as applicable, achieved in connection therewith since the preceding JSC meeting.  Without limiting the generality of the foregoing, Takeda’s written report to the JSC for the [***] shall specify the Development and Manufacturing activities performed with respect to each such Candidate and the associated Nucleic Acid Sequences and Products, as applicable, then underway, with respect to each such Candidate, including a non-binding forecast indicating Takeda’s estimates for (a) [***] and (b) [***].  Each Party shall maintain records, in sufficient detail and in good scientific manner appropriate for patent and regulatory purposes, which shall fully and properly reflect all activities performed and Codexis Results and Takeda Results, as applicable, achieved in accordance with the terms of this Agreement and each Program Plan and shall make such records available to the other Party to inspect upon request, not more than [***] per Calendar Year (unless an audit results in a reasonably supported and significant findings requiring corrective action, in which case the auditing Party may conduct a reasonable number of additional audits to review any corrective action), during normal business hours and upon reasonable notice on dates that are mutually agreeable to each Party. 
7.6 Post-JSC Communication. Upon the termination of the JSC Term, Takeda shall provide Codexis, no later than [***] ([***]) days after each [***], a reasonably detailed report describing the status of the Development, Manufacture and Commercialization activities performed with respect to each Product, then underway, including a [***] ([***]) [***] non-binding forecast indicating Takeda’s estimates for (a) [***], (b) [***], (c) [***], and (d) [***]; provided, however, the foregoing (d) shall apply only after such [***] is first prepared in accordance with Takeda’s ordinary business practice.
7.7 Decision Making by the JSC. The members of the JSC shall cooperate in good faith and endeavor to mutually agree on any decisions required from the JSC. Each Party shall have one (1) vote and all decisions of the JSC shall be made based on mutual consent; provided, however, if the JSC is unable to reach unanimous agreement on any matter that requires JSC approval within [***] ([***]) Business Days after it is presented with such matter, then [***] shall have the right to decide such matters, unless [***] decision may (a) [***], (b) [***], (c) [***], and/or (d) [***]. In no event shall Takeda have the right to expand the scope of the license grant under this Agreement without Codexis’s consent. For all other disputes, either Party may seek to resolve such dispute in accordance with Article 19.
7.8 Alliance Manager. Promptly following the Effective Date, each Party shall appoint and designate in writing an alliance manager (“Alliance Manager”). Unless otherwise agreed between the Parties, the Alliance Managers shall be the primary contact between the Parties with respect to all matters related to this Agreement. Each Alliance Manager shall facilitate communication and coordination of the Parties’ activities under this Agreement relating to the Programs. The Alliance Manager shall attend, as a non-voting observer, meetings of the JSC, as well as any subcommittee or working group established by the JSC of which the Alliance Manager is not a member.
8. PROGRAM FUNDING
8.1 [***] Report and Invoicing. Each Party shall be solely responsible for any and all internal and external fees, costs and expenses incurred in connection with activities allocated to such Party in the applicable Program Plan for a Program, subject to the payments to be made by Takeda to Codexis described in this Article 8. Codexis shall not use any other funding sources from a Third
24
|||


Party for any Programs without prior notice to and written approval of Takeda. Within [***] ([***]) days after the end of each [***], Codexis shall provide Takeda with (a) a written update of the total Codexis Program Expenses actually incurred during the [***] and (b) a written invoice for the Codexis Program Expenses.
8.2 Reimbursement Payment by Takeda. Takeda shall pay Codexis within [***] ([***]) days following receipt of invoice with respect to each Codexis Program Expenses [***]. All payments made under this Section 8.2 shall be considered non-refundable, non-creditable and fully earned by Codexis as of date of the invoice and independent of any other work by Codexis on the same or other Program(s).
8.3 Invoice Information. All invoices shall contain the following: (a) a purchase order number, (b) Codexis’s wire transfer instructions, (c) the invoice amount and currency, (d) VAT amount and VAT rate, (e) if Codexis is VAT registered, Codexis’s VAT registration number, (f) invoice number, (g) invoice date and (h) a description of the goods and services covered by such invoice. All invoices shall be submitted by email, to the following email address: [***] or if by mail: to the following address:
Attn: [***]
8.4 Budget Shortfall. In the event that, in spite of Codexis’s Commercially Reasonable Efforts to complete the activities under a Program Plan within the Program Budget set forth therein, as amended from time to time, Codexis reasonably determines that such Program Budget will not be adequate to complete all activities under the Program, then Codexis shall promptly notify Takeda in writing of the projected amount of additional Program Budget needed to complete the activities under the Program Plan and the Parties shall discuss in good faith at the JSC how to deal with such potential shortfall of budget.
8.5 Terminated Program. With respect to a Terminated Program, Takeda shall remain responsible for reimbursing Codexis Program Expenses incurred prior to the applicable Program Termination Date pursuant to Section 8.2 and shall have no obligation to reimburse Codexis Program Expenses incurred on or after the applicable Program Termination Date, and neither Party shall have any obligations to perform any activities under a Program Plan on or after the Program Termination Date. Takeda shall reimburse Codexis for any and all reasonable costs or expenses incurred by Codexis in connection with the wind-down of activities for such Terminated Program within the [***] ([***])-day period following the termination notice from Takeda, as well as any and all non-cancellable commitments entered into by Codexis with a Third Party in connection with such Terminated Program prior to receiving Takeda’s termination notice; provided, [***]. Codexis shall promptly invoice Takeda the costs or expenses that Codexis is entitled to receive reimbursement from Takeda pursuant to the foregoing sentence and Takeda shall pay the invoiced amount to Codexis within [***] ([***]) days of [***]. Any and all fees already paid by Takeda for a Terminated Program in accordance with the applicable Program Plan, and spent by Codexis in accordance with the applicable Program Plan shall be non-refundable and non-creditable.
9. CONFIDENTIALITY AND RESTRICTIONS ON USE
9.1 Disclosure Process. The disclosing Party will use Commercially Reasonable Efforts, consistent with reasonable business practices, to (a) label or identify as “CONFIDENTIAL” Confidential Information which is disclosed in writing or other tangible form and (b) identify as “CONFIDENTIAL” at the time of disclosure or within [***] ([***]) Business Days after disclosure, Confidential Information that is disclosed verbally, provided, however, information that
25
|||


would reasonably be deemed as confidential will be Confidential Information of the disclosing Party.
9.2 Confidentiality and Restrictions on Use. Codexis and Takeda shall not, directly or indirectly, publish, disseminate or otherwise disclose, deliver or make available to any person outside their respective organizations any of the other Party’s Confidential Information, and shall not use any of the other Party’s Confidential Information for any purposes other than those purposes contemplated in this Agreement. Codexis and Takeda may disclose the other Party’s Confidential Information to their respective directors, officers, employees, consultants and legal or financial advisors solely to further the purposes of this Agreement; provided, each is subject to obligations of confidentiality and non-use of such Confidential Information to substantially the same extent as set forth in this Agreement.
9.3 Exceptions. The obligations of Section 9.2 shall not apply to a disclosing Party’s Confidential Information with respect to the receiving Party if:
(a) such information is, at the time of disclosure hereunder, in the public domain or otherwise generally available to the public, or such information thereafter becomes a part of the public domain or otherwise generally available to the public without a breach of this Agreement by the receiving Party; or
(b) as evidenced by contemporaneous proof, such information is already known to the receiving Party or its Affiliates, without confidentiality obligations, at the time the disclosing Party discloses it to such receiving Party hereunder; or
(c) such information is received without an obligation of confidentiality by the Party receiving such information from a third party who had a lawful right to disclose such information to such receiving Party; or
(d) as evidenced by contemporaneous proof, such information is independently developed or acquired by or on behalf of the receiving Party or its Affiliate without reference or access to or use of the disclosing Party’s Confidential Information.
9.4 Authorized Disclosure. Notwithstanding anything to the contrary in this Agreement, the receiving Party may disclose Confidential Information only to the extent such disclosure is reasonably necessary in the following instances:
(a) disclosing as required by Applicable Law or court or administrative order, including rules of a securities exchange on which the receiving Party’s securities are listed; provided, however, that in such event the receiving Party shall (i) to the extent possible, provide the disclosing Party with reasonable advance notice of such disclosure in order to afford the disclosing Party an opportunity to seek an injunction against such disclosure or to limit the disclosure, and (ii) limit the disclosure to that which is necessary to comply with such law, government regulation or court order;
(b) preparing and submitting Regulatory Materials and obtaining and maintaining Regulatory Approvals or Pricing Approvals for Products pursuant to the terms of this Agreement; provided, however, that reasonable measures shall be taken to assure confidential treatment of such information to the extent practicable and consistent with Applicable Law;
26
|||


(c) in communications with existing or bona fide prospective acquirers, merger partners, lenders or investors, and consultants and advisors of the receiving Party in connection with transactions or bona fide prospective transactions with the foregoing, in each case on a “need-to-know” basis and under appropriate confidentiality provisions substantially similar to those of this Agreement (provided that with respect to disclosing the terms of this Agreement to such disclosees, the term of such confidentiality obligations in such other agreement may be shorter than the confidentiality term in this Agreement, so long as it extends for at least [***] ([***]) years); and
(d) to its Affiliates, sublicensees or prospective sublicensees, subcontractors or prospective subcontractors, consultants, agents and advisors in order for the receiving Party to exercise its rights or fulfil its obligations under this Agreement, each of whom prior to disclosure must be bound by obligations of confidentiality and restrictions on use of such Confidential Information that are substantially similar to those set forth in this Article 9 (provided that the term of such confidentiality obligations in such other agreement may only extend for [***] ([***]) years); provided, however, that, the receiving Party shall remain responsible for any failure by any Person who receives Confidential Information pursuant to Section 9.3 to treat such Confidential Information as required under this Article 9.
Notwithstanding the foregoing, disclosure as may be mandated under this Section 9.4 shall in no way alter the confidential nature of such Confidential Information for any other purpose (except to the extent the disclosure was made publicly available, such as but not limited to filings required to be made with the U.S. Securities and Exchange Commission or other applicable entity having regulatory authority over such Party’s securities (the “SEC”), in which case such disclosed Confidential Information shall no longer be deemed confidential). With respect to the foregoing (a), the Parties acknowledge that each Party may in the future to be obliged to file a copy of this Agreement with the SEC and such Party shall be entitled to make such a required filing, provided, that such Party shall request confidential treatment of certain commercial terms and technical terms hereof to the extent such confidential treatment is reasonably available to such Party. In the event of any such filing, such Party shall provide the other Party, a reasonable time prior to filing, with a copy of the Agreement marked to show provisions for which the filing Party intends to seek confidential treatment and shall reasonably consider and incorporate the other Party’s comments thereon to the extent consistent with the legal requirements governing redaction of information from material agreements that must be publicly filed. Such other Party will as promptly as practical provide any such comments. The obligations set forth in this Article 9 will remain in effect following the expiration or termination of this Agreement for a period of [***] ([***]) years.
9.5 Return or Destruction. Upon written request of the other Party, each Party will return or destroy (as directed by the notifying Party) all copies of Confidential Information of the notifying Party; provided that each Party may retain a single copy of such Confidential Information for archival purposes and neither Party shall be required to destroy any securely stored computer files that contain the other Party’s Confidential Information created during automatic system back-ups, provided that the Confidential Information so retained remains subject to the confidentiality and non-use obligations set forth in this Agreement, and the computer files are not readily accessible to the retaining Party’s employees.
10. OWNERSHIP AND RIGHTS TO RESULTS; INTELLECTUAL PROPERTY
10.1 Ownership.
27
|||


(a) Background IP. Each Party acknowledges and agrees that as between the Parties (i) Codexis’s Background IP is the sole property of Codexis and (ii) Takeda’s Background IP is the sole property of Takeda, and any right, title and interest related thereto are not affected, transferred or assigned by this Agreement. Notwithstanding anything to the contrary herein, the Codexis Platform IP shall be deemed Codexis’s Background IP.
(b) Foreground IP Owned by Codexis. Each Party acknowledges and agrees that any and all rights, titles, and interests in and to any Inventions that directly relate to any and all Protein Sequences designed, discovered, engineered and/or evolved pursuant to this Agreement and each Program Plan, including without limitation any and all Candidates, or any and all corresponding deoxyribonucleic acid and/or ribonucleic acid sequences that encode such Candidates obtained by reversion translation of the amino acid sequence, and any and all derivatives, fragments, progeny or modifications thereto, including any Nucleic Acid Sequences, whether created by or on behalf of either or both Parties, and any and all Intellectual Property therein (“Codexis Foreground IP”), shall be solely owned by Codexis. Takeda hereby irrevocably assigns to Codexis its entire right, title, and interest in and to the Codexis Foreground IP without seeking any additional consideration therefor from Codexis.
(c) Results Owned by Codexis. Each Party acknowledges and agrees that any and all rights, titles, and interests in and to any and all Results generated [***] (other than, for clarity, [***]) (“Codexis Results”) shall be solely owned by Codexis. Takeda hereby irrevocably assigns to Codexis its entire right, title, and interest in and to the Codexis Results, if any, without seeking any additional consideration therefor from Codexis. Codexis Results shall be Confidential Information of Codexis; provided, for clarification, [***].
(d) Foreground IP Owned by Takeda. Each Party acknowledges and agrees that, (i) any and all rights, titles, and interests in and to any Inventions that directly relate to the Products, including any Inventions that directly relate to Gene Therapy Vehicles including, containing or combining any Nucleic Acid Sequences that are delivered by such Gene Therapy Vehicles, whether created by or on behalf of either or both Parties, and any and all Intellectual Property therein (“Takeda Product IP”) and (ii) any and all rights, titles and interests in and to any Inventions other than Codexis Foreground IP and Takeda Product IP, whether created by or on behalf of either or both Parties, and any and all Intellectual Property therein (“Other IP”) (collectively, Takeda Product IP and Other IP, “Takeda Foreground IP”) will be solely owned by Takeda. In no event shall Takeda have ownership in, to or under Codexis Foreground IP or Codexis Foreground Patents, provided, [***]. Codexis hereby irrevocably assigns to Takeda its entire right, title, and interest in and to the Takeda Foreground IP without seeking any additional consideration therefor from Takeda. Notwithstanding anything to the contrary in this Agreement, any Regulatory Materials generated in the course of the Development, Manufacturing and Commercialization of any Products hereunder shall be owned by, and shall be the sole property and held in the name of, [***] or its designee. Subject to the terms of this Agreement, including the last sentence of Section 10.2(c)(iii), [***] shall own any and all Research Inventions.
(e) Results Owned by Takeda. Each Party acknowledges and agrees that any and all rights, titles, and interests in and to any and all Results generated [***] (other than, for clarity, [***]) (“Takeda Results”) shall be solely owned by Takeda. Codexis hereby irrevocably assigns to Takeda its entire right, title, and interest in and to the Takeda Results, if any,
28
|||


without seeking any additional consideration therefor from Takeda. Takeda Results shall be Confidential Information of Takeda.
(f) Cooperation in Assignment. Each Party shall cooperate with the other Party to effectuate ownership of the Codexis Foreground IP and Takeda Foreground IP, as applicable, including by executing and recording documents, at the other Party’s cost and expense. Assignments of Codexis Foreground IP or Takeda Foreground IP, as applicable shall be effectuated as follows: (i) employees or agents of Codexis or its Affiliate that are named as inventors on the Patents shall assign their interest in such Patents to Codexis, directly or through multiple tiers; and (ii) employees or agents of Takeda or its Affiliate that are named as inventors on the Patents shall assign their interest in such Patents to Takeda, directly or through multiple tiers; then, as appropriate, each Party shall assign their interests in such Patents to the other Party as provided in Section 10.1(b) or 10.1(d).
(g) Results Owned by the Parties. As of the Effective Date, the Parties do not intend [***] in the course of performance of the activities contemplated by a Program Plan. Each Party acknowledges and agrees that in the event that any Results are generated [***] in the course of performance of the activities contemplated by a Program Plan, [***]. Unless and until [***], (i) [***]; (ii) [***]; and (iii) [***].
10.2 License.
(a) License for the Programs. During the Program Period, and subject to the terms and conditions of this Agreement, Takeda hereby grants to Codexis and Codexis accept, a non-exclusive, non-transferable, fully paid-up, royalty-free right, sublicensable (solely to its Affiliates and Contractors) license under Takeda’s Background IP and Takeda Product IP solely as necessary for Codexis to perform the activities under the Program Plans pursuant to this Agreement and for Codexis to use any Takeda Materials transferred in accordance with Section 3.8. For clarification, in the event Takeda elects to terminate a Program, then the foregoing licenses in the applicable Field for such Terminated Program shall automatically terminate as of the date of termination of such Terminated Program, including Codexis’s rights to use the Takeda Materials.
(b) Exclusive License. Subject to the terms and conditions of this Agreement, and during the Term, Codexis hereby grants to Takeda, and Takeda accepts, an exclusive (including as to Codexis and its Affiliates), non-transferable (except in accordance with Section 20.6) royalty-bearing license, with the right to grant sublicenses (subject to Section 10.2(d)), under the Codexis Technology, including the applicable Candidates, to use any Candidates and corresponding Nucleic Acid Sequences for the Development (including those activities to be performed by or on behalf of Takeda or its Affiliate under each applicable Program Plan), Manufacturing and Commercialization of resulting Products in the applicable Field in the Territory and to Develop, Manufacture, and Commercialize such Products in the applicable Field in the Territory.
(c) Non-Gene Therapy Research License and Evaluation Research License.
(i) Non-Gene Therapy Research License. Subject to the terms and conditions of this Agreement, Codexis hereby grants to Takeda, and Takeda accepts, a non-exclusive, non-transferrable and sublicensable (subject to Section 10.2(d)) license under the Codexis Technology to perform the Non-Gene Therapy Research within or outside
29
|||


the applicable Field in the Territory during the Non-Gene Therapy Research License Term for the purposes of evaluating Takeda’s interest in obtaining an exclusive (including as to Codexis and its Affiliates), royalty-bearing license, with the right to grant sublicenses under the applicable Codexis Technology.
(ii) Evaluation Research License. Subject to the terms and conditions of this Agreement, during the Term, Codexis hereby grants to Takeda, and Takeda accepts, a non-exclusive, non-transferrable and sublicensable (subject to Section 10.2(d)) license under the Codexis Technology to perform the Evaluation Research of a Product for the purposes of evaluating Takeda’s interest in obtaining an exclusive (including as to Codexis and its Affiliates), royalty-bearing license, with the right to grant sublicenses under the applicable Codexis Technology.
(iii) Good Faith Negotiation. In each case Section 10.2(c)(i) and Section 10.2(c)(ii), if Takeda wishes to obtain such exclusive license under the applicable Codexis Technology from Codexis, Takeda shall provide a written notice to Codexis and the Parties shall negotiate in good faith in connection with such exclusive license grant for a period of [***] ([***]) days on an exclusive basis. If, at any time prior to Takeda providing a written notice in the preceding sentence, Codexis determines to commence the process for partnering with a Third Party with respect to any Candidates for use outside the Field, then Codexis shall, within [***] ([***]) days of such determination, provide a written notice to Takeda. Such notice must set forth the intent of Codexis to commence a partnering process and disclose identify of the Candidate and shall grant to Takeda the right to negotiate in good faith in connection with such exclusive license grant for a period of [***] ([***]) days on an exclusive basis from such notice from Codexis. Notwithstanding anything to the contrary herein, the license granted by Codexis to Takeda under this Section 10.2(c) excludes the right to Prosecute Patents that claim or cover any Inventions that may arise under this Section 10.2(c) (“Research Inventions”). In the event any such Patents are Prosecuted by Takeda, unless otherwise agreed between the Parties in writing, Takeda shall assign and hereby assigns its right, title and interest in and to such Research Inventions and Patents thereto.
(d) Sublicensing. Takeda shall have the right to grant sublicenses, through multiple tiers, of the rights granted to it by Codexis under this Article 10 to its Affiliates and to Third Parties; provided, however, that Takeda shall ensure that the terms of any sublicense granted pursuant to this Section 10.2(d) are consistent with the terms and conditions of this Agreement and that the obligations imposed on sublicensees are consistent with the terms and conditions of this Agreement. Takeda shall at all times remain responsible for, and shall be liable under this Agreement with respect to, any breach of this Agreement resulting directly or indirectly from the performance by its Affiliates and Third Parties under any such sublicenses as if the actions of such Affiliates and Third Parties are actions of Takeda. Takeda shall promptly notify Codexis in writing of any sublicenses granted to Third Parties under this Agreement and shall provide Codexis a copy of any sublicense agreement executed with Third Parties in accordance with this Section 10.2(d) upon reasonable prior request, provided, [***].
10.3 Codexis Platform IP. For clarity, the license grant by Codexis to Takeda in accordance with Section 10.2(a) through Section 10.2(d) excludes Codexis Platform IP. During the Term, Codexis covenants that it shall not sue, or bring claims against (a) Takeda, and/or (b) its Affiliates or
30
|||


sublicensees that obtain a sublicense grant from Takeda under the Codexis Technology licensed to Takeda by Codexis in accordance with Section 10.2(a), Section 10.2(b) and/or Section 10.2(c), in each case (a) and (b), claiming infringement of Codexis Platform IP solely to the extent Takeda, and such Affiliates and sublicensees are validly exercising each of its rights granted to such party under Section 10.2(a), Section 10.2(b), Section 10.2(c), and/or Section 10.2(d), as applicable.
10.4 No Implied License. No license or other right is or shall be created or granted hereunder by implication, estoppel or otherwise. All such licenses and rights are or shall be granted only as expressly provided in this Agreement.
11. PAYMENT
11.1 Upfront Payment. Subject to the terms and conditions of this Agreement, in consideration of licenses granted to Takeda hereunder, within [***] ([***]) Business Days following [***], Takeda shall pay to Codexis a one-time, non-refundable, non-creditable upfront fee of Eight Million Five Hundred Thousand U.S. dollars ($8,500,000) (“Upfront Payment”).
11.2 Milestone Payments.
(a) Development Milestones.
(i) Takeda shall promptly notify Codexis upon its first achievement of each Development milestone event (each, a “Development Milestone Event”) set forth below and, subject to the terms of this Agreement, pay Codexis the applicable one-time, non-refundable, non-creditable Development milestone payment (“Development Milestone Payment”) within [***] ([***]) days of [***] in the amount below corresponding to such Development Milestone Event on a [***] basis. [***].
Development Milestone Event (per Target Gene)Development Milestone Payment Amount
1.
[***]
[***]

2.
[***]

[***]

3.
[***]

[***]

4.
[***]

[***]

5.
[***]

[***]

6.
[***]

[***]
(ii) For purposes of clarity, one or more Development Milestone Events can occur during the same single Calendar Year. In the event a Product bypasses an earlier Development Milestone Event in the table above and achieves a later Development Milestone Event in the table, upon the achievement of such later Development Milestone Event, the milestone payments shall be payable both for the Development Milestone event achieved and the earlier Development Milestone Event that was bypassed; provided that, for clarification, (A) [***]; and (B) [***].
(b) Commercial Milestones. Takeda shall promptly notify Codexis upon its first achievement of each Commercialization milestone event set forth below (each, a “Commercialization Milestone Event”) set forth below and, subject to the terms of this Agreement, pay Codexis the applicable one-time, non-refundable, non-creditable Commercialization milestone payment (“Commercialization Milestone Payment”) within [***] ([***]) days
31
|||


of [***] in the amount below corresponding to such Commercialization Milestone Event on a [***] basis. [***].
Commercialization Milestone Event (per Target Gene)Commercialization Milestone Payment Amount
1.
[***]

[***]

2.
[***]

[***]

3.
[***]

[***]
11.3 Royalties.
(a) Royalty. Subject to the terms of this Agreement and in addition to any Development Milestone Payments or Commercialization Milestone Payments due under Section 11.2, during the Royalty Term, Takeda shall make tiered, non-refundable, non-creditable (subject to Sections 11.3(b) and 11.3(d)) royalty payments on a Product-by-Product and country-by-country basis to Codexis in respect of Net Sales of the Product in the Territory during each Calendar Year, as set forth below.
Calendar Year Net Sales of a Product
Royalties
(% of Calendar Year Net Sales)
[***]
[***]

[***][***]
[***]

[***][***]
[***]

[***][***]
(b) Biosimilar Step-Down. On a Product-by-Product basis, for any country in which the Biosimilar Competition Percentage in [***] ([***]) or more consecutive [***] are at least [***] ([***]) for such Product, the royalties payable to Codexis on Net Sales of such Product in such country shall be reduced by [***] ([***]) of those otherwise payable pursuant to this Section 11.3. The reduced royalties shall be applicable retroactively from the [***] of such [***] ([***]) consecutive [***] to the end of applicable Royalty Term with respect to such Product in such country, and any overpayments made by Takeda for such [***] consecutive [***] shall be creditable toward any subsequent royalty payments due to Codexis hereunder. If Takeda seeks a royalty step-down pursuant to this Section 11.3(b), (i) [***] and (ii) [***].
(c) Third Party Payment Stacking. If during the Royalty Term, Takeda enters into or becomes subject to any arms-length written agreement or equivalent arrangement (including any license agreement, settlement or award or judgment) with a Third Party under which Takeda obtains a license or other right (including any covenant not to sue or similar equivalent arrangement), under any Patent or other Intellectual Property (other than trademarks) of such Third Party in a particular country in the Territory [***] to use Candidates and corresponding Nucleic Acid Sequences for the Development, Manufacturing and Commercialization of resulting Products in the applicable Field in the Territory or to Develop, Manufacture or Commercialize a Product in such country, then, upon entry into any such agreement or arrangement and thereafter during the remainder of the period during which Takeda owes payment obligations to such Third Party pursuant to such agreement or arrangement and to Codexis under this Agreement based upon sales of such Product in such country, the Net Sales of such Product in such country to be included in the Net Sales for the purpose of the calculation of the royalties due under this Section 11.3 shall be reduced by an amount that is [***] ([***]) of all payments made by Takeda to such Third Party that are owed pursuant to such agreement or arrangement in consideration
32
|||


for the grant of such license or right under such Patent or other Intellectual Property (other than trademarks) by the applicable Third Party.
(d) [***]
11.4 Invoice and Payment of Royalty Payments
11.5 . Starting on the date of First Commercial Sale of any Product in the Territory, Takeda shall furnish to Codexis a written report on a [***] basis showing the Net Sales of each Product and the royalty payments due to Codexis on such sales. Each such royalty report shall be due within [***] ([***]) days after the end of the relevant [***]. Each royalty report shall describe in reasonable detail the Net Sales of each Product (including all deductions specified in the Net Sales definition), as well as the calculation of such Net Sales in the relevant local currency and the calculation of the exchange rate into Dollars, and the calculation of royalty payments due for the relevant [***]. Following the delivery of the applicable [***] report, Codexis shall invoice Takeda for the royalties due to Codexis with respect to Net Sales for such [***] as set forth in such royalty report and Takeda shall pay such amounts to Codexis within [***] ([***]) days following [***]. All payments hereunder shall be made in Dollars by wire transfer to a bank designated in writing by the Codexis. Conversion of sales recorded in local currencies to U.S. dollars shall be performed in compliance with the Accounting Standards.
11.5 Taxes. The amounts payable pursuant to this Agreement (“Payments”) shall not be reduced on account of any taxes unless required by Applicable Law. Takeda shall deduct and withhold from the Payments any taxes that it is required by Applicable Law to deduct or withhold. Notwithstanding the foregoing, if Codexis is entitled under any applicable tax treaty to a reduction of rate of, or the elimination of, or recovery of, applicable withholding tax, it may deliver to Takeda or the appropriate governmental authority the prescribed forms necessary to reduce the applicable rate of withholding or to relieve Takeda of its obligation to withhold tax. In such case Takeda shall apply the reduced rate of withholding, or not withhold, as the case may be, provided that Takeda is in receipt of evidence, in a form reasonably satisfactory to Takeda. If, in accordance with the foregoing, Takeda withholds any amount, it shall pay to Codexis the balance when due, make timely payment to the proper taxing authority of the withheld amount, and send Codexis proof of such payment within [***] ([***]) days following that payment. Each Party agrees to reasonably assist the other Party in lawfully claiming exemptions from and/or minimizing such deductions or withholdings under applicable tax treaty and any Applicable Law. Notwithstanding anything to the contrary in this Agreement, if Takeda assigns or sublicenses its rights or obligations under this Agreement, and if solely as a result of such sublicense or assignment, a payment under this Agreement is subject to any withholding tax or incremental withholding tax, the sum payable to Codexis shall be increased to the extent necessary to ensure that Codexis receives a sum equal to the sum which it would have received had no such sublicense or assignment occurred. For the avoidance of doubt, amounts payable under this Agreement are exclusive of value added tax, sales tax, consumption tax and other similar taxes (“Indirect Taxes”). [***] The Parties shall cooperate in accordance with Applicable Law to minimize Indirect Taxes incurred in connection with this Agreement.
11.6 Records; Audit Rights.
(a) Records. Each Party shall keep complete, true, and accurate books and records in accordance with the Accounting Standards in relation to this Agreement, including with respect to Takeda, its Affiliates, and cause its sublicensees, in relation to Net Sales,
33
|||


royalties, Development Milestone Payments, and Commercialization Milestone Payments. Each Party shall keep such books and records for at least [***] ([***]) years following the Calendar Year to which they pertain or for such longer period of time as required under any Applicable Law.
(b) Audit Rights. Subject to the other terms of this Section 11.6, during the Term, at the request of each Party (“Auditing Party”), which shall not be made more frequently than [***] ([***]) time per Calendar Year, upon at least [***] ([***]) days’ prior written notice from the Auditing Party, and at the expense of the Auditing Party, the other Party (“Audited Party”) shall permit an independent, nationally-recognized certified public accountant selected by the Audited Party and reasonably acceptable to the Audited Party (the “Auditor”) to inspect, during regular business hours, the relevant records required to be maintained by the Audited Party under this Agreement to verify the accuracy of the payments made by the Audited Party to the Auditing Party; provided, however, that such audit right shall not apply to [***] and that [***]. Prior to its inspection, the Auditor shall enter into a confidentiality agreement with both Parties having obligations of confidentiality and non-use no less restrictive than those set forth in Article 9 and limiting the disclosure and use of such information by such accountant to authorized representatives of the Parties. The Auditing Party shall treat the results of any the Auditor’s review of the Auditing Party’s records as Confidential Information of the Audited Party subject to the terms of Article 9. In the event such audit leads to the discovery of a discrepancy to the Auditing Party’s detriment, the Audited Party shall, within [***] ([***]) days after receipt of such report from the Auditor, pay any undisputed amount of the discrepancy. The Auditing Party shall pay the Auditor’s full cost of the audit unless the underpayment of amounts due to the Auditing Party is more than [***] ([***]) of the amount due for the entire period being examined, in which case the Audited Party shall pay the reasonable cost charged by the Auditor for such review. Any undisputed overpayments by the Audited Party revealed by an examination shall be creditable toward any payments due to the Audited Party in the following Calendar Quarters and if no such payments are due in the following Calendar Quarter, the Audited Party shall pay the Auditing Party such overpayments within [***] ([***]) days of the receipt of the Auditor’s report. Takeda shall [***] include substantially similar rights as set forth in this Section 11.6 in any sublicense agreement with its sublicensee.
12. PUBLICATION
12.1 Inventions and Results. Codexis and Takeda shall not disclose or publish (including, without limitation, in any press releases, journal publications, and/or scientific presentations) any Inventions that may arise under this Agreement, including without limitation, the existence, or content, of patent applications that have not been published by the relevant patent office, without the prior written notice to (or consent of) the other Party, including any and all Results, as required in Section 12.2.
12.2 Prior Consent. Prior to disclosing or publishing any Inventions or Results, including (a) Takeda’s disclosure of Codexis Results (including any Codexis Results included in the Deliverables), (b) Codexis’s disclosure of Takeda Results or (c) Codexis’s disclosure of the Deliverables (including any Codexis Results included in such Deliverables), that arise under this Agreement, the Party that wishes to disclose or publish will provide the other Party with drafts of proposed abstracts, posters, manuscripts, or summaries of presentations that include such information relating to such Inventions. The non-disclosing Party will respond promptly and in any event no later than [***]
34
|||


([***]) days after receipt of such proposed publication or presentation, if such publication or presentation is an abstract, poster or a summary, and no later than [***] ([***]) days if such publication is a manuscript, or such other period as may be agreed to by the Parties. The disclosing Party will delay any such proposed publication or presentation for up to [***] ([***]) days to permit the non-disclosing Party to make filings for patent protection and will not disclose or publish any Confidential Information of the non-disclosing Party. Notwithstanding the foregoing, in no event will Takeda or its Affiliates make a publication or any other public disclosure with respect to the Codexis Platform without Codexis’s prior written consent. Notwithstanding the foregoing, in no event shall (a) Codexis or its Affiliates make a publication or any other public disclosure with respect to the Takeda’s Background IP, Takeda Foreground IP, Deliverables or Takeda Results without Takeda’s prior written consent and (b) Takeda or its Affiliates make a publication or any other public disclosure with respect to the Codexis’s Background IP, Codexis Foreground IP or Codexis Results without Codexis’s prior written consent.
12.3 Publicity. Each Party agrees not to issue any press release or other public statement disclosing information relating to this Agreement or the transactions contemplated hereby that contains information not previously publicly disclosed in accordance with Section 9.4 or this Section 12 without the prior written consent of the other Party, such consent not to be unreasonably withheld, delayed or conditioned. Notwithstanding the foregoing and Article 9, the Parties agree to release a press release promptly upon the execution of this Agreement substantially in the form attached as Exhibit F hereto. Once any such press release is issued, each Party shall have the right to publicly refer to any information so publicly disclosed, including the existence of the relationship between the Parties hereunder and of this Agreement, without the consent of the other Party.
13. PATENT COMMITTEE
13.1 Patent Committee. Within [***] ([***]) days after the Effective Date, the Parties shall establish a patent committee (the “Patent Committee”) to discuss, oversee and coordinate the Prosecution (or abandonment) of Codexis Foreground Patents and Codexis Candidate/NAS Patents included under the Codexis Background IP, and Takeda Product Patents, enforcement and defense of such Patents, and defense against claims of infringement of Third Party patents relating to such Patents, all in accordance with the terms of this Agreement. In addition to disclosure of Inventions pursuant to Section 3.6, each Party shall disclose through the Patent Committee to the other Party any Inventions that may be Covered by a Codexis Foreground Patent, Codexis Candidate/NAS Patent included under the Codexis Background IP, or Takeda Product Patent, whether such Inventions are conceived or reduced to practice solely by a Party or jointly by the Parties.
13.2 Composition and Meetings. The Patent Committee shall be composed of [***] ([***]) employee from each of Takeda and Codexis knowledgeable in U.S. patent law and the technology areas that are the subject of this Agreement. The Patent Committee shall meet, in person, by teleconference, or by video-teleconference, at least [***] ([***]) time per [***], or more or less often as the Parties shall determine. In-person meetings shall alternate between Codexis and Takeda locations within the United States whenever possible unless otherwise agreed by the Parties. The first such meeting shall be within [***] ([***]) days after the Effective Date. Any member of the Patent Committee may designate a substitute, who shall be an employee of the applicable Party, to attend with prior written notice to the other Party. Ad hoc guests who are subject to written confidentiality obligations at least as stringent as the provisions in Article 9 or who are bound by attorney-client ethical obligations to maintain the confidentiality of Confidential Information may be invited to Patent Committee meetings. Each Party may replace its Patent Committee member with other of its
35
|||


employees with the qualifications set forth in this Section 13.2, at any time, upon written notice to the other Party.
13.3 Decisions. Decisions of the Patent Committee shall be made by consensus, with each Party having collectively [***] ([***]) vote in all decisions. The Patent Committee shall have only such powers as are specifically delegated to it in this Agreement and such powers shall be subject to the terms and conditions set forth herein. Without limiting the generality of the foregoing, the Patent Committee shall have no power to amend this Agreement or any Program Plan. If the Patent Committee is unable to reach a consensus decision on a matter that is within its decision-making authority within [***] ([***]) days after it has met and attempted to reach such decision, then such matter shall be submitted for resolution in accordance with Section 19.1.
13.4 Reports to the JSC. The Patent Committee shall provide status updates to the JSC [***] per [***] as long as the JSC is in existence and, thereafter, to the Parties; provided that the JSC shall have no decision making authority with respect to matters that are within the jurisdiction of the Patent Committee.
13.5 Duration. The Patent Committee shall endure for the Term and, by mutual agreement, beyond the Term. At any time when the Patent Committee no longer exists, decisions to be made by the Patent Committee hereunder shall be made by the mutual written agreement of the Parties.
14. PROSECUTION, MAINTENANCE, ENFORCEMENT AND DEFENSE
14.1 Prosecution.
(a) Codexis Patents. Codexis shall be responsible for the Prosecution of the Codexis Patents and shall keep Takeda reasonably informed of the status of such Prosecution. The costs and expenses related to the Prosecution of the Codexis Patents shall be borne [***]; provided, however, [***]. Through the Patent Committee, Codexis shall provide Takeda with a reasonable opportunity to review and comment substantively on the Prosecution of the [***] before taking material action, including by providing Takeda with a copy of material communications from any patent authority in the Territory regarding any [***], and by providing drafts of any material filings or responses to be made to such patent authorities in advance of submitting such filings or responses. The foregoing copy and draft shall be provided to Takeda through the Patent Committee in timely manner, at least [***] ([***]) days prior to [***]. Codexis shall use good faith efforts to incorporate into the relevant filing or submission all reasonable comments from Takeda. Without limiting the generality of the foregoing, at least [***] ([***]) days prior to the national phase filing deadline of any [***], Codexis shall notify Takeda’s representative on the Patent Committee of the countries in which Codexis plans to file. If there are any additional countries in which Takeda wishes the application to be filed, [***]. Should Takeda desire that a [***] be filed in any countries that are not contracting states to the Patent Cooperation Treaty, Takeda shall inform Codexis at least [***] ([***]) month prior to the filing deadline.
(b) Continued Prosecution by Codexis. Codexis shall notify Takeda of any decision not to file applications for, cease the Prosecution of, or not continue to pay the expenses for the Prosecution of, any [***] in any country(ies) within the Territory. Codexis shall provide such notice at least [***] ([***]) days prior to any filing or payment due date, or any other due date that requires action, in connection with such [***]. In such event, if Takeda
36
|||


provides a written notice expressing its interest in having such Codexis Patent Prosecuted in any such country(ies), Codexis shall permit Takeda, at Takeda’s cost and expense, to file or to continue Prosecution of such [***]. If Takeda assumes the cost and expense for the Prosecution of any Codexis Patents in any country pursuant to this Section 14.1(b) (“Takeda Prosecuted Codexis Patent”) and such Takeda Prosecuted [***] extends [***], then [***].
(c) Takeda Product Patents. Takeda shall be responsible for the Prosecution of (i) any Takeda Product Patents and (ii) any Patents that Covers the Background IP of Takeda at its sole cost and expense.
(d) Cooperation. Each Party hereby agrees to reasonably cooperate with one another with respect to the Prosecution of the Codexis Patents or Takeda Product Patents, as applicable, for which such Party is responsible pursuant to this Agreement, including by: (i) making its employees, and using reasonable efforts to make its licensees, sublicensees, independent contractors, agents and consultants, reasonably available to the other Party (or to the other Party’s authorized attorneys, agents or representatives), to the extent reasonably necessary to enable such Party to undertake Prosecution of Patents as contemplated by this Agreement; and (ii) endeavoring in good faith to coordinate its efforts with the other Party to minimize or avoid interference with the Prosecution of the other Party’s Patents that are subject to this Agreement.
(e) Invoicing and Payment. Within [***] ([***]) days after each [***], Codexis shall invoice Takeda the amount that Takeda is responsible for sharing pursuant to Section 14.1(a) in such previous [***], with reasonable documentation evidencing [***]. Takeda shall pay Codexis within [***] ([***]) days following [***] and all payment shall be considered non-refundable, non-creditable and fully earned by Codexis as of date of the invoice.
14.2 Enforcement.
(a) Notice. Each Party shall promptly notify to the other Party’s representative on the Patent Committee of any infringement by a Third Party of any Codexis Patents or Takeda Product Patents in the Territory of which it becomes aware, including any declaratory judgment, opposition, or similar action alleging the invalidity, unenforceability, or non-infringement with respect to such Codexis Patent or Takeda Product Patent, as applicable (“Infringement Action”). In any such instance, the Parties shall as soon as practicable thereafter discuss in good faith the best response to such Infringement Action through the Patent Committee.
(b) [***]. [***] shall have the first right, but not the obligation, to bring and control any legal action or take such other actions as it deems appropriate in connection with any actual or potential Infringement Action of any [***]. [***] shall notify [***] of its election to take any action with respect to the [***] in accordance with Section 14.2(b) within the earlier of: (i) [***] ([***]) days after the first notice under Section 14.2(a); or (ii) [***] ([***]) days before any time limit set forth in the Applicable Law, including the time limits set forth under the Hatch-Waxman Act. Notwithstanding the foregoing sentence, [***] shall not initiate any such suit or take such other action with respect to any [***] without first consulting with [***] and giving good faith consideration to any reasonable objection from [***] regarding [***] proposed course of action. In the event that [***] elects not to initiate a lawsuit or take other action in connection with any actual or potential
37
|||


Infringement Action of any [***], [***] shall have the right, but not the obligation, to initiate such suit or take such other action, after providing [***] ([***]) days (or [***] ([***]) days in the event there is a time limit) notice to [***] and giving good faith consideration to [***] reason(s) for not initiating a suit or taking other action.
(c) [***]. [***] shall have the right, but not the obligation, to bring and control any legal action or take such other actions as it deems appropriate in connection with any actual or potential Infringement Action of any [***] anywhere in the Territory as it reasonably determines appropriate, at its cost and expense.
(d) Takeda Product Patents. Takeda shall have the sole right, but not the obligation, to bring and control any legal action or take such other actions as it deems appropriate in connection with any actual or potential Infringement Action of any Takeda Product Patents anywhere in the Territory as it reasonably determines appropriate, at its cost and expense.
(e) [***] Right to Control. If [***] intends to not bring or cease taking legal action or take other action to terminate such actual or potential Infringement Action of such [***], it shall notify [***] of such intent within [***] ([***]) days. In such event, [***] shall have the right, but not the obligation, to bring and control any legal action or take such other actions, at its sole cost and expense.
(f) Assistance and Preparation. The non-enforcing Party pursuant to this Section 14.2 shall reasonably assist the enforcing Party (at the enforcing Party’s cost and expense) in any Infringement Action if so requested by the enforcing Party (provided that such assistance be coordinated through the Parties’ Patent Committee members), and the non-enforcing Party shall lend its name and be joined as a party plaintiff to such action if reasonably requested by such enforcing Party or required by Applicable Law. The non-enforcing Party shall have the right to participate and be represented in any such action by its own counsel at its own cost and expense. The non-enforcing Party shall cooperate, at the enforcing Party’s cost and expense, with the enforcing Party in investigating or terminating any suspected infringement, whether through legal action, negotiation or otherwise, including by producing all reasonably pertinent records, papers, information, samples, specimens and similar items, and directing its employees to testify and grant interviews, upon the request of the enforcing Party. The enforcing Party shall keep the non-enforcing Party reasonably informed of the status of the action through the enforcing Party’s Patent Committee members. Notwithstanding anything to the contrary in this Agreement, the non-enforcing Party shall bear all of its own internal costs incurred in connection with its activities under this Section 14.2.
(g) Disposition of Infringement Actions. The enforcing Party of an Infringement Action of any Codexis Candidate/NAS Patent under this Section 14.2 shall not enter into any settlement, consent judgment or other voluntary final disposition with the prior written consent of the non-enforcing Party, such consent not to be unreasonably withheld, delayed or conditioned.
14.3 Defense.
(a) Third Party Infringement Claim. Each Party shall promptly notify the other Party of any claim alleging that the Non-Gene Therapy Research, Evaluation Research, Development, Manufacture, or Commercialization of any Candidates, corresponding Nucleic Acid Sequences and/or Products in the Territory infringes, misappropriates, or otherwise violates
38
|||


any Patents, Know-How, or other Intellectual Property rights of any Third Party (“Third Party Infringement Claim”). In any such instance, the Parties shall as soon as practicable thereafter discuss in good faith the best response to such notice of such Third Party Infringement Claim through the Patent Committee.
(b) Right to Defend. Codexis shall have the sole right, but not the obligation, to defend, and take other actions (including to settle) with respect to any claim of Third Party Infringement Claim alleging that Codexis’ use of the Codexis Platform IP in the performance of Codexis’ obligations under a Program Plan infringes, misappropriates, or otherwise violates any Patents, Know-How, or other Intellectual Property rights of any Third Party, at Codexis’s sole discretion, cost, and expense, and Takeda shall have the right to be represented in any such action by counsel of its own choice at Takeda’s sole cost and expense. Takeda shall have right, but not the obligation, to defend, and take other actions (including to settle) with respect to any claim of Third Party Infringement Claim alleging that the Non-Gene Therapy Research, Development, Manufacture, or Commercialization of any Candidate, corresponding Nucleic Acid Sequences or Products infringes, misappropriates, or otherwise violates the Intellectual Property of any Third Party, at Takeda’s sole discretion, cost, and expense, and Codexis shall have the right to be represented in any such action by counsel of its own choice at Codexis’s sole cost and expense. If Takeda intends not to defend, and take other actions with respect to such claim of Third Party Infringement Claim, it shall notify Codexis of such intent within [***] ([***]) days. In such event, Codexis shall have the right to defend, and take other actions (including to settle) with respect to such claim of Third Party Infringement Claim, at its sole cost and expense. In no event shall either Party settle or otherwise compromise any Third Party Infringement Claim by admitting that any Codexis Patent or Takeda Patent is invalid or unenforceable without first obtaining the prior written consent of the other Party, which consent shall not be unreasonably withheld, conditioned, or delayed.
14.4 Recovery. In the event that a Party recovers any damages or other sums as a result of any action under Section 14.2 or Section 14.3, such damages or other sums recovered shall first be applied to all out-of-pocket costs and expenses incurred by the Parties in connection therewith, including attorneys’ fees. If such recovery is insufficient to cover all such costs and expenses of both Parties, it shall be shared [***]. If Codexis is the enforcing or defending Party and, after such reimbursement of the Parties’ costs and expenses, any funds shall remain from such damages or other sums recovered, such remaining funds shall [***] ([***]) to [***]. If Takeda is the enforcing or defending Party and, after such reimbursement of the Parties’ costs and expenses, any funds shall remain from such damages or other sums recovered, such remaining funds shall [***].
15. TERM AND TERMINATION
15.1 Term. This Agreement will commence on the Effective Date and will remain in full force and effect until it expires or earlier terminates as follows (the “Term”):
(a) on a Product-by-Product and country-by-country basis, this Agreement shall expire on the date of the expiration of the Royalty Term with respect to such Product in such country; and
(b) this Agreement shall expire in its entirety upon the expiration of all applicable Royalty Terms under this Agreement with respect to the Products in all countries in the Territory.
39
|||


15.2 Termination. This Agreement may be terminated prior to the expiration of the Term as applicable, as follows.
(a) Mutual Agreement. Upon the mutual written agreement of the Parties, this Agreement may be terminated as of the date agreed by the Parties in such written agreement.
(b) Termination by Takeda of a Program. Subject to Section 5.3, with respect to each Program during the applicable Program Period, Takeda may terminate this Agreement on a Program-by-Program basis at will at any time upon [***] ([***]) days’ prior written notice to Codexis.
(c) Termination by Takeda of a Product. Subject to Section 15.2(b), after the Program Period, Takeda may terminate this Agreement on a Product-by-Product basis, at will at any time upon [***] ([***]) days’ prior written notice to Codexis.
(d) Termination by Takeda of the Agreement in its Entirety. Takeda may terminate this Agreement in its entirety at will at any time upon [***] ([***]) days’ prior written notice to Codexis, provided that Takeda may not terminate this Agreement in accordance with this Section 15.2(d) if the Program Period for any Program has been less than twelve (12) months (except for a case where all Programs are terminated pursuant to Section 15.2(b)).
(e) Termination for Material Breach. A Party shall have the right to terminate this Agreement in such Party’s sole discretion, upon delivery of written notice to the other Party in the event of any material breach by such other Party of this Agreement, provided that such breach has not been cured within [***] ([***]) days after written notice thereof is given by the terminating Party specifying the nature of the alleged material breach in reasonable detail (the “Cure Period”). If the Parties reasonably and in good faith disagree as to whether there has been a material breach, the Party that disputes whether there has been a material breach may contest the allegation in accordance with Article 19. In the event of such dispute, the Cure Period for any disputed breach will run from the date that written notice was first provided to the breaching Party by the terminating Party through the [***] ([***]) day after the resolution of such dispute pursuant to Article 19, and it is understood and acknowledged that, during the pendency of such a dispute brought pursuant to this Section 15.2(e) and until such [***] ([***]) day after the resolution of such dispute pursuant to Article 19, all of the terms and conditions of this Agreement shall remain in effect, and the Parties shall continue to perform all of their respective obligations under this Agreement.
(f) Termination for Bankruptcy. If either Party makes a general assignment for the benefit of, or an arrangement or composition generally with, its creditors, appoints or suffers appointment of an examiner or of a receiver or trustee over all or substantially all of its property, passes a resolution for its winding up, or files a petition under any bankruptcy or insolvency act or law or has any such petition filed against it which is not dismissed, discharged, bonded, or stayed within [***] ([***]) days after the filing thereof and seeks to reject this Agreement, the other Party may terminate this Agreement in its entirety, effective immediately upon written notice to such Party. For purposes of Section 365(n) of the U.S. Bankruptcy Code (the “Code”) and any similar laws in any other country, all rights and licenses granted under or pursuant to any Section of this Agreement are rights to “intellectual property” (as defined in Section 101(35A) of the Code). The Parties agree that
40
|||


the licensee of such rights under this Agreement will retain and may fully exercise all of its protections, rights and elections under the Code and any similar laws in any other country.
(g) Termination by Takeda for Safety Reason. Takeda shall have the right, on a Product-by-Product basis, to terminate this Agreement, at any time after the Effective Date, upon providing sixty (60) days’ prior written notice to Codexis: (i) [***]; or (ii) [***].
(h) Termination by Codexis for Shelving. On a Product-by-Product basis, if at any time during the Term after the expiry of each Program Period and Takeda’s receipt of the Deliverables pursuant to Section 3.7, Takeda has not, for [***], either directly or through its Affiliate, sublicensee or Third Party contractor, engaged in [***] in support of the [***] of any Product in the applicable Field (“Takeda Shelving”), in or for [***], Codexis may terminate this Agreement with respect to such Product with [***] ([***]) days’ prior written notice to Takeda, unless [***]. For clarity, if Takeda is engaging in [***], either directly or through its Affiliate, sublicensee or Third Party contractor, in support of the [***] of a Product in the applicable Field (e.g., a lead product) but has not, for [***], either directly or through its Affiliate, sublicensee or Third Party contractor, engaged in [***] in support of the [***] of other Product(s) (e.g., back-up products) in the same Field, Codexis does not have a right to terminate this Agreement with respect to such other Product(s) pursuant to this Section 15.2(h). For further clarification, whether the activities being undertaken by Takeda or on behalf of Takeda are “[***]” for the purpose of this Section 15.2(h) shall be determined based on those activities taken as a whole, in light of then-current facts and circumstances related to any Products in the applicable Field, and such determination shall be subject to the dispute resolution procedures in Article 19.
15.3 Effects of Expiration or Termination
(a) General. Termination or expiration of this Agreement for any reason will not release either Party from any liability or obligation that already has accrued prior to such expiration or termination, nor affect the survival of any provision hereof to the extent it is expressly stated to survive such termination. Termination or expiration of this Agreement for any reason will not constitute a waiver or release of, or otherwise be deemed to prejudice or adversely affect, any rights, remedies or claims, whether for damages or otherwise, that a Party may have hereunder or that may arise out of or in connection with such termination or expiration. In the event this Agreement is not terminated in its entirety, but rather is terminated with respect to one or more Programs or Products (the “Terminated Product”), then, notwithstanding anything to the contrary contained in this Section 15.3, the consequences of termination described under this Section 15.3 shall only apply to the Terminated Program or Terminated Product, and this Agreement shall remain in full force and effect in accordance with its terms with respect to all Programs and Products other than the Terminated Program and Terminated Products.
(b) Termination of this Agreement. In the event of termination of this Agreement with respect to any Terminated Program or Terminated Product or in its entirety:
(i) The licenses granted by each Party to the other Party in Section 10.2 shall terminate as of the effective date of termination and neither Party shall not have any rights to use or exercise any rights under the other Party’s Intellectual Property rights licensed therein;
41
|||


(ii) Each Party shall comply with the return and destruction obligations with respect to Confidential Information and any Know-How of the other Party that are in its or its Affiliates’, sublicensees’ or Third Party contractors’ possession or control in accordance with Article 9;
(iii) (A) With respect to each Terminated Program, the defined terms Candidates, Field, Nucleic Acid Sequences, Products and Target Genes shall be construed to exclude the applicable Terminated Program’s corresponding Candidate, Field, Nucleic Acid Sequence, Product and Target Gene as of the effective date of termination; (B) with respect to each Terminated Product, the defined term Product shall be construed to exclude the applicable Terminated Product, provided, for clarity, if Takeda retains any other Products in the same Field as the Terminated Product, then Takeda’s rights to such other Products and corresponding Candidate, Field, Nucleic Acid Sequence and Target Gene shall be retained for the purposes of this Agreement, and (C) upon termination of this Agreement in its entirety with respect to a Field, the defined terms Candidate, Nucleic Acid Sequence, Product and Target Gene shall be construed to exclude all Candidates, Nucleic Acid Sequences, Products and Target Genes in the terminated Field;
(iv) (A) With respect to each Terminated Program and Terminated Product, Codexis shall be free to Exploit the corresponding Candidates, Nucleic Acid Sequences, and Target Genes; and (B) with respect to each terminated Field, Codexis shall be free to Exploit such Field.
(v) License Grant to Codexis
(A) The termination of this Agreement shall not affect each Party’s ownership of Intellectual Property; provided, however, in case of termination of this Agreement in its entirety or with respect to a Field (except in the case of termination by Takeda pursuant to Section 15.2(e) (Codexis’s Material Breach), Section 15.2(f) (Codexis’s Insolvency) or Section 15.2(g)(ii) (Termination by Takeda for Safety Reason) and in case of termination by [***] pursuant to [***], Takeda shall, upon written request by Codexis, negotiate with Codexis in good faith to grant Codexis (I) [***] and (II) [***] in each case of (I) and (II) to the extent [***].
(B) Notwithstanding the foregoing, in the event of termination of this Agreement in its entirety or with respect to a Field by Codexis pursuant to Section 15.2(e) (Takeda’s Material Breach) or Section 15.2(f) (Takeda’s Insolvency), Takeda shall grant Codexis [***] solely for [***] to [***].
(c) Expiration of this Agreement. Upon the expiration of the Royalty Term for a Product in a particular country, the license granted to Takeda under Section 10.2 of this Agreement with respect to such Product in and for such country shall become fully-paid, royalty free, perpetual and irrevocable.
(d) Survival. Termination or expiration of this Agreement (i) shall not relieve either Party of any obligation, or deprive either Party from any benefit, accruing prior thereto and (ii) shall be without prejudice to the rights and remedies of either Party with respect to any antecedent breach of the provisions of this Agreement. The following provisions shall
42
|||


survive termination or expiration of this Agreement: Articles or Sections 1, 3.5, 3.6, 3.8(c) (last two sentences only), 4.3 (proviso only), 8.1 through 8.3 (subject to Section 8.5), 8.5, 9, 10.1, 10.4, 11.4, 11.5, 11.6, 12, 13 (to the extent the Patent Committee endures beyond the Term), 14, 15.3, 16 (except for Section 16.4), 17, 18, 19 and 20.
16. REPRESENTATIONS AND WARRANTIES; Covenants.
16.1 Mutual Representations and Warranties. Codexis and Takeda each hereby represents and warrants to the other as of the Effective Date as follows:
(a) Organization. It is duly organized, validly existing, and in good standing under the laws of the jurisdiction of its organization, and has all requisite power and authority, corporate or otherwise, to execute, deliver, and perform this Agreement.
(b) Authorization. The execution and delivery of this Agreement and the performance by it of its obligations contemplated hereby have been duly authorized by all necessary corporate action, and do not violate (i) such Party’s charter documents, bylaws, or other organizational documents, (ii) in any material respect, any agreement, instrument, or contractual obligation to which such Party is bound, (iii) any requirement of any Applicable Law, or (iv) any order, writ, judgment, injunction, decree, determination, or award of any court or governmental agency presently in effect applicable to such Party.
(c) Binding Agreement. This Agreement is, and will continue to be, a legal, valid, and binding obligation of such Party enforceable against it in accordance with its terms and conditions, subject to the effects of bankruptcy, insolvency, or other laws of general application affecting the enforcement of creditor rights, judicial principles affecting the availability of specific performance, and general principles of equity (whether enforceability is considered a proceeding at law or equity).
(d) Consents and Approvals. No consent, approval, waiver, order or authorization of, or registration, declaration or filing with, any third party or any Governmental Authority is required in connection with the execution, delivery and performance of this Agreement by such Party or the performance by such Party of its obligations contemplated hereby or thereby (other than Regulatory Approvals, Pricing Approvals and similar authorizations from Governmental Authorities necessary for the Exploitation of the Products as contemplated hereunder).
(e) Compliance with Law. To each Party’s knowledge, neither Party or any of its Affiliates, nor any of its or their respective officers, employees, agents, advisors, consultants or other representatives has (i) made an untrue statement of material fact or fraudulent statement to the FDA or any other Regulatory Authority with respect to the Exploitation of the Nucleic Acid Sequences or Candidates, (ii) failed to disclose a material fact required to be disclosed to the FDA or any other Regulatory Authority with respect to the Exploitation of the Nucleic Acid Sequences or Candidates, or (iii) committed an act, made a statement, or failed to make a statement with respect to the Exploitation of the Nucleic Acid Sequences or Candidates that could reasonably be expected to provide a basis for the FDA to invoke its policy respecting “Fraud, Untrue Statements of Material Facts, Bribery, and Illegal Gratuities”, set forth in U.S. 56 FR 46191 and any amendments thereto or any analogous Applicable Law or policies in the Territory outside the U.S.
43
|||


(f) No Debarment. Neither Party nor any of its respective Affiliates has been debarred by the FDA, is not subject to any similar sanction of other Governmental Authorities in the Territory.
16.2  Mutual Covenants. Codexis and Takeda each hereby covenants to the other as of the Effective Date and hereinafter during the Term as follows:
(a) Compliance with Applicable Law. Each Party and its Affiliates shall during the Term conduct all activities in connection with this Agreement in all material respects in accordance with Applicable Law.
(b) No Debarment. To its knowledge, neither Party nor any of its respective Affiliates will engage, in any capacity, in connection with this Agreement or any ancillary agreements (if any), any Person who either has been debarred by such a Regulatory Authority, or is the subject of a conviction described in Section 306 of the FFDCA. Each Party shall inform the other Party in writing promptly if it or any Person engaged by it or any of its Affiliates who is performing services under this Agreement or an ancillary agreement (if any) is debarred or is the subject of a conviction described in Section 306 of the FFDCA or under a similar sanction of other Governmental Authorities, or if any action, suit, claim, investigation or legal or administrative proceeding is pending or, to such Party’s knowledge, is threatened, relating to the debarment or conviction of such Party, any of its Affiliates or any such Person performing services hereunder or thereunder.
(c) Transparency Reporting. Each Party shall be responsible for tracking and reporting transfers of value initiated and controlled by its and its Affiliates’ employees, contractors, and agents pursuant to the requirements of the transparency laws of any Governmental Authority in the Territory, including Section 6002 of ACA, commonly referred to as the “Sunshine Act.”
(d) No Encumbrances. During the Term, neither Party shall, nor shall cause its Affiliates not to, grant to any Third Party rights that encumber or materially conflict with the rights granted to the other Party under this Agreement or the rights necessary for such Party to fulfil its obligations hereunder.
(e) Assignment of Rights in Inventions. To the extent permissible under Applicable Law and necessary for each Party to comply with its obligations under this Agreement, all employees of each Party or its Affiliates performing activities under this Agreement shall be under an obligation to assign all right, title and interest they may have in the Inventions to such Party or its Affiliate(s).
16.3 Additional Representations and Warranties. Codexis hereby represents and warrants to Takeda as of the Effective Date:
(a)  Control of Codexis Technology. Codexis Controls the Codexis Technology and has all rights necessary to grant the licenses under the Codexis Technology that it grants to Takeda under this Agreement.
(b) Non-Infringement. To Codexis’s knowledge, there is no actual or threatened infringement or misappropriation of the Codexis Technology by any Person in the applicable Field of the Initial Programs that materially affects the rights granted to Takeda in this Agreement.
44
|||


(c) Non-Encumbrance. Codexis Technology is free and clear of any mortgage, pledge, claim, security interest, lien, or charge of any kind, including any mortgage, pledge, claim, security interest, lien or charge of any kind.
(d) Prosecution of Codexis Candidate/NAS Patents. Codexis Candidate/NAS Patents that are Codexis’s Background IP are being duly Prosecuted in the respective patent offices in the Territory in accordance with Applicable Law and all applicable fees have been paid on or before due date for payment.
(e) Assignment of Rights in Codexis Technology. All current and former officers, employees, agents, advisors, consultants, contractors or other representatives of Codexis or any of its Affiliates who are inventors of or have otherwise contributed in a material manner to the creation or development of any Codexis Technology licensed to Takeda have executed and delivered to Codexis or any such Affiliate an assignment or other agreement regarding the assignment to Codexis or any such Affiliate. To the knowledge of Codexis, no current and former officer, employee, agent, advisor, consultant or other representative of Codexis or any of its Affiliates is in violation of any material terms of any such agreement.
(f) Non-Invalidation Claim of [***]. To Codexis’s knowledge, there are no claims, judgments, or settlements against, or amounts with respect thereto owed by, Codexis or any of its Affiliates relating to the [***]. To Codexis’s knowledge, no claim or litigation is pending or threatened by any Person, and Codexis has no knowledge of any written claim, whether or not asserted, alleging that (i) any of [***] is invalid or unenforceable, or (ii) [***], or the disclosing, copying, making, assigning, or licensing thereof, violates, infringes, or otherwise conflicts or interferes with, or would violate, infringe, or otherwise conflict or interfere with, any intellectual property or proprietary right of any Person.
(g) Third Party Agreement with respect to pre-existing Candidate and Nucleic Acid Sequence. Codexis has maintained and has not breached in any material respect any agreements with any Third Party relating to any Candidates or Nucleic Acid Sequences that are Codexis’s Background IP, and after the Effective Date, Codexis shall maintain in good standing all such agreements with Third Parties related to any Candidates or Nucleic Acid Sequences. For the avoidance of doubt, the obligations imposed under this Section 16.2(h) shall not apply with respect to agreements with any Third Party for (i) commercially available off-the-shelf software that is not material to Codexis, or that is licensed to Codexis for a one-time or annual fee of [***] or less; or (ii) commercially available products or services that are not material to Codexis, unless breach, termination or amendment of any such agreements would adversely affect any of Takeda’s rights or benefits under this Agreement.
16.4 Compliance with Anti-Corruption Laws. In connection with the Agreements, neither Party nor any of its officers, directors and employees or any of its Affiliates, agents, representatives, consultants and subcontractors hired in connection with the subject matter of this Agreement (the “Representatives”) shall offer to make, make, promise, authorize, or accept any payment or the giving of anything of value, including, bribes, either directly or indirectly, to or from any public official, Governmental Authority, Regulatory Authority, or any other person for the purpose of influencing, inducing, or rewarding any act, omission, or decision in order to secure an improper advantage, or obtain or retain business. Each Party and its Representatives shall comply with all Anti-Corruption Laws. Each Party shall notify the other Party immediately upon becoming aware of any breach of its obligations under this Section 16.4. In the event that a Party violates any Anti-
45
|||


Corruption Law or otherwise breaches this Section 16.4, the other Party may terminate this Agreement immediately upon providing written notice to the breaching Party.
16.5 DISCLAIMER. ANY PROTEIN SEQUENCE(S) DELIVERED PURSUANT TO THIS AGREEMENT ARE EXPERIMENTAL IN NATURE AND MAY HAVE HAZARDOUS PROPERTIES. EXCEPT AS EXPRESSLY SET FORTH IN THIS ARTICLE 16, CODEXIS MAKES NO REPRESENTATION OR WARRANTY OF ANY KIND WITH RESPECT TO ANY MATERIALS OR TECHNOLOGY SUPPLIED BY IT TO TAKEDA HEREUNDER OR THAT THE ACTIVITIES CONTEMPLATED BY THE PROGRAM PLAN(S) WILL BE SUCCESSFUL OR DEVELOP ANY PROTEIN SEQUENCE(S). EXCEPT AS EXPRESSLY SET FORTH IN THIS ARTICLE 16, NEITHER PARTY MAKES ANY REPRESENTATIONS OR WARRANTIES OF ANY KIND WHATSOEVER, EXPRESS OR IMPLIED, WRITTEN OR ORAL, EITHER IN FACT OR BY OPERATION OF LAW, BY STATUTE OR OTHERWISE, AND EACH PARTY SPECIFICALLY DISCLAIM ANY OTHER WARRANTIES, INCLUDING, BUT NOT LIMITED TO, ANY WARRANTY OF QUALITY, MERCHANTABILITY, TITLE, FITNESS FOR A PARTICULAR PURPOSE, VALIDITY, OR NON-INFRINGEMENT.
17. LIMITATIONS OF LIABILITY. IN NO EVENT SHALL either party OR ANY OF ITS AFFILIATES BE LIABLE HEREUNDER TO the other party OR ANY OF ITS AFFILIATES OR ANY THIRD PARTY in connection with this agreement FOR SPECIAL, INCIDENTAL, INDIRECT, CONSEQUENTIAL, EXEMPLARY OR PUNITIVE DAMAGES, WHETHER IN CONTRACT, WARRANTY, TORT, NEGLIGENCE, STRICT LIABILITY OR OTHERWISE, INCLUDING BUT NOT LIMITED TO, LOSS OF PROFITS OR REVENUE, damage to goodwill, WHETHER FORESEEABLE OR NOT, PROVIDED THAT THE FOREGOING SHALL NOT LIMIT EITHER PARTY’S LIABILITY WITH RESPECT TO Article 9 OR ARTICLE 18 (INDEMNIFICATION).
18. INDEMNIFICATION.
18.1 Indemnification by Takeda. Takeda shall indemnify, defend, and hold harmless Codexis, its Affiliates, and its and their respective directors, officers, employees, agents, successors, and assigns (collectively, the “Codexis Indemnitees”) from and against any and all Damages to the extent arising out of, directly or indirectly, any Third Party Claim based upon:
(a) [***] by or on behalf of Takeda, its Affiliates, or its sublicensees;
(b) [***] of Takeda or its Affiliates or sublicensees, or its or their respective directors, officers, employees, or agents, in connection with Takeda’s performance of its obligations under this Agreement; or
(c) [***] by Takeda of any of its [***] under this Agreement;
provided, however, that, in each case of Section 18.1(a), Section 18.1(b) or Section 18.1(c), such indemnity shall not apply to the extent Codexis has an indemnification obligation pursuant to Section 18.2 for such Damages.
18.2 Indemnification by Codexis. Codexis shall indemnify and hold harmless Takeda, its Affiliates, and its and their respective directors, officers, employees, agents, successors, and assigns (collectively, the “Takeda Indemnitees”), from and against any and all Damages to the extent arising out of, directly or indirectly, any Third Party Claim based upon:
46
|||


(a) the use of Codexis Platform by or on behalf of Codexis or its Affiliates in the Programs;
(b) [***] of Codexis or its Affiliates or its or their respective directors, officers, employees, or agents, in connection with Codexis’s performance of its obligations under this Agreement; or
(c) [***] by Codexis of any of its [***] under this Agreement;
provided, however, that, in each case of Section 18.2(a), Section 18.2(b) or Section 18.2(c), such indemnity shall not apply to the extent Takeda has an indemnification obligation pursuant to Section 18.1 for such Damages.
18.3 Procedure.
(a) Indemnification Claim Notice. If a Party is seeking indemnification under Section 18.1 or Section 18.2, as applicable (the “Indemnitee”), it shall inform the other Party (the “Indemnitor”) of the claim giving rise to the obligation to indemnify pursuant to Section 18.1 or Section 18.2, as applicable, as soon as reasonably practicable after receiving notice of the claim (an “Indemnification Claim Notice”); provided, that any delay or failure to provide such notice shall not constitute a waiver or release of, or otherwise limit, the Indemnitee’s rights to indemnification under Section 18.1 or Section 18.2, as applicable, except to the extent that such delay or failure materially prejudices the Indemnitor’s ability to defend against the relevant claims.
(b) Defense. Upon receipt of notice under this Section 18.3(b) from the Indemnitee, the Indemnitor will have the duty to either compromise or defend, at its own expense and by counsel (reasonably satisfactory to Indemnitee) such Third Party Claim. The Indemnitor will promptly (and in any event not more than [***] ([***]) days after receipt of the Indemnitee’s original notice pursuant to Section 18.3(a)) notify the Indemnitee in writing that it acknowledges its obligation to indemnify the Indemnitee with respect to the Third Party Claim pursuant to this Article 18 and of its intention either to compromise or defend such Third Party Claim. Once the Indemnitor gives such notice to the Indemnitee, the Indemnitor is not liable to the Indemnitee for the fees of other counsel or any other expenses subsequently incurred by the Indemnitee in connection with such defense, other than the Indemnitee’s reasonable out of pocket Third Party expenses related to its investigation and cooperation. Notwithstanding the foregoing, at Indemnitor’s sole cost and expense, the Indemnitee shall cooperate with the Indemnitor and the Indemnitor’s insurer as the Indemnitor may reasonably request. The Indemnitor shall keep the Indemnitee informed on a reasonable and timely basis as to the status of such Third Party Claim (to the extent the Indemnitee is not participating in the defense of such Third Party Claim) and conduct the defense of such Third Party Claim in a prudent manner. The Indemnitee shall have the right to participate, at its own expense and with counsel of its choice, in the defense of any claim or suit that has been assumed by the Indemnitor.
(c) Settlement. The Indemnitor shall not settle any claim without first obtaining the prior written consent of the Indemnitee, not to be unreasonably withheld, conditioned, or delayed; provided, however, that the Indemnitor shall not be required to obtain such consent if the settlement: (i) [***]; (ii) does not require [***]; and (iii) does not [***]. The Indemnitee shall not settle or compromise any such claim without first obtaining the prior written consent of the Indemnitor.
47
|||


19. DISPUTE RESOLUTION
19.1 Amicable Resolution. In the event the Parties or their representatives are unable to agree upon (a) any matter properly coming before the JSC or any subcommittee thereof or the Patent Committee, which neither Party has the right to decide in its sole discretion, or (b) any other dispute or disagreement between the Parties arising from or in connection with this Agreement, the construction hereof, or the rights, duties or liabilities of either Party hereunder (each of the disputes described in (a) and (b), a “Dispute”), the Parties shall promptly refer such Dispute to the senior executives of each Party, whereby as of the Effective Date such senior executives shall be the [***] for Codexis and [***] for Takeda (the “Senior Officers”). If the Senior Officers are unable to resolve such Dispute within [***] ([***]) Business Days after submission of such matter to the Senior Officers, then the Dispute shall be resolved as provided in Section 19.2 or Section 19.3, as applicable.
19.2 Arbitration. Any unresolved Disputes which were subject to the Senior Officers’ amicable resolution process and unsuccessfully resolved pursuant to the procedures of Section 19.1 shall be resolved by final and binding arbitration. Whenever a Party decides to institute arbitration proceedings, it shall give written notice to that effect to the other Party. Arbitration shall be held in New York, New York, according to the Rules of Arbitration of the International Chamber of Commerce (“ICC Rules”) in effect at the Effective Date, except as they may be modified herein or by mutual agreement of the Parties. All arbitration proceedings shall be conducted by three (3) arbitrators unless otherwise mutually agreed by the Parties. The claimant and the respondent shall each nominate an arbitrator in accordance with the ICC Rules, and the third arbitrator, who shall be the president of the arbitral tribunal, shall be appointed by the two (2) Party-appointed arbitrators in consultation with the Parties. The Parties undertake to maintain confidentiality as to the existence of the arbitration proceedings and as to all submissions, correspondence, and evidence relating to the arbitration proceedings. This Section 19.2 shall survive the termination of the arbitral proceedings. No arbitrator (nor any arbitral tribunal) shall have the power to award punitive damages under this Agreement, and such award is expressly prohibited. Decisions of the arbitrator(s) shall be final and binding on the Parties. Judgment on the award so rendered may be entered in any court of competent jurisdiction. The costs of the arbitration shall be shared by the Parties during the course of such arbitration, as assessed by the International Chamber of Commerce, and shall be borne as determined by the arbitrator(s).
19.3 Injunctive Relief. Notwithstanding anything to the contrary, either Party may at any time seek to obtain preliminary injunctive relief or other applicable provisional relief from a court of competent jurisdiction with respect to an issue arising under this Agreement if the rights of such Party would be prejudiced absent such relief. A request by a Party to a court of competent jurisdiction for interim measures necessary to preserve the Party’s rights, including attachments or injunctions, shall not be deemed incompatible with, or a waiver of, the agreement to mediate or arbitrate contained in this Section 19.3, or the availability of interim measures of protection under the ICC Rules. Notwithstanding anything to the contrary in this Section 19.3, any disputes regarding the scope, validity, enforceability, or inventorship of any Patents shall be submitted for final resolution by a court of competent jurisdiction.
20. MISCELLANEOUS
20.1 Notices. Any notice required or permitted to be given by the Parties pursuant to this Agreement shall be in writing and shall be (a) delivered by hand, (b) delivered by overnight courier with tracking capabilities, (c) mailed postage prepaid by first class, registered or certified mail, or (d)
48
|||


transmitted by facsimile or electronic mail, with confirmation copy by mail as provided in (c), and in each case addressed to the recipient Party as set forth below, unless changed by notice so given:
If to Takeda: Shire Genetic Therapies, Inc.
[***]

        With a copy to: [***]
[***]
         If to Codexis: Codexis, Inc.
[***]
20.2 Entire Agreement. The Parties agree that this Agreement, together with any Program Plan agreed upon pursuant hereto, embodies the entire understanding of the Parties with respect to the subject matter hereof and shall supersede all previous and contemporaneous communications, either verbal or written, between the Parties relating to the subject matter hereof.
20.3 Independent Contractor. It is expressly agreed that Codexis, on the one hand, and Takeda, on the other hand, shall be independent contractors. Neither Party shall have any right, power or authority to bind the other or assume, create or incur any expense, liability or obligation, express or implied, on behalf of the other. This Agreement is not intended to create or imply a partnership, joint venture or agency for tax or any other purposes.
20.4 Contingencies. Except for the payment of money, each Party shall be excused from performing its obligations under this Agreement if its performance is delayed or prevented by any cause beyond such Party’s control, including but not limited to, acts of God, fire, explosion, disease, weather, war, insurrection, civil strife, riots, government action, or power failure; provided that the affected Party notifies the unaffected Party as soon as reasonably possible. Performance shall be excused only to the extent of and during the reasonable continuance of such disability. Any deadline or time for performance specified which falls due during or subsequent to the occurrence of any of the disabilities referred to herein shall be automatically extended for a period of time equal to the period of such disability.
20.5 Force Majeure. Both Parties shall be excused from the performance of their obligations under this Agreement to the extent that such performance is prevented by Force Majeure and the nonperforming Party promptly provides notice of the prevention to the other Party. Such excuse shall be continued so long as the condition constituting Force Majeure continues and the nonperforming Party takes reasonable efforts to remove the condition. Notwithstanding the foregoing, a Party shall not be excused from making payments owed hereunder because of a Force Majeure affecting such Party. If a Force Majeure persists for more than [***] ([***]) days, then the Parties shall discuss in good faith the modification of the Parties’ obligations under this Agreement in order to mitigate the delays caused by such Force Majeure.
20.6 Assignment. This Agreement shall not be assigned by either Party, in whole or in part, without the prior written consent of the other Party, except that either Party may assign this Agreement without consent to an Affiliate or to a Third Party which acquires all or substantially all of that portion of the business of the assigning Party to which this Agreement pertains, whether by merger,
49
|||


acquisition, consolidation, sale of assets, operation of law, or otherwise. Any purported assignment not in compliance with this Section 20.6 shall be null and void.
20.7 Waiver. No waiver of any term, provision, or condition of this Agreement, whether by conduct or otherwise in any one or more instances, shall be deemed to be or construed as a further or continuing waiver of any term, provision, or condition of this Agreement. This Agreement may not be altered, amended or modified in any way except by a writing signed by both Parties.
20.8 Joint Drafting. The Parties acknowledge that this Agreement was jointly drafted by both Parties and, accordingly, any applicable law that would require interpretation of any claimed ambiguities in this Agreement against the Party that drafted it has no application and is expressly waived. If any claim is made by a Party relating to any conflict, omission or ambiguity in the provisions of this Agreement, no presumption or burden of proof or persuasion will be implied because this Agreement was prepared by or at the request of any Party or its counsel.
20.9 Governing Law. This Agreement shall be construed in accordance with the laws of the State of New York, without regard to its conflicts of laws principles. The Parties agree that the United Nations Convention on Contracts for the International Sale of Goods shall have no force or effect on this Agreement.
20.10 Compliance with Law. The release of any Confidential Information of Codexis or Takeda will be conditioned upon and subject to the other Party’s compliance with legal requirements that are applicable to this Agreement, including applicable United States export laws and regulations and other United States restrictions on the export, re-export or other transfer of United States technology to countries, entities and persons that are subject to United States sanctions, embargoes, or other prohibitions. Each Party will comply with all such Applicable Law, rules and regulations in the use of and further disclosure or transfer of the Confidential Information of the other Party and agrees to pay any and all taxes and import duties, charges, assessments, or other fees to governmental authorities (both United States and foreign) that may be assessed in the provision of such data and Confidential Information to the other Party. The obligations regarding export laws, regulations and requirements will survive the expiration, cancellation, or termination of this Agreement.
20.11 Counterparts. This Agreement may be executed in two or more counterparts, each of which together shall constitute one and the same Agreement. For purposes of executing this agreement, a facsimile (including a “portable document format” (“.pdf”) image delivered via email) copy of this Agreement, including the signature pages, will be deemed an original.
20.12 Interpretation. Except where the context otherwise requires, wherever used, the singular shall include the plural, the plural the singular, the use of any gender shall be applicable to all genders and the word “or” is used in the inclusive sense (and/or). The term “including,” “include,” or “includes” as used herein shall mean including, without limiting the generality of any description preceding such term. Unless the context requires otherwise, (a) any definition of or reference to any agreement, instrument or other document herein will be construed as referring to such agreement, instrument or other document as from time to time amended, supplemented or otherwise modified (subject to any restrictions on such amendments, supplements or modifications set forth herein or therein), (b) any reference to any applicable laws herein will be construed as referring to such laws as from time to time enacted, repealed or amended, (c) any reference herein to any person will be construed to include the person’s successors and permitted assigns, (d) the words “herein”, “hereof” and “hereunder”, and words of similar import, will be construed to refer to this Agreement
50
|||


in its entirety and not to any particular provision hereof, (e) any reference herein to the words “mutually agree” or “mutual written agreement” will not impose any obligation on either Party to agree to any terms relating thereto relating to such terms except as such Party may determine in such Party’s sole discretion, (f) all references herein to Articles, Sections or Exhibits will be construed to refer to Articles, Sections and Exhibits to this Agreement, (g) the word “days” means calendar days unless otherwise specified, (h) except as otherwise expressly provided herein all references to “$” or “dollars” refer to the lawful money of the U.S., and (i) the words “copy” and “copies” and words of similar import when used in this Agreement include, to the extent available, electronic copies, files or databases containing the information, files, items, documents or materials to which such words apply. The headings of each Article and Section in this Agreement have been inserted for convenience of reference only and are not intended to limit or expand on the meaning of the language contained in the particular Article or Section. Each Party represents that it has been represented by legal counsel in connection with this Agreement and acknowledges that it has participated in the drafting hereof. In interpreting and applying the terms and provisions of this Agreement, the Parties agree that no presumption will apply against the Party which drafted such terms and provisions. The language in this Agreement is to be construed in all cases according to its fair meaning.

[Signature page follows]
 IN WITNESS WHEREOF, a duly authorized representative of each Party has executed this Agreement as of the dates identified below, but the Agreement shall become effective on the Effective Date.

Codexis, Inc.      Shire Human Genetic Therapies, Inc.
By: /s/ John Nicols     By: /s/ Madhusudan Natarajan
Title: President & CEO     Title: Head Rare Diseases DDU
Date: March 19, 2020     Date: March 19, 2020


51
|||


Exhibit A

Reserved Target Indications

[***]
Omitted pursuant to Regulation S-K, Item 601(a)(5)



52
|||


Exhibit B
Fabry Program Research Plan
[***]


Omitted pursuant to Regulation S-K, Item 601(a)(5)



53
|||


Exhibit C
Pompe Program Research Plan
[***]


Omitted pursuant to Regulation S-K, Item 601(a)(5)



|

Exhibit D
[***] Program Research Plan
[***]


Omitted pursuant to Regulation S-K, Item 601(a)(5)



|||


Exhibit E

Form of Material Transfer Notice

[***]


Omitted pursuant to Regulation S-K, Item 601(a)(5)



Exhibit F

Press Release

Codexis Signs Strategic Collaboration and License Agreement with Takeda to Advance Novel Gene Therapies for Rare Genetic Disorders
Partnership to leverage Codexis’ protein engineering platform for the discovery and development of novel transgenes for lysosomal storage disorders and blood factor deficiencies

Redwood City, CA (March 23, 2020) -- Codexis, Inc., a leading protein engineering company and developer of novel biotherapeutics, announces the signing of a strategic collaboration and license agreement with 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.
Under the terms of the agreement, Codexis will generate novel gene sequences encoding protein variants tailored to enhance efficacy as a result of increased activity, stability, and cellular uptake using its 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.
“Our CodeEvolver® platform technology enables the rapid engineering of novel genetic sequences that encode more efficacious proteins. The prospects of these improved sequences for the development of differentiated gene therapies for rare disease patients therefore holds great promise," stated John Nicols, Codexis’ President and CEO. “Takeda’s expertise in developing novel treatments for patients with rare genetic disorders, and its commitment to developing the best possible gene therapies, makes Takeda an ideal partner for our growing Novel Biotherapeutics business unit." Gjalt Huisman, Codexis’ Senior Vice-President, and General Manager, Novel Biotherapeutics added, "We are looking forward to working with Takeda to advance our pre-clinical assets for Lysosomal Storage Disorders, and to broaden our biotherapeutics pipeline to now also include blood factor disorders."

Terms of Agreement
|||


Under the terms of the agreement, the parties will begin collaborative work on three initial programs. Codexis 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. Subject to the terms of the agreement, Codexis is eligible to receive an upfront payment, reimbursement for research and development fees, development and commercial milestone payments, and low- to mid-single digit percentage royalties on sales of any commercial product developed through such initial programs and any other programs that Takeda may elect under the agreement. Back Bay Life Science Advisors served as strategic and financial advisors to Codexis.



|||


About Codexis, Inc.
Codexis is a leading protein engineering company that applies its proprietary CodeEvolver® protein engineering technology to develop proteins for a variety of applications, including enzymes as biotherapeutics, as biocatalysts for the commercial manufacture of pharmaceuticals and fine chemicals, industrial enzymes, and for use in molecular diagnostics. For its Biotherapeutics pipeline, Codexis’ technology enables improvements in protein efficacy, through enhancement of activity, affinity, stability, as well as uptake by target cells. For more information, see www.codexis.com

Forward-Looking Statements
To the extent that statements contained in this press release are not descriptions of historical facts regarding Codexis, they are forward-looking statements reflecting the current beliefs and expectations of management made pursuant to the safe harbor provisions of the Private Securities Litigation Reform Act of 1995, including Codexis’ expectations regarding the prospects for the development and future commercialization by Takeda of novel gene therapies for specified target indications. . You should not place undue reliance on these forward-looking statements because they involve known and unknown risks, uncertainties and other factors that are, in some cases, beyond Codexis’ control and that could materially affect actual results. Factors that could materially affect actual results include, among others: Codexis’ dependence on its licensees and collaborators; Codexis’ dependence on a limited number of products and customers; and potential adverse effects to Codexis’ business if its customers’ products are not received well in the markets. Additional information about factors that could materially affect actual results can be found in Codexis’ Annual Report on Form 10-K filed with the Securities and Exchange Commission (“SEC”) on February 28, 2020, including under the caption “Risk Factors” and in Codexis’ other periodic reports filed with the SEC. Codexis expressly disclaims any intent or obligation to update these forward-looking statements, except as required by law.

Investor Contact:
LHA Investor Relations
Jody Cain, 310-691-7100
jcain@lhai.com





|||


Schedule 1.37

Codexis Platform
[***]


Omitted pursuant to Regulation S-K, Item 601(a)(5)











|||
EX-10.2 3 cdxs10qq120exhibit102.htm EX-10.2 Document
Exhibit 10.2 
[***] Certain information in this document has been excluded pursuant to Regulation S-K, Item 601(b)(10). Such excluded information is not material and would likely cause competitive harm to the registration if publicly disclosed.

GlaxoSmithKline Intellectual Property Development Limited Letterhead
7th February 2020
Codexis, Inc.
200 Penobscot Drive
Redwood City, CA 94063
Telephone: [***]
Fax: [***]
Email: [***]

Attn:  Pierre Brazeau
Vice President, Business Development

By: Email and First-Class Mail

Platform Technology Transfer, Collaboration, and License Agreement between Codexis, Inc. (“Codexis”) and GlaxoSmithKline Intellectual Property Development Limited (“GSK”) dated 10 July 2014 (the “Agreement”). Section 6.5.4 (Back-Up Rights) and Section 3.7 (Restricted Enzymes) of the Agreement.
Dear Mr. Brazeau:
We refer to previous correspondence and discussion between the parties in relation to the above matters. In this letter, expressions defined in the Agreement and used in this letter have the meaning set out in the Agreement. The rules of interpretation set out in the Agreement apply to this letter.
Back-Up Rights
It is acknowledged that pursuant to Section 6.5.4 the following GSK Patent was assigned to Codexis pursuant to an assignment agreement dated [***]: GSK Docket No. [***], which correspond to US provisional patent application [***], filed on [***] (“the [***] application”). Codexis agreed [***], and [***] on [***].
GSK wishes to continue to use and otherwise exploit such Patent on the same terms as it is entitled to do so with respect to the Licensed IP pursuant to Section 3.2 (Licenses to GSK) of the Agreement, including the right to grant sublicenses in accordance with, and to the extent permitted under, Section 3.3 (Sub-licensing). In consideration for such licenses GSK agrees to make payments to Codexis on the same terms as Section 7 (Financial Terms) of the Agreement.
The Parties agree pursuant to Section 13.8 (Waivers and Modifications) that the Agreement is hereby amended to effect such grant of licenses to GSK and the obligation to make such payments to Codexis. For clarity, Sections 8.2 (Additional Representations and Warranties of Codexis) and Section 10.2(b) (Codexis Indemnity) shall not apply with respect to such Patents.
Restricted Enzymes
Codexis provided GSK with the initial list of Restricted Enzymes in 2014 as Exhibit 1.112. Subsequently, Codexis provided lists of Potentially Restricted Enzymes in 2015 pursuant to Section 3.7.1. The parties no longer wish to apply the processes set out in Section 3.7 regarding the addition of Potentially Restricted Enzymes to the Restricted Enzyme list. At its option, Codexis may notify GSK of any additional Enzymes which are to be added to the list of Restricted Enzymes. In consideration for these modifications to the


Exhibit 10.2 
[***] Certain information in this document has been excluded pursuant to Regulation S-K, Item 601(b)(10). Such excluded information is not material and would likely cause competitive harm to the registration if publicly disclosed.

addition of Restricted Enzymes, the parties agree that the process of Section 3.7 shall no longer apply and the Restricted Enzymes will be included in the licenses granted to GSK in Section 3.2.
The Parties agree pursuant to Section 13.8 that the Agreement is hereby amended to effect the disapplication of such process and exclusion from the licenses granted to GSK. For clarity, Section 3.7.2 shall continue to apply to GSK exercise of its non-exclusive rights under Section 3.2 (Licenses to GSK).
General
This Agreement may be executed in counterparts with the same effect as if both Parties had signed the same document. All such counterparts shall be deemed an original, shall be construed together and shall constitute one and the same instrument. Signatures to this Agreement transmitted by electronic means shall have the same effect as physical delivery of the paper document bearing original signature.

This Agreement shall be governed by, enforced and construed in accordance with the laws of the State of Delaware, United States of America, excluding any conflicts of law principles that would result in the application of the laws of any state other than the State of Delaware.


Yours sincerely


On behalf of GlaxoSmithKline Intellectual Property Development Limited
Name: /s/ [Authorized Signatory]
Title: Corporate Director


Countersigned by


On behalf of Codexis, Inc
Name: /s/ John J. Nicols
Title: CEO
Date: 2/21/20

EX-31.1 4 cdxs20200331ex311sp.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: May 8, 2020
/s/ John J. Nicols
John J. Nicols
President and Chief Executive Officer
(principal executive officer)


EX-31.2 5 cdxs20200331ex312sp.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: May 8, 2020
/s/ Ross Taylor
Ross Taylor
Senior Vice President and Chief Financial Officer
(principal financial and accounting officer)


EX-32.1 6 cdxs20200331ex321sp.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 March 31, 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: May 8, 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 7 cdxs-20200331.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 Cash Flows link:presentationLink link:calculationLink link:definitionLink 2101101 - Disclosure - Description of Business link:presentationLink link:calculationLink link:definitionLink 2402401 - Disclosure - Description of Business - Textual (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 - Textual (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 - Additional Information (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 - Anti-Dilutive Securities (Details) link:presentationLink link:calculationLink link:definitionLink 2116105 - Disclosure - Collaborative Arrangements link:presentationLink link:calculationLink link:definitionLink 2417409 - Disclosure - Collaborative Arrangements - Textual (Details) link:presentationLink link:calculationLink link:definitionLink 2118106 - Disclosure - Cash Equivalents link:presentationLink link:calculationLink link:definitionLink 2319303 - Disclosure - Cash Equivalents (Tables) link:presentationLink link:calculationLink link:definitionLink 2420410 - Disclosure - Cash Equivalents - Components of Cash Equivalents (Details) link:presentationLink link:calculationLink link:definitionLink 2421411 - Disclosure - Cash Equivalents - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 2122107 - Disclosure - Fair Value Measurements link:presentationLink link:calculationLink link:definitionLink 2323304 - Disclosure - Fair Value Measurements (Tables) link:presentationLink link:calculationLink link:definitionLink 2424412 - Disclosure - Fair Value Measurements - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (Details) link:presentationLink link:calculationLink link:definitionLink 2125108 - Disclosure - Balance Sheets Details link:presentationLink link:calculationLink link:definitionLink 2326305 - Disclosure - Balance Sheets Details (Tables) link:presentationLink link:calculationLink link:definitionLink 2427413 - Disclosure - Balance Sheets Details - Inventories (Details) link:presentationLink link:calculationLink link:definitionLink 2428414 - Disclosure - Balance Sheets Details - Property and Equipment, net (Details) link:presentationLink link:calculationLink link:definitionLink 2429415 - Disclosure - Balance Sheets Details - Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 2430416 - Disclosure - Balance Sheets Details - Accrued Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 2131109 - Disclosure - Stock-based Compensation link:presentationLink link:calculationLink link:definitionLink 2332306 - Disclosure - Stock-based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 2433417 - Disclosure - Stock-based Compensation - Textual (Details) link:presentationLink link:calculationLink link:definitionLink 2434418 - Disclosure - Stock-based Compensation - Stock-based Compensation Expense (Details) link:presentationLink link:calculationLink link:definitionLink 2135110 - Disclosure - Capital Stock link:presentationLink link:calculationLink link:definitionLink 2436419 - Disclosure - Capital Stock - Textual (Details) link:presentationLink link:calculationLink link:definitionLink 2137111 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 2338307 - Disclosure - Commitments and Contingencies (Tables) link:presentationLink link:calculationLink link:definitionLink 2439420 - Disclosure - Commitments and Contingencies - Textual (Details) link:presentationLink link:calculationLink link:definitionLink 2440421 - Disclosure - Commitments and Contingencies - Lease Cost (Details) link:presentationLink link:calculationLink link:definitionLink 2441422 - Disclosure - Commitments and Contingencies - Other Lease Information (Details) link:presentationLink link:calculationLink link:definitionLink 2442423 - Disclosure - Commitments and Contingencies - Cash Paid for Lease Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 2443424 - Disclosure - Commitments and Contingencies - Future Minimum Lease Payments (Details) link:presentationLink link:calculationLink link:definitionLink 2443424 - Disclosure - Commitments and Contingencies - Future Minimum Lease Payments (Details) link:presentationLink link:calculationLink link:definitionLink 2444425 - Disclosure - Commitments and Contingencies - Other Commitments (Details) link:presentationLink link:calculationLink link:definitionLink 2145112 - Disclosure - Related Party Transactions link:presentationLink link:calculationLink link:definitionLink 2446426 - Disclosure - Related Party Transactions - Textual (Details) link:presentationLink link:calculationLink link:definitionLink 2147113 - Disclosure - Segment, Geographical and Other Revenue Information link:presentationLink link:calculationLink link:definitionLink 2348308 - Disclosure - Segment, Geographical and Other Revenue Information (Tables) link:presentationLink link:calculationLink link:definitionLink 2449427 - Disclosure - Segment, Geographical and Other Revenue Information - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 2450428 - Disclosure - Segment, Geographical and Other Revenue Information - Segment Reporting (Details) link:presentationLink link:calculationLink link:definitionLink 2451429 - Disclosure - Segment, Geographical and Other Revenue Information - Concentration Risk (Details) link:presentationLink link:calculationLink link:definitionLink 2452430 - Disclosure - Segment, Geographical and Other Revenue Information - Revenues by Geographic Area (Details) link:presentationLink link:calculationLink link:definitionLink 2453431 - Disclosure - Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details) link:presentationLink link:calculationLink link:definitionLink 2454432 - Disclosure - Segment, Geographical and Other Revenue Information - Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 2155114 - Disclosure - Allowance for Credit Losses link:presentationLink link:calculationLink link:definitionLink 2356309 - Disclosure - Allowance for Credit Losses (Tables) link:presentationLink link:calculationLink link:definitionLink 2457433 - Disclosure - Allowance for Credit Losses - Analysis of Allowance for Credit Losses (Details) link:presentationLink link:calculationLink link:definitionLink 2458434 - Disclosure - Allowance for Credit Losses - Summary of Finance Receivables by Aging Category (Details) link:presentationLink link:calculationLink link:definitionLink 2159115 - Disclosure - Subsequent Events link:presentationLink link:calculationLink link:definitionLink 2460435 - Disclosure - Subsequent Events - Textual (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 8 cdxs-20200331_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 9 cdxs-20200331_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 10 cdxs-20200331_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT 2023 Finance Lease, Liability, Payments, Due Year Four Finance lease costs: Lease, Cost [Abstract] Employee stock-based compensation APIC, Share-based Payment Arrangement, Increase for Cost Recognition Total revenues Revenue recognized Contract with Customer, Liability, Revenue Recognized 2021 Finance Lease, Liability, Payments, Due Year Two Roche [Member] Roche [Member] Roche Total current liabilities Liabilities, Current Cash Equivalents and Marketable Securities [Line Items] Cash Equivalents and Marketable Securities [Line Items] Cash equivalents and marketable securities. Supply Commitment Arrangement [Domain] Supply Commitment Arrangement [Domain] Schedule of Commitments and Contingencies [Table] Schedule of Commitments and Contingencies [Table] Schedule of commitments and contingencies. Collaborative Arrangement and Arrangement Other than Collaborative [Domain] Collaborative Arrangement and Arrangement Other than Collaborative [Domain] Area of subleased property Area of Subleased Property Area of Subleased Property Financing Receivable, Allowance for Credit Loss [Table] Financing Receivable, Allowance for Credit Loss [Table] Property, Plant and Equipment, Type [Axis] Property, Plant and Equipment, Type [Axis] Accounts receivable from related parties Accounts Receivable, Related Parties Concentration Risk [Line Items] Concentration Risk [Line Items] Office equipment and furniture [Member] Office Equipment and Furniture [Member] Office Equipment and Furniture [Member] Recently Adopted and Issued Accounting Pronouncements New Accounting Pronouncements, Policy [Policy Text Block] Cost of product revenue Cost of Goods and Services Sold Name of Property [Domain] Name of Property [Domain] 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 Financing assets and Allowances Receivables, Trade and Other Accounts Receivable, Allowance for Doubtful Accounts, Policy [Policy Text Block] Entity Address, Postal Zip Code Entity Address, Postal Zip Code Contracts receivable Billed Contracts Receivable Less: imputed interest Finance Lease, Liability, Undiscounted Excess Amount Property and equipment, net Property and equipment, net Property, Plant and Equipment, Net LIBOR [Member] London Interbank Offered Rate (LIBOR) [Member] Basis spread on variable rate Debt Instrument, Basis Spread on Variable Rate Total assets Assets Taxes paid related to net share settlement of equity awards Share-based Payment Arrangement, Decrease for Tax Withholding Obligation 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 Entity Shell Company Entity Shell Company Operating lease, liability Lease Obligations Operating Lease, Liability Cover page. Cover [Abstract] Document Type Document Type Lease area space occupancy Lease Area Space Occupancy Lease area space occupancy. Other long-term liabilities Increase (Decrease) in Other Noncurrent Liabilities Fair Value Measurements Fair Value Measurement and Measurement Inputs, Recurring and Nonrecurring [Text Block] Subsequent Event [Member] Subsequent Event [Member] Variable Rate [Domain] Variable Rate [Domain] Construction in progress [Member] Construction in Progress [Member] Work-in-process Inventory, Work in Process, Gross Share-based Payment Arrangement [Abstract] Share-based Payment Arrangement [Abstract] 2023 Lessee, Operating Lease, Liability, Payments, Due Year Four RSAs and RSUs [Member] RSAs and RSUs [Member] RSAs and RSUs [Member] Current liabilities: Liabilities, Current [Abstract] Credit Facility [Axis] Credit Facility [Axis] Current portion of lease obligations - Finance leases Finance Lease, Liability, Current Property, Plant and Equipment, Type [Domain] Property, Plant and Equipment, Type [Domain] Performance obligation Revenue, Remaining Performance Obligation, Amount Segment, Geographical and Other Revenue Information Segment Reporting Disclosure [Text Block] Schedule of cash equivalents and marketable securities Investment [Table Text Block] Target sales for milestone Revenue Recognition, Target Sales for Sales Milestone Revenue Recognition, Target Sales for Sales Milestone Term of collaborative research and development agreement Term of Collaborative Research and Development Agreement Term of collaborative research and development agreement. Equity [Abstract] Equity [Abstract] Preferred stock, shares outstanding (shares) Preferred Stock, Shares Outstanding Segment Reporting Information [Line Items] Segment Reporting Information [Line Items] Document Quarterly Report Document Quarterly Report Commitments and Contingencies (Note 11) Commitments and Contingencies Deferred revenue, net of current portion Contract with Customer, Liability, Noncurrent 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 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 Consolidation Items [Domain] Consolidation Items [Domain] Money Market Funds [Member] Money Market Funds [Member] Cash Equivalents and Marketable Securities [Abstract] Cash Equivalents and Marketable Securities [Abstract] Cash Equivalents and Marketable Securities [Abstract] Other Commitments [Line Items] Other Commitments [Line Items] Entity File Number Entity File Number Award vesting period Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period Release of stock awards (shares) Stock Issued During Period, Shares, Other Operating Leases Operating Leases, Future Minimum Payments Due, Fiscal Year Maturity [Abstract] Expected timing of satisfaction, period Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Schedule of customers that contributed 10% or more of total accounts receivable Schedules of Concentration of Risk, by Risk Factor [Table Text Block] Compensation not yet recognized, share-based awards other than options Share-based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount Segments [Axis] Segments [Axis] Document Fiscal Period Focus Document Fiscal Period Focus Milestone One [Member] Milestone One [Member] Milestone One [Member] Product and Service [Domain] Product and Service [Domain] Related Party Transaction, Due from (to) Related Party [Abstract] Related Party Transaction, Due from (to) Related Party [Abstract] Cash and Cash Equivalents [Axis] Cash and Cash Equivalents [Axis] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Merck [Member] Merck [Member] Merck [Member] Loss from operations Income (loss) from operations Operating Income (Loss) Goodwill Goodwill Goodwill 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 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 Operating cash flows from finance leases Finance Lease, Interest Payment on Liability Segments [Domain] Segments [Domain] Statement [Line Items] Statement [Line Items] Balance Sheet Details [Abstract] Balance Sheet Details [Abstract] Balance Sheet Details [Abstract] Performance Enzymes [Member] Performance Enzymes [Member] Performance Enzymes [Member] Total revenues Total revenues Revenue from Contract with Customer, Excluding Assessed Tax Disaggregation of revenue Disaggregation of Revenue [Table Text Block] 2020 (remaining 9 months) Finance Lease, Liability, Payments, Remainder of Fiscal Year Accrued purchases Accrued Purchase, Received Not Yet Billed Accrued Purchase, Received Not Yet Billed Fair Value Disclosures [Abstract] Fair Value Disclosures [Abstract] Novel Biotherapeutics [Member] Biotherapeutic Segment [Member] Biotherapeutic Segment [Member] Technology Transfer, Collaboration and License Agreement [Member] Technology Transfer, Collaboration and License Agreement [Member] Technology Transfer, Collaboration and License Agreement [Member] Plan Name [Axis] Plan Name [Axis] Subsequent Event Type [Axis] Subsequent Event Type [Axis] Concentration Risk Benchmark [Domain] Concentration Risk Benchmark [Domain] Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Schedule of accrued liabilities Schedule of Accrued Liabilities [Table Text Block] Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Amendment Flag Amendment Flag Summary of financial instruments measured at fair value on a recurring basis Fair Value, Assets Measured on Recurring Basis [Table Text Block] Changes in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] Loss before income taxes Income (loss) before income taxes Income (Loss) from Continuing Operations before Equity Method Investments, Income Taxes, Noncontrolling Interest Common stock, shares outstanding (shares) Common Stock, Shares, Outstanding Customer [Axis] Customer [Axis] Consolidation Items [Axis] Consolidation Items [Axis] Fair Value, Inputs, Level 1 [Member] Fair Value, Inputs, Level 1 [Member] Asset retirement obligations Asset Retirement Obligation Compensation not yet recognized, stock options Share-based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount Restricted cash, current and non-current Restricted Cash and Cash Equivalents Capital Stock Stockholders' Equity Note Disclosure [Text Block] Plan Name [Domain] Plan Name [Domain] Maintenance [Member] Maintenance [Member] Use of Estimates Use of Estimates, Policy [Policy Text Block] Novel Biotherapeutics [Member] Novel Biotherapeutics [Member] Novel Biotherapeutics [Member] Incentive Stock Options [Member] Incentive Stock Options [Member] Incentive Stock Options [Member] 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 Cash Equivalents Cash Equivalents and Marketable Securities [Text Block] Cash Equivalents and Marketable Securities [Text Block] Loss Contingency Nature [Axis] Loss Contingency Nature [Axis] Raw materials Inventory, Raw Materials, Gross Local Phone Number Local Phone Number Property, Plant and Equipment [Line Items] Property, Plant and Equipment [Line Items] Recoveries of amounts previously written off Financing Receivable, Allowance for Credit Loss, Recovery Total minimum lease payments Lessee, Operating Lease, Liability, Payments, Due Schedule of property and equipment, net Property, Plant and Equipment [Table Text Block] Finance lease costs Finance Lease, Cost Finance Lease, Cost Additional paid-in capital Additional Paid in Capital Schedule of stock-based compensation expense Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] Research and Development Agreement [Member] Research and Development Agreement [Member] Research and Development Agreement [Member] Short-term lease cost Short-term Lease, Cost Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current Exercise of stock options (shares) Stock options exercised (shares) Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period Agreement Date [Axis] Agreement Date [Axis] Agreement Date [Axis] Renewal term Lessee, Operating Lease, Renewal Term Total current assets Assets, Current Entity Current Reporting Status Entity Current Reporting Status September 2019 [Member] September 2019 [Member] September 2019 [Member] 501 Chesapeake [Member] 501 Chesapeake [Member] 501 Chesapeake Net decrease in cash, cash equivalents and restricted cash Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Name of Property [Axis] Name of Property [Axis] Financing Receivable, Allowance for Credit Loss [Roll Forward] Financing Receivable, Allowance for Credit Loss [Roll Forward] Net loss Net loss Net loss Net Income (Loss) Attributable to Parent Proceeds from exercises of stock options Proceeds from exercises of stock options Proceeds from Stock Options Exercised Milestone Payment Per Target Gene [Member] Milestone Payment Per Target Gene [Member] Milestone Payment Per Target Gene Common Stock [Member] Common Stock [Member] Current assets: Assets, Current [Abstract] Costs and operating expenses: Operating Costs and Expenses [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] Disaggregation of Revenue [Line Items] Disaggregation of Revenue [Line Items] Schedule of stock-based compensation expense by security types Share-based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block] Strategic Collaboration Agreement [Member] Strategic Collaboration Agreement [Member] Strategic Collaboration Agreement [Member] Loss Contingency, Nature [Domain] Loss Contingency, Nature [Domain] Product and Service [Axis] Product and Service [Axis] Operating lease cost Operating Lease, Cost 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 Allowance for Credit Losses Credit Loss, Financial Instrument [Text Block] Commitments and Contingencies Disclosure [Abstract] Commitments and Contingencies Disclosure [Abstract] Balance Sheets Details Balance Sheets Details [Text Block] Balance sheets details. Entity Filer Category Entity Filer Category Corporate [Member] Corporate, Non-Segment [Member] 2025 and thereafter Lessee, Operating Lease, Liability, Payments, Due after Year Five Total liabilities and stockholders' equity Liabilities and Equity Other accrued liabilities Increase (Decrease) in Other Accrued Liabilities Entity Address, City or Town Entity Address, City or Town Selling, General and Administrative Expenses [Member] Selling, General and Administrative Expenses [Member] Concentration risk, percentage Concentration Risk, Percentage Interest on lease obligations Finance Lease, Interest Expense Loss contingency accrual Loss Contingency, Accrual, Current Long-term lease obligations - Operating leases Operating Lease, Liability, Noncurrent Preferred stock, shares authorized (shares) Preferred Stock, Shares Authorized Borrowing capacity Line of Credit Facility, Current Borrowing Capacity Shares of common stock issuable pursuant to equity awards outstanding under the Equity Incentive Plan [Member] Share-based Payment Arrangement [Member] Term Loan [Member] Term Loan [Member] Term Loan [Member] Stockholders' equity: Stockholders' Equity Attributable to Parent [Abstract] Document Fiscal Year Focus Document Fiscal Year Focus Schedule of Segment Reporting Information, by Segment [Table] Schedule of Segment Reporting Information, by Segment [Table] Performance Enzymes [Member] Core Segment [Member] Core Segment [Member] Subsequent Events Subsequent Events [Text Block] Write-offs charged against the allowance Financing Receivable, Allowance for Credit Loss, Writeoff Revenues: Revenues [Abstract] Collaborative Arrangement and Arrangement Other than Collaborative [Line Items] Collaborative Arrangement and Arrangement Other than Collaborative [Line Items] Taxes paid related to net share settlement of equity awards (in shares) Share-based Payment Arrangement, Shares Withheld for Tax Withholding Obligation 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] Award Type [Axis] Award Type [Axis] Performance Based Options (PBOs) [Member] Performance Based Options (PBOs) [Member] Performance Based Options (PBOs) [Member] Other expenses, net Other Nonoperating Income (Expense) Allowance for Credit Losses Financing Receivable, Allowance for Credit Loss [Table Text Block] Subsequent Events [Abstract] Subsequent Events [Abstract] Related Party Transactions Related Party Transactions Disclosure [Text Block] Operating cash flows from operating leases Operating Lease, Payments Schedule of Property, Plant and Equipment [Table] Property, Plant and Equipment [Table] Geographical [Axis] Geographical [Axis] Geographical [Axis] Accumulated Deficit [Member] Retained Earnings [Member] Subsequent Event Type [Domain] Subsequent Event Type [Domain] New Accounting Pronouncements or Change in Accounting Principle [Table] New Accounting Pronouncements or Change in Accounting Principle [Table] Agreement Date [Domain] Agreement Date [Domain] [Domain] for Agreement Date [Axis] Subsequent Event [Line Items] Subsequent Event [Line Items] Purchase of property and equipment recorded in accounts payable and accrued expenses Capital Expenditures Incurred but Not yet Paid Tate & Lyle [Member] Tate & Lyle [Member] Tate & Lyle [Member] Document Period End Date Document Period End Date 2024 Finance Lease, Liability, Payments, Due Year Five Impairment charges related to contract assets Contract with Customer, Asset, Credit Loss Expense (Reversal) Statement [Table] Statement [Table] Entity Registrant Name Entity Registrant Name Contract with customer, liability Contract Liabilities: Deferred Revenue Contract with Customer, Liability Investing activities: Net Cash Provided by (Used in) Investing Activities [Abstract] Number of shares authorized (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized Maximum [Member] Maximum [Member] Collaborative Arrangement and Arrangement Other than Collaborative [Table] Collaborative Arrangement and Arrangement Other than Collaborative [Table] Receivables [Abstract] 2022 Lessee, Operating Lease, Liability, Payments, Due Year Three 2019 PSU and PBO Plan [Member] 2019 PSU and PBO Plan [Member] 2019 PSU and PBO Plan [Member] Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table] Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table] Restricted cash Restricted Cash and Cash Equivalents, Noncurrent Research and Development Arrangement, Contract to Perform for Others, Type [Axis] Research and Development Arrangement, Contract to Perform for Others, Type [Axis] Performance obligations satisfied Contract with Customer, Liability, Change in Timeframe, Performance Obligation Satisfied, Revenue Recognized Antidilutive Securities, Name [Domain] Antidilutive Securities, Name [Domain] Accumulated deficit Retained Earnings (Accumulated Deficit) Entity Tax Identification Number Entity Tax Identification Number Accretion expense related to asset retirement obligation Asset Retirement Obligation, Accretion Expense Long-Lived Assets Long-Lived Assets Number of reportable segments Number of Reportable Segments Schedule of Cash Equivalents and Marketable Securities [Table] Schedule of Cash Equivalents and Marketable Securities [Table] Schedule of cash equivalents and marketable securities. Trading Symbol Trading Symbol Minimum [Member] Minimum [Member] Future Minimum Payment Supply Commitment, Remaining Minimum Amount Committed Statistical Measurement [Domain] Statistical Measurement [Domain] 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] Net cash used in financing activities Net Cash Provided by (Used in) Financing Activities Provision for income taxes Income Tax Expense (Benefit) 2021 Lessee, Operating Lease, Liability, Payments, Due Year Two Vesting [Axis] Vesting [Axis] Prime Rate [Member] Prime Rate [Member] Computer equipment and software [Member] Computer Equipment [Member] Revenue from Contract with Customer [Abstract] Revenue from Contract with Customer [Abstract] Other long-term liabilities Other Liabilities, Noncurrent 2019 Plan [Member] 2019 Plan [Member] 2019 Plan [Member] Other Commitments [Table] Other Commitments [Table] City Area Code City Area Code Prepaid expenses and other current assets Increase (Decrease) in Prepaid Expense and Other Assets Title of 12(b) Security Title of 12(b) Security Payment terms Revenue from Contract with Customer, Payment Terms Revenue from Contract with Customer, Payment Terms Maximum number of shares to be issued upon exercise of stock options (in shares) Common Stock, Capital Shares Reserved for Future Issuance Accrued professional and outside service fees Accrued Professional Fees Revenue, Initial Application Period Cumulative Effect Transition [Line Items] Revenue, Initial Application Period Cumulative Effect Transition [Line Items] Earnings Per Share [Abstract] Earnings Per Share [Abstract] Counterparty Name [Axis] Counterparty Name [Axis] Concentration Risk [Table] Concentration Risk [Table] Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Axis] Commitments and Contingencies [Line Items] Commitments and Contingencies [Line Items] Commitments and contingencies. Operating lease maturity Lessee, Operating Lease, Liability, Maturity [Table Text Block] 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] Accrued compensation Increase (Decrease) in Employee Related Liabilities Assets Assets [Abstract] Beginning balance (shares) Ending balance (shares) Shares, Outstanding Preferred stock, par value (usd per share) Preferred Stock, Par or Stated Value Per Share Number of operating segments Number of Operating Segments Operating Leases - Weighted-average remaining lease term (in years) Operating Lease, Weighted Average Remaining Lease Term Capital lease obligations incurred Lease Obligation Incurred Total lease cost Lease, Cost Non-current restricted cash Restricted Cash and Investments, Noncurrent Operating activities: Net Cash Provided by (Used in) Operating Activities [Abstract] Description of Business Nature of Operations [Text Block] Performance Shares [Member] Performance Shares [Member] Supply Agreement [Member] Supply Agreement [Member] Supply Agreement [Member] Total Financial assets, net Accounts and Financing Receivable, after Allowance for Credit Loss, Current Schedule of segment reporting Schedule of Segment Reporting Information, by Segment [Table Text Block] Segment Reporting [Abstract] Segment Reporting [Abstract] Less: imputed interest Lessee, Operating Lease, Liability, Undiscounted Excess Amount Financial assets: Financing Receivable, before Allowance for Credit Loss [Abstract] Exercise of stock options Stock Issued During Period, Value, Stock Options Exercised Net loss per share, basic and diluted (usd per share) Earnings Per Share, Basic and Diluted Americas [Member] Americas [Member] Customer [Domain] Customer [Domain] Goodwill, Allocated Percent Goodwill, Allocated Percent Goodwill, Allocated Percent Total minimum lease payments Finance Lease, Liability, Payment, Due Schedule of inventory components Schedule of Inventory, Current [Table Text Block] Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] Income Statement Location [Domain] Income Statement Location [Domain] Statistical Measurement [Axis] Statistical Measurement [Axis] Supplemental disclosure of cash flow information Supplemental Cash Flow Information [Abstract] Operating Leases - Weighted-average discount rate Operating Lease, Weighted Average Discount Rate, Percent Non-Statutory Stock Options [Member] Non-Statutory Stock Options [Member] Non-Statutory Stock Options [Member] Financing Receivable, Past Due Financing Receivable, Past Due [Table Text Block] Basis of Presentation and Principles of Consolidation Basis of Accounting, Policy [Policy Text Block] Research and Development Reimbursement [Member] Research and Development Reimbursement [Member] Research and Development Reimbursement Accounts payable Increase (Decrease) in Accounts Payable Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Sublease income Sublease Income Finance Leases - Weighted-average discount rate Finance Lease, Weighted Average Discount Rate, Percent Schedule of intangible assets and goodwill Schedule of Intangible Assets and Goodwill [Table Text Block] 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 Common stock, shares authorized (shares) Common Stock, Shares Authorized Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] Restricted cash, current Restricted Cash Entity Central Index Key Entity Central Index Key Entity Emerging Growth Entity Emerging Growth Company Selling, general and administrative Selling, General and Administrative Expense 101 Saginaw [Member] 101 Saginaw [Member] 101 Saginaw Accounts receivable, net Increase (Decrease) in Finance Receivables April 2016 [Member] April 2016 [Member] April 2016 [Member] Stock-based compensation Share-based Payment Arrangement, Noncash Expense Current portion of lease obligations - Operating leases Operating Lease, Liability, Current Revenue impacted by government issued shelter-in-place Revenue Impacted by Government Issued Shelter-in-Place Revenue Impacted by Government Issued Shelter-in-Place Porton [Member] Porton [Member] Porton [Member] Income Taxes Income Tax, Policy [Policy Text Block] Performance obligation, expected timing of satisfaction Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block] Credit Facility [Domain] Credit Facility [Domain] Other Other Accrued Liabilities Accrued compensation Employee-related Liabilities, Current 2020 (remaining 9 months) Lessee, Operating Lease, Liability, Payments, Remainder of Fiscal Year 200-220 Penobscot [Member] 200-220 Penobscot [Member] 200-220 Penobscot Takeda [Member] Takeda Pharmaceutical Co. Ltd. [Member] Takeda Pharmaceutical Co. Ltd. Finance lease liability Finance Lease, Liability, Maturity [Table Text Block] Antidilutive Securities [Axis] Antidilutive Securities [Axis] Financial Asset, Period Past Due [Domain] Financial Asset, Period Past Due [Domain] Nestec Ltd. (Nestle Health Sciences) [Member] Nestec Ltd. (Nestle Health Sciences) [Member] Nestec Ltd. (Nestle Health Sciences) [Member] Unbilled Contracts Receivable Unbilled Contracts Receivable 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] Preferred stock, shares issued (shares) Preferred Stock, Shares Issued 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 Computer Equipment and Software [Member] Computer Equipment and Software [Member] Computer Equipment and Software [Member] Liabilities and Stockholders' Equity Liabilities and Equity [Abstract] Other non-current assets Other Assets, Noncurrent Financial Asset, 30 to 59 Days Past Due [Member] Financial Asset, 30 to 59 Days Past Due [Member] Financing activities: Net Cash Provided by (Used in) Financing Activities [Abstract] Organization, Consolidation and Presentation of Financial Statements [Abstract] Organization, Consolidation and Presentation of Financial Statements [Abstract] Schedule of supply and service commitments Supply Commitment [Table Text Block] Balance Sheets Details [Abstract] Balance Sheets Details [Abstract] -- None. No documentation exists for this element. -- Revenue, Product and Service Benchmark [Member] Revenue, Product and Service Benchmark [Member] Segment Information Segment Reporting, Policy [Policy Text Block] Finance Leases Capital Leases, Future Minimum Payments Due, Fiscal Year Maturity [Abstract] Fair Value, Measurements, Fair Value Hierarchy [Domain] Fair Value Hierarchy and NAV [Domain] Purchase of property and equipment Payments to Acquire Property, Plant, and Equipment 2024 Lessee, Operating Lease, Liability, Payments, Due Year Five Project [Domain] Project [Domain] Contract with customer Contract with Customer, Asset and Liability [Table Text Block] Financing receivable, past due Financing Receivable, Past Due Supply Commitment [Member] Supply Commitment [Member] Sales-Based Milestone [Member] Sales-Based Milestone [Member] Sales-Based Milestone [Member] Term of contract Lessee, Finance Lease, Term of Contract Unrealized loss on investment in equity securities Unrealized Gain (Loss) on Investments Research and Development Revenue [Member] Research and Development Revenue [Member] Research and Development Revenue [Member] CDX-6114 [Member] CDX-6114 [Member] CDX-6114 [Member] Subsequent Event [Table] Subsequent Event [Table] Accounting Policies [Abstract] Accounting Policies [Abstract] Additional Paid-in Capital [Member] Additional Paid-in Capital [Member] Revenue Recognition Revenue from Contract with Customer [Text Block] Schedule of Inventory Components Inventory, Net [Abstract] Finance Leases - Weighted-average remaining lease term (in years) Finance Lease, Weighted Average Remaining Lease Term Interest income Investment Income, Interest Milestone payment amount Revenue Recognition, Milestone Payment Amount Revenue Recognition, Milestone Payment Amount Revenue, Initial Application Period Cumulative Effect Transition [Table] Revenue, Initial Application Period Cumulative Effect Transition [Table] Agreement Type [Axis] Agreement Type [Axis] Agreement Type [Axis] Accounts Receivable [Member] Accounts Receivable [Member] United States [Member] UNITED STATES 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 Stated interest rate Debt Instrument, Interest Rate, Stated Percentage Cash and Cash Equivalents [Line Items] Cash and Cash Equivalents [Line Items] Finished goods Inventory, Finished Goods, Gross 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 Property, Plant and Equipment, Gross Contract Costs Capitalized Contract Cost, Net, Current Purchase price of common stock Share-based Compensation Arrangement by Share-based Payment Award, Purchase Price of Common Stock, Percent Financing Receivable, before Allowance for Credit Loss, Total Financing Receivable, before Allowance for Credit Loss Geographical [Domain] Geographical [Domain] Entity Address, State or Province Entity Address, State or Province Income Statement Location [Axis] Income Statement Location [Axis] Operating Segments [Member] Operating Segments [Member] Research and Development Arrangement, Contract to Perform for Others, Type [Domain] Research and Development Arrangement, Contract to Perform for Others, Type [Domain] Financing receivable, not past due Financing Receivable, Not Past Due Expiration period Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period Tranche One [Member] Share-based Payment Arrangement, Tranche One [Member] Net cash used in investing activities Net Cash Provided by (Used in) Investing Activities Indemnification Agreement [Member] Indemnification Agreement [Member] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Table] Fair Value, Recurring and Nonrecurring [Table] Tranche Two [Member] Share-based Payment Arrangement, Tranche Two [Member] 2022 Finance Lease, Liability, Payments, Due Year Three Accounts payable Accounts Payable, Current Up-front Payment [Member] Up-front Payment [Member] Up-front Payment Right-of-use assets - Finance leases, net Finance Lease, Right-of-Use Asset Basis of Presentation and Summary of Significant Accounting Policies Significant Accounting Policies [Text Block] Contingent receivable Revenue Recognition, Contingent Receivable Revenue Recognition, Contingent Receivable Other accrued liabilities Total Accrued Liabilities, Current Entity Interactive Data Current Entity Interactive Data Current Customer B [Member] Customer B [Member] Customer B [Member] Common stock, shares, issued (shares) Common Stock, Shares, Issued Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Total costs and operating expenses Costs and Expenses Common stock, par value (usd per share) Common Stock, Par or Stated Value Per Share Accounts Receivable, before Allowance for Credit Loss Accounts Receivable, before Allowance for Credit Loss Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Taxes paid related to net share settlement of equity awards Payment, Tax Withholding, Share-based Payment Arrangement Inventories Inventories Inventory, Net 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 Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Number of reporting units Number of Reporting Units Net loss per Share Earnings Per Share [Text Block] Percent of voting interests Percent of Voting Interests Threshold to trigger higher exercise price Percent of Voting Interests Threshold to trigger higher exercise price Number of shares available for grant (in shares) Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant Amortization of right-of-use assets Finance Lease, Right-of-Use Asset, Amortization Less: accumulated depreciation and amortization Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Award Type [Domain] Award Type [Domain] Financial Asset, 60 to 89 Days Past Due [Member] Financial Asset, 60 to 89 Days Past Due [Member] Revenue from related parties Revenue from Related Parties 2025 and thereafter Finance Lease, Liability, Payments, Due after Year Five Other non-current assets Increase (Decrease) in Other Operating Assets Finance lease, liability Lease Obligations Finance Lease, Liability Revolving Credit Facility [Member] Revolving Credit Facility [Member] Leasehold improvements [Member] Leasehold Improvements [Member] Cash [Member] Cash [Member] Award vesting rights Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage Duration to pay after milestone achievement (in days) Revenue Recognition, Duration to Pay After Milestone Achievement Revenue Recognition, Duration to Pay After Milestone Achievement Restricted Stock Units (RSUs) [Member] Restricted Stock Units (RSUs) [Member] Customer A [Member] Customer A [Member] Customer A [Member] Research and development [Member] Research and Development Expense [Member] Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] 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] Total liabilities Liabilities Contract assets Increase (Decrease) in Contract with Customer, Asset Common stock, $0.0001 par value per share; 100,000 shares authorized; 59,017 shares and 58,877 shares issued and outstanding at March 31, 2020 and December 31, 2019, respectively Common Stock, Value, Issued Research and development Research and Development Expense Accounts receivable borrowing base percentage Line of Credit Facility, Accounts Receivable Borrowing Base Percentage Line of Credit Facility, Accounts Receivable Borrowing Base Percentage Vesting [Domain] Vesting [Domain] Counterparty Name [Domain] Counterparty Name [Domain] 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] Inventories Increase (Decrease) in Inventories Cash and cash equivalents Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Schedule of revenues by geographical area Reconciliation of Revenue from Segments to Consolidated [Table Text Block] Unbilled receivables Increase (Decrease) In Contract with Customer, Liability, Unbilled Receivables Increase (Decrease) In Contract with Customer, Liability, Unbilled Receivables Royalty [Member] Royalty [Member] Number of days for payment Revenue Recognition, Milestone Revenue, Number of Days for Payment Revenue Recognition, Milestone Revenue, Number of Days for Payment Right-of-use assets - Operating leases, net Operating Lease, Right-of-Use Asset Equity Components [Axis] Equity Components [Axis] Cash and Cash Equivalents [Domain] Cash and Cash Equivalents [Domain] New Accounting Pronouncements or Change in Accounting Principle [Line Items] New Accounting Pronouncements or Change in Accounting Principle [Line Items] Restricted Cash and Cash Equivalents [Axis] Restricted Cash and Cash Equivalents [Axis] GSK [Member] GSK [Member] GSK [Member] Performance Stock Units (PSUs) [Member] Performance Stock Units [Member] Performance Stock Units [Member] Total stockholders' equity Beginning balance Ending balance Stockholders' Equity Attributable to Parent Increase (Decrease) in Stockholders' Equity Common Shares Stock Transactions, Parenthetical Disclosures [Abstract] Deferred revenue Contract with Customer, Liability, Current Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Axis] Novartis [Member] Novartis [Member] Novartis [Member] Lease cost Lease, Cost [Table Text Block] Number of buildings leased Number of Properties Subject to Ground Leases EMEA [Member] EMEA [Member] Financing Receivable, Allowance for Credit Loss [Line Items] Financing Receivable, Allowance for Credit Loss [Line Items] Collaborative Arrangement and Arrangement Other than Collaborative [Axis] Collaborative Arrangement and Arrangement Other than Collaborative [Axis] Less: allowances Beginning Balance January 1, 2020 Ending Balance March 31, 2020 Financing Receivable, Allowance for Credit Loss, Current Accounts receivable Accounts Receivable, before Allowance for Credit Loss, Current Accounts Receivable, before Allowance for Credit Loss, Current Interest paid Interest Paid, Excluding Capitalized Interest, Operating Activities Goodwill Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block] Preferred stock, $0.0001 par value per share; 5,000 shares authorized, none issued and outstanding Preferred Stock, Value, Issued 2018 PSU and PBO Plan [Member] 2018 PSU and PBO Plan [Member] 2018 PSU and PBO Plan [Member] Variable Rate [Axis] Variable Rate [Axis] Cash and cash equivalents, fair value Money market funds Cash and Cash Equivalents, Fair Value Disclosure Optional extension period Collaborative Research and Development Agreement, Optional Extension Period Collaborative Research and Development Agreement, Optional Extension Period Security Exchange Name Security Exchange Name Financial Asset, Equal to or Greater than 90 Days Past Due Financial Asset, Equal to or Greater than 90 Days Past Due [Member] Total shares excluded as anti-dilutive (shares) Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Milestone Two [Member] Milestone Two [Member] Milestone Two [Member] Depreciation Depreciation and amortization Depreciation Demand Deposits [Member] Demand Deposits [Member] Customer C [Member] Customer C [Member] Customer C [Member] Net cash used in operating activities Net Cash Provided by (Used in) Operating Activities Laboratory equipment [Member] Laboratory Equipment [Member] Laboratory Equipment [Member] Equity Component [Domain] Equity Component [Domain] Research and Development [Abstract] Research and Development [Abstract] Deferred revenue Increase (Decrease) in Contract with Customer, Liability Document Transition Report Document Transition Report Stock options [Member] Share-based Payment Arrangement, Option [Member] Payments of lease obligations - Finance leases Finance Lease, Principal Payments Finance Lease, Principal Payments Agreement Type [Domain] Agreement Type [Domain] [Domain] for Agreement Type [Axis] Contract assets Contract with Customer, Asset, Gross, Current Schedule of long-lived assets by geographical area Geographic Areas, Long-Lived Assets [Abstract] APAC [Member] APAC [Member] Regions of Australia, New Zealand, Southeast Asia and China Customer D [Member] Customer D [Member] Customer D [Member] Supply Commitment [Axis] Supply Commitment [Axis] Summary of financial instruments measured at fair value on a recurring basis Financial Instruments, Financial Assets, Balance Sheet Groupings [Abstract] Collaborative Arrangement [Member] Collaborative Arrangement [Member] Income Statement [Abstract] Income Statement [Abstract] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Project [Axis] Project [Axis] EX-101.PRE 11 cdxs-20200331_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 12 R61.htm IDEA: XBRL DOCUMENT v3.20.1
Allowance for Credit Losses - Analysis of Allowance for Credit Losses (Details)
$ in Thousands
3 Months Ended
Mar. 31, 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 March 31, 2020 $ 34
XML 13 cdxs-20200331_htm.xml IDEA: XBRL DOCUMENT 0001200375 2020-01-01 2020-03-31 0001200375 2020-04-30 0001200375 2020-03-31 0001200375 2019-12-31 0001200375 country:US 2020-03-31 0001200375 cdxs:ProductSalesMember 2020-01-01 2020-03-31 0001200375 cdxs:ProductSalesMember 2019-01-01 2019-03-31 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2020-01-01 2020-03-31 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2019-01-01 2019-03-31 0001200375 2019-01-01 2019-03-31 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-03-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2020-01-01 2020-03-31 0001200375 us-gaap:RetainedEarningsMember 2020-01-01 2020-03-31 0001200375 us-gaap:CommonStockMember 2020-03-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2020-03-31 0001200375 us-gaap:RetainedEarningsMember 2020-03-31 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-03-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2019-01-01 2019-03-31 0001200375 us-gaap:RetainedEarningsMember 2019-01-01 2019-03-31 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 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:CDX6114Member us-gaap:CollaborativeArrangementMember 2018-12-01 2018-12-31 0001200375 cdxs:PerformanceEnzymesMember 2020-03-31 0001200375 cdxs:NovelBiotherapeuticsMember 2020-03-31 0001200375 cdxs:ProductSalesMember cdxs:CoreSegmentMember 2020-01-01 2020-03-31 0001200375 cdxs:ProductSalesMember cdxs:CoreSegmentMember 2019-01-01 2019-03-31 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2020-01-01 2020-03-31 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-03-31 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2019-01-01 2019-03-31 0001200375 cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-03-31 0001200375 cdxs:CoreSegmentMember 2020-01-01 2020-03-31 0001200375 cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-03-31 0001200375 cdxs:CoreSegmentMember 2019-01-01 2019-03-31 0001200375 cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-03-31 0001200375 srt:AmericasMember cdxs:CoreSegmentMember 2020-01-01 2020-03-31 0001200375 srt:AmericasMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-03-31 0001200375 srt:AmericasMember 2020-01-01 2020-03-31 0001200375 srt:AmericasMember cdxs:CoreSegmentMember 2019-01-01 2019-03-31 0001200375 srt:AmericasMember 2019-01-01 2019-03-31 0001200375 us-gaap:EMEAMember cdxs:CoreSegmentMember 2020-01-01 2020-03-31 0001200375 us-gaap:EMEAMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-03-31 0001200375 us-gaap:EMEAMember 2020-01-01 2020-03-31 0001200375 us-gaap:EMEAMember cdxs:CoreSegmentMember 2019-01-01 2019-03-31 0001200375 us-gaap:EMEAMember cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-03-31 0001200375 us-gaap:EMEAMember 2019-01-01 2019-03-31 0001200375 cdxs:APACMember cdxs:CoreSegmentMember 2020-01-01 2020-03-31 0001200375 cdxs:APACMember 2020-01-01 2020-03-31 0001200375 cdxs:APACMember cdxs:CoreSegmentMember 2019-01-01 2019-03-31 0001200375 cdxs:APACMember 2019-01-01 2019-03-31 0001200375 cdxs:ProductSalesMember 2020-04-01 2020-03-31 0001200375 cdxs:ProductSalesMember 2021-01-01 2020-03-31 0001200375 cdxs:ProductSalesMember 2022-01-01 2020-03-31 0001200375 cdxs:ProductSalesMember 2020-03-31 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2020-04-01 2020-03-31 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2021-01-01 2020-03-31 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2022-01-01 2020-03-31 0001200375 cdxs:ResearchandDevelopmentRevenueMember 2020-03-31 0001200375 2020-04-01 2020-03-31 0001200375 2021-01-01 2020-03-31 0001200375 2022-01-01 2020-03-31 0001200375 us-gaap:StockCompensationPlanMember 2020-01-01 2020-03-31 0001200375 us-gaap:StockCompensationPlanMember 2019-01-01 2019-03-31 0001200375 cdxs:GSKMember srt:MinimumMember 2020-03-31 0001200375 cdxs:GSKMember srt:MaximumMember 2020-03-31 0001200375 cdxs:GSKMember 2019-01-01 2019-12-31 0001200375 cdxs:GSKMember 2020-03-31 0001200375 cdxs:GSKMember 2019-12-31 0001200375 cdxs:MerckMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2020-01-01 2020-03-31 0001200375 cdxs:MerckMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2019-01-01 2019-03-31 0001200375 cdxs:MerckMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2015-08-31 0001200375 cdxs:MerckMember us-gaap:MaintenanceMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2019-01-01 2019-12-31 0001200375 cdxs:MerckMember us-gaap:MaintenanceMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2020-01-01 2020-03-31 0001200375 cdxs:MerckMember us-gaap:MaintenanceMember cdxs:TechnologyTransferCollaborationandLicenseAgreementMember 2020-03-31 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-01-01 2020-03-31 0001200375 cdxs:MerckMember cdxs:ProductSalesMember cdxs:SupplyAgreementMember 2019-01-01 2019-03-31 0001200375 cdxs:TateLyleMember cdxs:SupplyAgreementMember 2019-12-31 0001200375 cdxs:TateLyleMember cdxs:SupplyAgreementMember 2020-03-31 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-01-01 2020-03-31 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember 2019-01-01 2019-03-31 0001200375 cdxs:TateLyleMember cdxs:ResearchandDevelopmentAgreementMember 2019-12-31 0001200375 cdxs:TateLyleMember cdxs:ResearchandDevelopmentAgreementMember 2020-03-31 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:GlobalDevelopmentOptionandLicenseAgreementMember 2019-12-31 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 cdxs:StrategicCollaborationAgreementMember 2020-01-01 2020-03-31 0001200375 cdxs:NestecLtd.NestleHealthSciencesMember cdxs:StrategicCollaborationAgreementMember 2019-01-01 2019-03-31 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 2018-10-01 2018-12-31 0001200375 cdxs:PortonMember 2020-01-01 2020-03-31 0001200375 cdxs:PortonMember 2019-01-01 2019-03-31 0001200375 cdxs:TateLyleMember 2020-01-01 2020-03-31 0001200375 cdxs:NovartisMember 2019-05-01 2019-05-31 0001200375 cdxs:NovartisMember 2019-05-31 0001200375 cdxs:NovartisMember cdxs:MilestoneOneMember 2019-05-31 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-01-01 2020-03-31 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-01-01 2020-03-31 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-01-01 2020-03-31 0001200375 cdxs:TakedaPharmaceuticalCoLtdMember 2020-03-31 0001200375 us-gaap:MoneyMarketFundsMember 2020-03-31 0001200375 us-gaap:MoneyMarketFundsMember 2019-12-31 0001200375 us-gaap:CashMember 2020-03-31 0001200375 us-gaap:CashMember 2019-12-31 0001200375 us-gaap:MoneyMarketFundsMember us-gaap:FairValueInputsLevel1Member 2020-03-31 0001200375 us-gaap:MoneyMarketFundsMember us-gaap:FairValueInputsLevel1Member 2019-12-31 0001200375 cdxs:LaboratoryEquipmentMember 2020-03-31 0001200375 cdxs:LaboratoryEquipmentMember 2019-12-31 0001200375 us-gaap:LeaseholdImprovementsMember 2020-03-31 0001200375 us-gaap:LeaseholdImprovementsMember 2019-12-31 0001200375 us-gaap:ComputerEquipmentMember 2020-03-31 0001200375 us-gaap:ComputerEquipmentMember 2019-12-31 0001200375 cdxs:OfficeEquipmentAndFurnitureMember 2020-03-31 0001200375 cdxs:OfficeEquipmentAndFurnitureMember 2019-12-31 0001200375 us-gaap:ConstructionInProgressMember 2020-03-31 0001200375 us-gaap:ConstructionInProgressMember 2019-12-31 0001200375 cdxs:A2019PlanMember 2019-06-30 0001200375 cdxs:IncentiveStockOptionsMember 2019-06-01 2019-06-30 0001200375 cdxs:NonStatutoryStockOptionsMember 2019-06-01 2019-06-30 0001200375 us-gaap:EmployeeStockOptionMember 2019-06-01 2019-06-30 0001200375 us-gaap:EmployeeStockOptionMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2019-06-01 2019-06-30 0001200375 us-gaap:EmployeeStockOptionMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2019-06-01 2019-06-30 0001200375 us-gaap:RestrictedStockUnitsRSUMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2019-06-01 2019-06-30 0001200375 us-gaap:PerformanceSharesMember cdxs:A2019PlanMember 2019-06-30 0001200375 us-gaap:PerformanceSharesMember cdxs:A2019PlanMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2019-06-01 2019-06-30 0001200375 us-gaap:PerformanceSharesMember cdxs:A2019PlanMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2019-06-01 2019-06-30 0001200375 us-gaap:PerformanceSharesMember 2019-06-01 2019-06-30 0001200375 us-gaap:PerformanceSharesMember cdxs:A2020PSUAndPBOPlanMember 2020-03-31 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 us-gaap:PerformanceSharesMember cdxs:A2019PSUandPBOPlanMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2020-01-01 2020-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 2019-01-01 2019-03-31 0001200375 us-gaap:ResearchAndDevelopmentExpenseMember 2020-01-01 2020-03-31 0001200375 us-gaap:ResearchAndDevelopmentExpenseMember 2019-01-01 2019-03-31 0001200375 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2020-01-01 2020-03-31 0001200375 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2019-01-01 2019-03-31 0001200375 us-gaap:EmployeeStockOptionMember 2020-01-01 2020-03-31 0001200375 us-gaap:EmployeeStockOptionMember 2019-01-01 2019-03-31 0001200375 cdxs:RSAsandRSUsMember 2020-01-01 2020-03-31 0001200375 cdxs:RSAsandRSUsMember 2019-01-01 2019-03-31 0001200375 cdxs:PerformanceStockUnitsMember 2020-01-01 2020-03-31 0001200375 cdxs:PerformanceStockUnitsMember 2019-01-01 2019-03-31 0001200375 cdxs:PerformanceBasedOptionsPBOsMember 2020-01-01 2020-03-31 0001200375 cdxs:PerformanceBasedOptionsPBOsMember 2019-01-01 2019-03-31 0001200375 us-gaap:EmployeeStockOptionMember 2020-03-31 0001200375 cdxs:RSAsandRSUsMember 2020-03-31 0001200375 cdxs:PerformanceStockUnitsMember 2020-03-31 0001200375 cdxs:PerformanceBasedOptionsPBOsMember 2020-03-31 0001200375 us-gaap:RestrictedStockUnitsRSUMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2019-06-01 2019-06-30 0001200375 us-gaap:PerformanceSharesMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2019-06-01 2019-06-30 0001200375 us-gaap:PerformanceSharesMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2019-06-01 2019-06-30 0001200375 cdxs:A200220PenobscotMember 2020-03-31 0001200375 cdxs:A400PenoscotMember 2020-03-31 0001200375 cdxs:A501ChesapeakeMember 2020-03-31 0001200375 cdxs:A101SaginawMember 2020-01-31 0001200375 cdxs:A101SaginawMember us-gaap:SubsequentEventMember 2020-04-30 0001200375 2019-01-01 2019-12-31 0001200375 us-gaap:DemandDepositsMember 2019-12-31 0001200375 us-gaap:DemandDepositsMember 2020-03-31 0001200375 2017-02-01 2017-02-28 0001200375 2017-02-28 0001200375 2017-04-01 2017-04-30 0001200375 2017-04-30 0001200375 us-gaap:SupplyCommitmentMember cdxs:April2016Member 2020-03-31 0001200375 us-gaap:SupplyCommitmentMember cdxs:September2019Member 2020-03-31 0001200375 us-gaap:SupplyCommitmentMember 2020-03-31 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-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember cdxs:CoreSegmentMember 2020-01-01 2020-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember 2020-01-01 2020-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember cdxs:CoreSegmentMember 2019-01-01 2019-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:ProductSalesMember 2019-01-01 2019-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2020-01-01 2020-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember 2020-01-01 2020-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:CoreSegmentMember 2019-01-01 2019-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:ResearchandDevelopmentRevenueMember 2019-01-01 2019-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:CoreSegmentMember 2020-01-01 2020-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:BiotherapeuticSegmentMember 2020-01-01 2020-03-31 0001200375 us-gaap:OperatingSegmentsMember 2020-01-01 2020-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:CoreSegmentMember 2019-01-01 2019-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:BiotherapeuticSegmentMember 2019-01-01 2019-03-31 0001200375 us-gaap:OperatingSegmentsMember 2019-01-01 2019-03-31 0001200375 us-gaap:CorporateNonSegmentMember 2020-01-01 2020-03-31 0001200375 us-gaap:CorporateNonSegmentMember 2019-01-01 2019-03-31 0001200375 cdxs:CustomerAMember us-gaap:SalesRevenueProductLineMember 2020-01-01 2020-03-31 0001200375 cdxs:CustomerAMember us-gaap:SalesRevenueProductLineMember 2019-01-01 2019-03-31 0001200375 cdxs:CustomerBMember us-gaap:SalesRevenueProductLineMember 2020-01-01 2020-03-31 0001200375 cdxs:CustomerBMember us-gaap:SalesRevenueProductLineMember 2019-01-01 2019-03-31 0001200375 cdxs:CustomerCMember us-gaap:SalesRevenueProductLineMember 2020-01-01 2020-03-31 0001200375 cdxs:CustomerCMember us-gaap:SalesRevenueProductLineMember 2019-01-01 2019-03-31 0001200375 cdxs:CustomerDMember us-gaap:SalesRevenueProductLineMember 2020-01-01 2020-03-31 0001200375 cdxs:CustomerDMember us-gaap:SalesRevenueProductLineMember 2019-01-01 2019-03-31 0001200375 cdxs:CustomerAMember us-gaap:AccountsReceivableMember 2020-01-01 2020-03-31 0001200375 cdxs:CustomerAMember us-gaap:AccountsReceivableMember 2019-01-01 2019-12-31 0001200375 cdxs:CustomerDMember us-gaap:AccountsReceivableMember 2020-01-01 2020-03-31 0001200375 cdxs:CustomerDMember us-gaap:AccountsReceivableMember 2019-01-01 2019-12-31 0001200375 country:US 2019-12-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:PerformanceEnzymesMember 2020-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:NovelBiotherapeuticsMember 2020-03-31 0001200375 us-gaap:OperatingSegmentsMember 2020-03-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:PerformanceEnzymesMember 2019-12-31 0001200375 us-gaap:OperatingSegmentsMember cdxs:NovelBiotherapeuticsMember 2019-12-31 0001200375 us-gaap:OperatingSegmentsMember 2019-12-31 0001200375 2020-01-01 0001200375 us-gaap:FinancingReceivables30To59DaysPastDueMember 2020-03-31 0001200375 us-gaap:FinancingReceivables60To89DaysPastDueMember 2020-03-31 0001200375 us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember 2020-03-31 0001200375 us-gaap:FinancingReceivables30To59DaysPastDueMember 2019-12-31 0001200375 us-gaap:FinancingReceivables60To89DaysPastDueMember 2019-12-31 0001200375 us-gaap:FinancingReceivablesEqualToGreaterThan90DaysPastDueMember 2019-12-31 0001200375 cdxs:NovartisMember us-gaap:SubsequentEventMember 2020-04-30 0001200375 cdxs:NovartisMember us-gaap:SubsequentEventMember 2020-04-01 2020-04-30 shares iso4217:USD iso4217:USD shares cdxs:reportingUnit pure cdxs:installment utr:sqft cdxs:security cdxs:segment 0001200375 false 2020 Q1 --12-31 1723000 P9M P1Y P9M P1Y P9M P1Y 0.33 0.50 0.50 10-Q true 2020-03-31 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 59018437 87327000 90498000 627000 661000 8384000 9063000 619000 1027000 13949000 10099000 22952000 20189000 34000 34000 22918000 20155000 701000 371000 2989000 2520000 114562000 114205000 1062000 1062000 23199000 23837000 214000 268000 6647000 6282000 3241000 3241000 547000 178000 149472000 149073000 2441000 2621000 3124000 5003000 8923000 8923000 6540000 1815000 1107000 9000 60000 5970000 57000 22282000 15388000 2566000 1987000 24319000 24951000 1239000 1230000 50406000 43556000 0.0001 0.0001 5000000 5000000 0 0 0 0 0 0 0.0001 0.0001 100000000 100000000 59017000 59017000 58877000 58877000 6000 6000 449121000 447920000 -350061000 -342409000 99066000 105517000 149472000 149073000 5100000 7988000 9570000 7595000 14670000 15583000 2541000 4391000 10967000 8016000 8989000 8415000 22497000 20822000 -7827000 -5239000 266000 231000 -86000 -125000 -7647000 -5133000 5000 3000 -7652000 -5136000 -0.13 -0.09 58888000 54170000 58877000 6000 447920000 -342409000 105517000 5000 39000 39000 219000 2169000 2169000 -84000 1007000 1007000 -7652000 -7652000 59017000 6000 449121000 -350061000 99066000 54065000 5000 386775000 -330474000 56306000 219000 776000 776000 402000 2063000 2063000 145000 2799000 2799000 -5136000 -5136000 54541000 5000 386815000 -335610000 51210000 -7652000 -5136000 438000 319000 692000 759000 2169000 2063000 0 -103000 -679000 1053000 -408000 -35000 -3850000 -7000 330000 44000 469000 163000 369000 -38000 -246000 -999000 -1879000 1196000 3116000 3591000 -624000 -616000 6492000 -2937000 -1425000 -2851000 761000 445000 -761000 -445000 39000 776000 51000 59000 1007000 2799000 -1019000 -2082000 -3205000 -5378000 92221000 54485000 89016000 49107000 4000 22000 182000 142000 87327000 47322000 1689000 1785000 89016000 49107000 Description of Business<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%;">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 our 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 Codexis’ 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;"><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:115%;">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, Codexis’ EvoT4™ DNA ligase.</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 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: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 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 </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%;">potential treatment of 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: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%;">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: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%;">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:120%;"> </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, Codexis 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. The parties will begin collaborative work on three initial programs for the treatment of Fabry disease, Pompe disease, and an unnamed blood factor deficiency. Codexis 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><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%;">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 style="padding-left: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:700;line-height:120%;">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 disrupted as a result of local shelter-in-place orders and any disruptions in operations of our customers with whom we collaborate. For the three months ended March 31, 2020, the COVID-19 pandemic resulted in lower research and development revenues of approximately $0.6 million as completion of those services were deferred to the future periods. We are unable to fully determine and quantify the extent to which delays in our R&amp;D projects will be affected by the COVID-19 pandemic. 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.</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 governing the operation of non-essential businesses during the pandemic, has caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Our Redwood City employees have been working from home since mid-March 2020, while ensuring essential staffing levels in our operations remain in place.</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> 1000000.0 P60D 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: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 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 months ended March 31, 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 March 31, 2020, results of our operations for the three </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%;">months ended March 31, 2020 and 2019, changes in stockholders' equity for the three months ended March 31, 2020 and 2019, and cash flows for the three months ended March 31, 2020 and 2019. The interim results are not necessarily indicative of the results for any future interim periods or for the entire year. The results of the three months ended March 31, 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 a 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 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%;">Valuation Allowance 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 months ended March 31, 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: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%;">Valuation Allowance 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;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%;">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 quarter ended March 31, 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 March 31, 2020 and the assigned goodwill to its fair value at March 31, 2020. We concluded that there was no goodwill impairment at March 31, 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%;">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 our 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:700;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: 1) permitting net operating loss carrybacks to offset 100% of taxable income for taxable years beginning before 2021, 2) accelerating alternative minimum tax credit refunds, 3) temporarily increasing the allowable business interest deduction from 30% to 50% of adjusted taxable income, and 4) 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-align:justify;"><span><br/></span></div><div style="text-indent:18pt;text-align:justify;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:700;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 on January 1, 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 of this standard 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 on January 1, 2020 using a prospective approach. The adoption of this standard 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 </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%;">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 on January 1, 2020. Adoption of this standard 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 on January 1, 2020. Adoption of this standard had no impact on our unaudited condensed consolidated financial statements and related disclosures.</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:700;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="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: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 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 months ended March 31, 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 March 31, 2020, results of our operations for the three </span></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:120%;">months ended March 31, 2020 and 2019, changes in stockholders' equity for the three months ended March 31, 2020 and 2019, and cash flows for the three months ended March 31, 2020 and 2019. The interim results are not necessarily indicative of the results for any future interim periods or for the entire year. The results of the three months ended March 31, 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>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 a 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 Allowances<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 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%;">Valuation Allowance 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 months ended March 31, 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: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%;">Valuation Allowance 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;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%;">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> 2 2 0.76 0.24 2400000 800000 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:700;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: 1) permitting net operating loss carrybacks to offset 100% of taxable income for taxable years beginning before 2021, 2) accelerating alternative minimum tax credit refunds, 3) temporarily increasing the allowable business interest deduction from 30% to 50% of adjusted taxable income, and 4) 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;text-align:justify;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:700;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 on January 1, 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 of this standard 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 on January 1, 2020 using a prospective approach. The adoption of this standard 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 </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%;">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 on January 1, 2020. Adoption of this standard 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 on January 1, 2020. Adoption of this standard had no impact on our unaudited condensed consolidated financial statements and related disclosures.</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:700;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> 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="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:99.853%;"><tr><td style="width:1.0%;"/><td style="width:26.111%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:9.127%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.824%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.713%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.824%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.127%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.127%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.152%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.399%;"/><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:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended March 31, 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 March 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;"><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);"><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);"/></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: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);">5,100 </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);">5,100 </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: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: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);">7,988 </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);">7,988 </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);">5,774 </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,796 </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,570 </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,099 </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,496 </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,595 </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);">10,874 </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);">3,796 </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,670 </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,087 </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);">5,496 </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);">15,583 </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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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);">2,999 </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);">2,226 </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,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;"/><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);">2,838 </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);">2,838 </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);">4,401 </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,570 </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);">5,971 </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);">2,230 </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);">5,496 </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);">7,726 </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);">3,474 </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,474 </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,019 </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);">5,019 </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);">10,874 </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);">3,796 </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,670 </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,087 </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);">5,496 </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);">15,583 </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 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%;">Contract Balances</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%;">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="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:60.719%;"/><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:15.982%;"/><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:15.985%;"/><td style="width:1.0%;"/><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;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);">March 31, 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><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);">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);">619 </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="2" style="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);"/></td><td style="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);"/></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,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><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);">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);">13,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="2" style="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);"/></td><td style="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);"/></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);">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><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;"/></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);">300 </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="2" style="background-color:#cceeff;text-align:right;vertical-align:top;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></td><td style="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);"/></td><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><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);">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);">8,536 </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="2" style="background-color:#ffffff;text-align:right;vertical-align:top;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></td><td style="background-color:#ffffff;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);"/></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);">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><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></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 months ended March 31, 2020 and 2019.</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%;">During the three months ended March 31, 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:12pt;"><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 months ended March 31, 2020 and 2019, we recognized the following revenues (in thousands):</span></div><div style="text-align:center;margin-top:12pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:61.304%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:15.982%;"/><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:15.984%;"/><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);">Three months ended March 31,</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;"><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: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: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 #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: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;"/></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);">     Performance obligations satisfied</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);">57 </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);">2,385 </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);">Changes in the period:</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;"/></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: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: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);">(643)</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);">136 </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: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);">15,256 </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);">13,062 </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);">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;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);">14,670 </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);">15,583 </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 style="text-align:center;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 March 31, 2020.</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%;">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:12pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:99.707%;"><tr><td style="width:1.0%;"/><td style="width:43.601%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:11.049%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.533%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:11.049%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.533%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:11.049%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.533%;"/><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:11.053%;"/><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;"><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;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);">66 </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);">364 </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,623 </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,053 </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);">5,776 </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);">707 </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);">— </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);">6,483 </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;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);">5,842 </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,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;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,623 </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 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;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);">8,536 </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="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="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:99.853%;"><tr><td style="width:1.0%;"/><td style="width:26.111%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:9.127%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.824%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.713%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.824%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.127%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:9.127%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.152%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:8.399%;"/><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:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended March 31, 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 March 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;"><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);"><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);"/></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: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);">5,100 </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);">5,100 </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: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: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);">7,988 </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);">7,988 </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);">5,774 </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,796 </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,570 </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,099 </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,496 </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,595 </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);">10,874 </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);">3,796 </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,670 </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,087 </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);">5,496 </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);">15,583 </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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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:#cceeff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:1pt;"/><td colspan="3" style="height:11pt;background-color:#cceeff;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);">2,999 </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);">2,226 </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,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;"/><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);">2,838 </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);">2,838 </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);">4,401 </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,570 </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);">5,971 </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);">2,230 </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);">5,496 </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);">7,726 </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);">3,474 </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,474 </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,019 </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);">5,019 </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);">10,874 </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);">3,796 </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,670 </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,087 </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);">5,496 </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);">15,583 </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> 5100000 5100000 7988000 7988000 5774000 3796000 9570000 2099000 5496000 7595000 10874000 3796000 14670000 10087000 5496000 15583000 2999000 2226000 5225000 2838000 2838000 4401000 1570000 5971000 2230000 5496000 7726000 3474000 3474000 5019000 5019000 10874000 3796000 14670000 10087000 5496000 15583000 <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%;">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="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:60.719%;"/><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:15.982%;"/><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:15.985%;"/><td style="width:1.0%;"/><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;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);">March 31, 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><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);">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);">619 </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="2" style="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);"/></td><td style="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);"/></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,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><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);">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);">13,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="2" style="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);"/></td><td style="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);"/></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);">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><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;"/></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);">300 </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="2" style="background-color:#cceeff;text-align:right;vertical-align:top;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></td><td style="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);"/></td><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><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);">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);">8,536 </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="2" style="background-color:#ffffff;text-align:right;vertical-align:top;padding-left:1pt;padding-right:0%;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"/></td><td style="background-color:#ffffff;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);"/></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);">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><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:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;">During the three months ended March 31, 2020 and 2019, we recognized the following revenues (in thousands):</span></div><div style="text-align:center;margin-top:12pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:61.304%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:15.982%;"/><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:15.984%;"/><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);">Three months ended March 31,</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;"><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: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: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 #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: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;"/></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);">     Performance obligations satisfied</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);">57 </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);">2,385 </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);">Changes in the period:</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;"/></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: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: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);">(643)</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);">136 </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: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);">15,256 </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);">13,062 </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);">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;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);">14,670 </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);">15,583 </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> 619000 1027000 13949000 10099000 300000 0 8536000 2044000 0 0 57000 2385000 -643000 136000 15256000 13062000 14670000 15583000 <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 March 31, 2020.</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%;">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:12pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:99.707%;"><tr><td style="width:1.0%;"/><td style="width:43.601%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:11.049%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.533%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:11.049%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.533%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:11.049%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.533%;"/><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:11.053%;"/><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;"><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;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);">66 </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);">364 </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,623 </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,053 </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);">5,776 </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);">707 </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);">— </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);">6,483 </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;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);">5,842 </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,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;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,623 </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 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;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);">8,536 </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> 66000 364000 1623000 2053000 5776000 707000 0 6483000 5842000 1071000 1623000 8536000 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: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 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-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:61.304%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:15.982%;"/><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:15.984%;"/><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: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="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 March 31,</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:#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><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);">Shares issuable under the Equity Incentive Plan</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;border-bottom:3pt double #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);">5,071 </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 #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;border-bottom:3pt double #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);">6,750 </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 #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="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div> The following shares were not included in the computation of diluted net loss per share (in thousands):<table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:61.304%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:15.982%;"/><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:15.984%;"/><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: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="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 March 31,</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:#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><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);">Shares issuable under the Equity Incentive Plan</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;border-bottom:3pt double #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);">5,071 </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 #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;border-bottom:3pt double #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);">6,750 </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 #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="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table> 5071000 6750000 5750000 38500000 2000000.0 2000000.0 0 0 900000 1000000.0 15000000.0 900000 25000 100000 0 P5Y 1800000 5300000 2000000.0 2000000.0 14000000.0 4000000.0 1000000.0 4000000.0 1000000.0 4000000.0 1000000.0 0 1300000 0 0 13000 3000000.0 85000000.0 250000000.0 1000000000.0 1200000 600000 1600000 1200000 500000 P30D 1500000 2800000 100000 0 0 P20M 5000000.0 4000000.0 5000000.0 8000000.0 P20M 2400000 P45D P60D 700000 8500000 22300000 100000000.0 2200000 6400000 Cash Equivalents<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 equivalents at March 31, 2020 and December 31, 2019 consisted of the following (in thousands):</span></div><div style="margin-top:12pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:99.561%;"><tr><td style="width:1.0%;"/><td style="width:44.696%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:10.775%;"/><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:10.775%;"/><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:10.775%;"/><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:10.777%;"/><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="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);">March 31, 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: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><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);">68,460 </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);">68,460 </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;"><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>As of March 31, 2020, the total cash and cash equivalents balance of $87.3 million was comprised of money market funds of $68.5 million and cash of $18.8 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. <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 equivalents at March 31, 2020 and December 31, 2019 consisted of the following (in thousands):</span></div><div style="margin-top:12pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:99.561%;"><tr><td style="width:1.0%;"/><td style="width:44.696%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:10.775%;"/><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:10.775%;"/><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:10.775%;"/><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:10.777%;"/><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="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);">March 31, 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: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><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);">68,460 </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);">68,460 </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;"><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> 68460000 68460000 71248000 71248000 87300000 68500000 18800000 90500000 71200000 19300000 Fair Value Measurements<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 following tables present the financial instruments that were measured at fair value on a recurring basis at March 31, 2020 and December 31, 2019 by level within the fair value hierarchy (in thousands):</span></div><div style="margin-top:12pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:99.853%;"><tr><td style="width:1.0%;"/><td style="width:44.852%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.741%;"/><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:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">March 31, 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);">68,460 </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);">68,460 </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><span><br/></span></div><div style="margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:99.853%;"><tr><td style="width:1.0%;"/><td style="width:44.852%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.741%;"/><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: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><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><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: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 present the financial instruments that were measured at fair value on a recurring basis at March 31, 2020 and December 31, 2019 by level within the fair value hierarchy (in thousands):</span></div><div style="margin-top:12pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:99.853%;"><tr><td style="width:1.0%;"/><td style="width:44.852%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.741%;"/><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:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">March 31, 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);">68,460 </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);">68,460 </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><span><br/></span></div><div style="margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:99.853%;"><tr><td style="width:1.0%;"/><td style="width:44.852%;"/><td style="width:1.0%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.737%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.532%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:10.741%;"/><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: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><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><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> 68460000 68460000 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: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%;">Inventories consisted of the following (in thousands):</span></div><div style="margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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="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);">March 31, 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);">104 </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);">8 </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);">589 </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);">701 </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 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%;">Property and Equipment, net</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%;">Property and equipment, net consisted of the following (in thousands):</span></div><div style="text-align:center;margin-bottom:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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="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);">March 31, 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,323 </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,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><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,098 </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,329 </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);">467 </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,021 </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,374)</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;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:#ffffff;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);">6,647 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;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:#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;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:#ffffff;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);">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;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="text-indent:13.5pt;margin-top:9pt;margin-bottom:9pt;"><span><br/></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-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 March 31, 2020 and December 31, 2019.</span></div><div style="text-indent:13.5pt;margin-top:20pt;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%;">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;margin-bottom:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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="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);">March 31, 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);">5,654 </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);">3,111 </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);">158 </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;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:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;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);">8,923 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;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:#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;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:#ffffff;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);">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;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="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%;">Inventories consisted of the following (in thousands):</span></div><div style="margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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="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);">March 31, 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);">104 </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);">8 </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);">589 </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);">701 </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> 104000 7000 8000 26000 589000 338000 701000 371000 <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%;">Property and equipment, net consisted of the following (in thousands):</span></div><div style="text-align:center;margin-bottom:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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="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);">March 31, 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,323 </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,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><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,098 </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,329 </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);">467 </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,021 </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,374)</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;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:#ffffff;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);">6,647 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;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:#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;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:#ffffff;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);">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;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> 24323000 23561000 10804000 10804000 3098000 3016000 1329000 1461000 467000 691000 40021000 39533000 33374000 33251000 6647000 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;margin-bottom:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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="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);">March 31, 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);">5,654 </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);">3,111 </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);">158 </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;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:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;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);">8,923 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:right;vertical-align:bottom;border-top:1pt solid #000;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:#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;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:#ffffff;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);">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;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> 5654000 4386000 3111000 1802000 158000 352000 8923000 8923000 6540000 7897144 14000000 8100000 1 0.85 0.10 1.10 P10Y P4Y 0.25 0.75 0.25 2 0.50 0.50 0 1 0.84 0.50 0.50 1.18 0.50 0.50 <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%;">Stock-based compensation expense is included in the unaudited condensed consolidated statements of operations as follows (in thousands):</span></div><div style="margin-bottom:12pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:59.988%;"/><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.274%;"/><td style="width:1.0%;"/><td style="width:0.1%;"/><td style="width:0.534%;"/><td style="width:0.1%;"/><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="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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended March 31,</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="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:8pt;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:8pt;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="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);">424 </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);">388 </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 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: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: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,745 </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,675 </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="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);">2,169 </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);">2,063 </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 colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/></tr></table></div> 424000 388000 1745000 1675000 2169000 2063000 <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%;">The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations for the three months ended March 31, 2020 and 2019 (in thousands):</span></div><div style="margin-top:9pt;margin-bottom:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:60.426%;"/><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.823%;"/><td style="width:0.1%;"/><td style="width:1.0%;"/><td style="width:16.277%;"/><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: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="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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended March 31,</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:8pt;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:8pt;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);">541 </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);">554 </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: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);">599 </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);">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><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);">331 </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);">391 </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: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);">698 </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);">657 </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);">2,169 </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);">2,063 </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> 541000 554000 599000 461000 331000 391000 698000 657000 2169000 2063000 4700000 2400000 1200000 2000000.0 Capital StockExercise of OptionsFor the three months ended March 31, 2020 and March 31, 2019, 5,333 and 218,572 shares, respectively, were issued upon option exercises at a weighted-average exercise price of $7.31 and $3.55 per share, respectively, with net cash proceeds of $39.0 thousand and $0.8 million, respectively. 5333 218572 7.31 3.55 39000.0 800000 77300 4 28200 37900 11200 29900 26500 3400 P5Y 200000 200000 0 0 1100000 1100000 400000 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="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:60.134%;"/><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: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.278%;"/><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:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended March 31,</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="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);">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;"/></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);">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: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);">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></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);">— </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 </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);">54 </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 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);">58 </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,068 </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,178 </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);">31 </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></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);">(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;"/><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);">(211)</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;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:#ffffff;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,098 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;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:#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;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:#ffffff;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,025 </span></td><td style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;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="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 March 31, 2020 was as follows:</span></div><div style="margin-top:9pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:60.280%;"/><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:16.274%;"/><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:16.278%;"/><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;"><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="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 style="font-size:10pt;font-weight: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;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><td colspan="3" style="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);"><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;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);">Finance 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;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight: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);">7.4 years</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="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);">0.1 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;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;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);">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><td colspan="2" style="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);"/></td><td style="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);"/></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.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></table></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%;">Cash paid for amounts included in the measurement of lease obligations was as follows (in thousands):</span></div><div style="margin-top:9pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:60.280%;"/><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:16.274%;"/><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:16.278%;"/><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:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended March 31,</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: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);">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);">354 </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="2" style="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);"/></td><td style="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);"/></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);">812 </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="2" style="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);"/></td><td style="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);"/></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);">5 </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);">51 </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="2" style="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);"/></td><td style="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);"/></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);">59 </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> 54000 54000 0 4000 54000 58000 1068000 1178000 31000 0 55000 211000 1098000 1025000 P7Y4M24D P0Y1M6D 0.066 0.050 354000 812000 0 5000 51000 59000 <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%;">As of March 31, 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;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:60.134%;"/><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: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.278%;"/><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: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:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Finance Leases</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);">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 9 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);">9 </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,462 </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);">— </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);">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);">— </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,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);">— </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);">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);">— </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,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);">— </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);">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);">9 </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);">33,753 </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);">— </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);">(7,619)</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);">9 </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);">26,134 </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;"/><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;"><span style="background-color: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 March 31, 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;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:60.134%;"/><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: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.278%;"/><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: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:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Finance Leases</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);">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 9 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);">9 </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,462 </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);">— </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);">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);">— </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,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);">— </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);">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);">— </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,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);">— </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);">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);">9 </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);">33,753 </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);">— </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);">(7,619)</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);">9 </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);">26,134 </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;"/><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> 9000 2462000 0 4197000 0 4285000 0 4589000 0 4726000 0 13494000 9000 33753000 0 7619000 9000 26134000 <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-bottom:12pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:60.134%;"/><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: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.278%;"/><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="2" 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:0%;"><span 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 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);">847 </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="2" style="padding-top:2px;padding-bottom:2px;background-color:#ffffff;text-align:left;vertical-align:bottom;padding-left:1pt;padding-right:0%;"><span 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 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,084 </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);">Total other commitments</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 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 #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;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);">5,931 </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 #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> 847000 5084000 5931000 10000000.0 5000000.0 0.80 0.0360 0.0100 0.0500 0 600000 Related Party Transactions<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%;">AstraZeneca PLC</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%;">Pam P. Cheng, a member of our board of directors, 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 $0.1 million and nominal revenue in the three months ended March 31, 2020, and 2019, respectively, from transactions with AstraZeneca PLC and its controlled purchasing agents and contract manufacturers. At March 31, 2020 and December 31, 2019, we had $0.1 million and $0.3 million of receivables from AstraZeneca PLC and its controlled purchasing agents and contract manufacturers, respectively.</span></div> 100000 0 100000 300000 Segment, Geographical and Other Revenue Information<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 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 our 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><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%;">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><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%;">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 </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%;">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;"><span style="background-color: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 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:9pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended March 31, 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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended March 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:#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 #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: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:#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: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:#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 #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: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:#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: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: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 #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: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);">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);">5,100 </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);">5,100 </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);">7,988 </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);">7,988 </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: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="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,774 </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,796 </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,570 </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,099 </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,496 </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,595 </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 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);">10,874 </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);">3,796 </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,670 </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,087 </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);">5,496 </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);">15,583 </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:10pt;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:10pt;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);">2,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><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);">2,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><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);">4,391 </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);">4,391 </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:10pt;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.5pt;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);">5,696 </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,925 </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,621 </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,442 </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,317 </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,759 </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:10pt;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.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);">2,345 </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);">591 </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,936 </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,101 </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);">517 </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,618 </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);">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);">10,582 </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);">5,516 </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);">16,098 </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,934 </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,834 </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);">14,768 </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);">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);">292 </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,720)</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 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,428)</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: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);">(847)</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,662 </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 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);">815 </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;"><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%;">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.5pt;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,727)</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);">(5,575)</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:10pt;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);">(492)</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);">(373)</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);">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;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);">(7,647)</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 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;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);">(5,133)</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="padding-left:9pt;margin-top:3pt;"><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:8pt;font-weight:400;line-height:120%;">Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.</span></div><div style="padding-left: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;">(2) </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;">Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses. </span></div><div style="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%;">The following table provides stock-based compensation expense included in loss from operations (in thousands):</span></div><div style="margin-top:9pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended March 31,</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: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="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="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: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;"/><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: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:right;vertical-align:bottom;border-top:1pt solid #000;padding-right: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);">756 </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: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="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: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:right;vertical-align:bottom;border-top:1pt solid #000;padding-right: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);">241 </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: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="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: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:right;vertical-align:bottom;border-top:1pt solid #000;padding-right: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);">1,172 </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: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="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: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:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right: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);">2,169 </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: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="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);">636 </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="2" style="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);"/></td><td style="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);"/></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);">141 </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);">1,286 </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: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:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right: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);">2,063 </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:9pt;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 #000;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 #000;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 #000;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 #000;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 #000;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 #000;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 #000;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 #000;padding-left:1pt;padding-right:1pt;"/></tr></table></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: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:9pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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%;"/><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;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);">Three Months Ended March 31,</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:8pt;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:8pt;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="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);">24 </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);">41 </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:bottom;padding-left:1pt;padding-right:1pt;"><span 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);">19 </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="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="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 </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="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="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;"/><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);">35 </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></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%;">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-align:center;margin-top:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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="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:8pt;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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">March 31, 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: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);">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);">47 </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 D</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;"/><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></table></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;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%;">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="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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%;"/><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="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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended March 31,</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:8pt;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:8pt;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 #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="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);">5,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 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,838 </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);">5,971 </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,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><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);">3,474 </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,019 </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;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);">14,670 </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);">15,583 </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="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%;">Identifiable long-lived assets by location was as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">March 31, 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="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:0%;"><span 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: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><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 #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;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);">6,647 </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 #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;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 #000;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);">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;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="margin-bottom:9pt;"><span><br/></span></div><div><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%;">Identifiable goodwill was as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-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="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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">March 31, 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: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><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: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:rgb(255,255,255, 0.0);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: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: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: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: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: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: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:rgb(255,255,255, 0.0);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: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: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: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: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="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:0%;"><span 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 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><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 #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;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);">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;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 #000;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 #000;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);">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;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);">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;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 #000;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 #000;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);">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;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 #000;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 #000;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);">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;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);">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;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-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 our 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 2 <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 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:9pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended March 31, 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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended March 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:#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 #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: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:#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: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:#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 #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: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:#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: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: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 #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: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);">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);">5,100 </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);">5,100 </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);">7,988 </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);">7,988 </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: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="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,774 </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,796 </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,570 </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,099 </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,496 </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,595 </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 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);">10,874 </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);">3,796 </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,670 </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,087 </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);">5,496 </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);">15,583 </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:10pt;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:10pt;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);">2,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><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);">2,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><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);">4,391 </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);">4,391 </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:10pt;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.5pt;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);">5,696 </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,925 </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,621 </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,442 </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,317 </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,759 </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:10pt;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.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);">2,345 </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);">591 </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,936 </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,101 </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);">517 </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,618 </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);">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);">10,582 </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);">5,516 </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);">16,098 </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,934 </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,834 </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);">14,768 </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);">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);">292 </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,720)</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 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,428)</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: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);">(847)</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,662 </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 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);">815 </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;"><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%;">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.5pt;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,727)</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);">(5,575)</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:10pt;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);">(492)</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);">(373)</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);">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;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);">(7,647)</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 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;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);">(5,133)</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="padding-left:9pt;margin-top:3pt;"><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:8pt;font-weight:400;line-height:120%;">Research and development expenses and Selling, general and administrative expenses exclude depreciation and amortization of finance leases.</span></div><div style="padding-left: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;">(2) </sup><span style="background-color:rgb(255,255,255, 0.0);color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%;">Corporate costs include unallocated selling, general and administrative expense, interest income, and other income and expenses. </span></div><div style="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%;">The following table provides stock-based compensation expense included in loss from operations (in thousands):</span></div><div style="margin-top:9pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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:9pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended March 31,</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: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="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="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: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;"/><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: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:right;vertical-align:bottom;border-top:1pt solid #000;padding-right: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);">756 </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: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="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: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:right;vertical-align:bottom;border-top:1pt solid #000;padding-right: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);">241 </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: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="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: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:right;vertical-align:bottom;border-top:1pt solid #000;padding-right: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);">1,172 </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: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="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: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:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right: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);">2,169 </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: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="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);">636 </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="2" style="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);"/></td><td style="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);"/></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);">141 </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);">1,286 </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: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:right;vertical-align:bottom;border-top:1pt solid #000000;padding-right: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);">2,063 </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:9pt;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 #000;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 #000;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 #000;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 #000;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 #000;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 #000;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 #000;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 #000;padding-left:1pt;padding-right:1pt;"/></tr></table></div> 5100000 5100000 7988000 7988000 5774000 3796000 9570000 2099000 5496000 7595000 10874000 3796000 14670000 10087000 5496000 15583000 2541000 2541000 4391000 4391000 5696000 4925000 10621000 4442000 3317000 7759000 2345000 591000 2936000 2101000 517000 2618000 10582000 5516000 16098000 10934000 3834000 14768000 292000 -1720000 -1428000 -847000 1662000 815000 -5727000 -5575000 492000 373000 -7647000 -5133000 756000 241000 1172000 2169000 636000 141000 1286000 2063000 <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:9pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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%;"/><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;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);">Three Months Ended March 31,</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:8pt;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:8pt;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="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);">24 </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);">41 </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:bottom;padding-left:1pt;padding-right:1pt;"><span 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);">19 </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="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="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 </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="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="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;"/><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);">35 </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></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%;">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-align:center;margin-top:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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="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:8pt;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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">March 31, 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: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);">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);">47 </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 D</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;"/><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></table></div>* Percentage was less than 10% 0.24 0.41 0.19 0 0.15 0 0.11 0.35 0.47 0.38 0 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="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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%;"/><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="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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three Months Ended March 31,</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:8pt;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:8pt;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 #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="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);">5,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 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,838 </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);">5,971 </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,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><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);">3,474 </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,019 </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;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);">14,670 </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);">15,583 </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> 5225000 2838000 5971000 7726000 3474000 5019000 14670000 15583000 <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%;">Identifiable long-lived assets by location was as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">March 31, 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="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:18pt;padding-right:0%;"><span 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: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><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 #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;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);">6,647 </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 #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;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 #000;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);">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;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> 6647000 6282000 <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%;">Identifiable goodwill was as follows (in thousands):</span></div><div style="margin-top:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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;"><span style="font-size:10pt;font-weight:400;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);"><span style="font-size:10pt;font-weight:400;font-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="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:8pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">March 31, 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: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><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: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:rgb(255,255,255, 0.0);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: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: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: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: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: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: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:rgb(255,255,255, 0.0);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: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: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: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: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="2" style="padding-top:2px;padding-bottom:2px;background-color:#cceeff;text-align:left;vertical-align:top;padding-left:1pt;padding-right:0%;"><span 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 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><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 #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;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);">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;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 #000;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 #000;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);">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;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);">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;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 #000;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 #000;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);">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;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 #000;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 #000;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);">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;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);">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;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> 2463000 778000 3241000 2463000 778000 3241000 Allowance for Credit Losses<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%;">An analysis of the allowance for credit losses is as follows (in thousands):</span></div><div style="margin-top:9pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:75.777%;"/><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:16.277%;"/><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;"><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="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:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended March 31, 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 March 31, 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><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%;">The following tables below summarizes accounts receivable by aging category (in thousands):</span></div><div style="margin-top:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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);">March 31, 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: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: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: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: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: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: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: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: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: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: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;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 #000;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);">745 </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 #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="2" style="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);"/></td><td style="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);"/></td><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 #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;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 #000;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="2" style="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);"/></td><td style="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);"/></td><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 #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;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);">40 </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 #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="2" style="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);"/></td><td style="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);"/></td><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 #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;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);">785 </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 #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;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 #000;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);">7,599 </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 #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="2" style="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);"/></td><td style="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);"/></td><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 #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;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);">8,384 </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 #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="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><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:9pt;"><span><br/></span></div><div><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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: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: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: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: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: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: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: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: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%;">An analysis of the allowance for credit losses is as follows (in thousands):</span></div><div style="margin-top:9pt;margin-bottom:6pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;width:100.000%;"><tr><td style="width:1.0%;"/><td style="width:75.777%;"/><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:16.277%;"/><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;"><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="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:10pt;font-weight:700;font-family:'Times New Roman',sans-serif;color:#000000;background-color:rgb(255,255,255, 0.0);">Three months ended March 31, 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 March 31, 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="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 tables below summarizes accounts receivable by aging category (in thousands):</span></div><div style="margin-top:9pt;"><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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);">March 31, 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: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: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: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: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: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: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: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: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: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: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;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 #000;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);">745 </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 #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="2" style="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);"/></td><td style="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);"/></td><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 #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;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 #000;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="2" style="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);"/></td><td style="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);"/></td><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 #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;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);">40 </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 #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="2" style="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);"/></td><td style="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);"/></td><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 #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;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);">785 </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 #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;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 #000;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);">7,599 </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 #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="2" style="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);"/></td><td style="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);"/></td><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 #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;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);">8,384 </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 #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="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><td colspan="3" style="display:none;"/><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:9pt;"><span><br/></span></div><div><table style="margin-left:auto;margin-right:auto;border-collapse:collapse;text-align:left;text-indent:0pt;display:inline-table;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: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: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: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: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: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: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: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> 745000 0 40000 785000 7599000 8384000 185000 7000 65000 257000 8806000 9063000 Subsequent Events <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%;">Achievement of milestone under 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:115%;">In April 2020, we achieved a technology transfer milestone associated with 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: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%;"> Agreement. We are entitled to receive $4.0 million within 60 days of achievement of the technology transfer milestone.</span></div> 4000000.0 P60D XML 14 R42.htm IDEA: XBRL DOCUMENT v3.20.1
Balance Sheets Details - Property and Equipment, net (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Property, Plant and Equipment [Line Items]    
Property and equipment $ 40,021 $ 39,533
Less: accumulated depreciation and amortization (33,374) (33,251)
Property and equipment, net 6,647 6,282
Laboratory equipment [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment 24,323 23,561
Leasehold improvements [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment 10,804 10,804
Computer equipment and software [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment 3,098 3,016
Office equipment and furniture [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment 1,329 1,461
Construction in progress [Member]    
Property, Plant and Equipment [Line Items]    
Property and equipment $ 467 $ 691
XML 15 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 16 R46.htm IDEA: XBRL DOCUMENT v3.20.1
Stock-based Compensation - Stock-based Compensation Expense (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Schedule of stock-based compensation expense    
Stock-based compensation $ 2,169 $ 2,063
Stock options [Member]    
Schedule of stock-based compensation expense    
Stock-based compensation 541 554
RSAs and RSUs [Member]    
Schedule of stock-based compensation expense    
Stock-based compensation 599 461
Performance Stock Units (PSUs) [Member]    
Schedule of stock-based compensation expense    
Stock-based compensation 331 391
Performance Based Options (PBOs) [Member]    
Schedule of stock-based compensation expense    
Stock-based compensation 698 657
Research and development [Member]    
Schedule of stock-based compensation expense    
Stock-based compensation 424 388
Selling, General and Administrative Expenses [Member]    
Schedule of stock-based compensation expense    
Stock-based compensation $ 1,745 $ 1,675
XML 17 R27.htm IDEA: XBRL DOCUMENT v3.20.1
Segment, Geographical and Other Revenue Information (Tables)
3 Months Ended
Mar. 31, 2020
Segment Reporting [Abstract]  
Schedule of segment reporting
The following table provides financial information by our reportable business segments along with a reconciliation to consolidated loss before income taxes (in thousands):
Three months ended March 31, 2020Three months ended March 31, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Revenues:
Product revenue$5,100  $—  $5,100  $7,988  $—  $7,988  
Research and development revenue5,774  3,796  9,570  2,099  5,496  7,595  
Total revenues10,874  3,796  14,670  10,087  5,496  15,583  
Costs and operating expenses:
Cost of product revenue2,541  —  2,541  4,391  —  4,391  
Research and development(1)
5,696  4,925  10,621  4,442  3,317  7,759  
Selling, general and administrative(1)
2,345  591  2,936  2,101  517  2,618  
Total segment costs and operating expenses10,582  5,516  16,098  10,934  3,834  14,768  
Income (loss) from operations$292  $(1,720) (1,428) $(847) $1,662  815  
Corporate costs (2)
(5,727) (5,575) 
Depreciation and amortization(492) (373) 
Loss before income taxes$(7,647) $(5,133) 
(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 table provides stock-based compensation expense included in loss from operations (in thousands):
Three months ended March 31,
20202019
Performance EnzymesNovel BiotherapeuticsCorporate costTotalPerformance EnzymesNovel BiotherapeuticsCorporate costTotal
Stock-based compensation$756  $241  $1,172  $2,169  $636  $141  $1,286  $2,063  
Schedule of customers that contributed 10% or more of total accounts receivable
Customers that each accounted for 10% or more of our total revenues were as follows:
Three Months Ended March 31,
20202019
Customer A24 %41 %
Customer B19 %— %
Customer C15 %— %
Customer D11 %35 %
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
March 31, 2020December 31, 2019
Customer A47 %38 %
Customer D— %10 %
* 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 March 31,
20202019
Revenues
Americas$5,225  $2,838  
EMEA5,971  7,726  
APAC3,474  5,019  
Total revenues$14,670  $15,583  
Schedule of long-lived assets by geographical area
Identifiable long-lived assets by location was as follows (in thousands):
Long-lived assetsMarch 31, 2020December 31, 2019
United States  $6,647  $6,282  
Schedule of intangible assets and goodwill
Identifiable goodwill was as follows (in thousands):
March 31, 2020December 31, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Goodwill  $2,463  $778  $3,241  $2,463  $778  $3,241  
XML 18 R23.htm IDEA: XBRL DOCUMENT v3.20.1
Fair Value Measurements (Tables)
3 Months Ended
Mar. 31, 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 March 31, 2020 and December 31, 2019 by level within the fair value hierarchy (in thousands):
 March 31, 2020
 Level 1Level 2Level 3Total
Money market funds $68,460  $—  $—  $68,460  

 December 31, 2019
 Level 1Level 2Level 3Total
Money market funds$71,248  $—  $—  $71,248  
XML 19 R1.htm IDEA: XBRL DOCUMENT v3.20.1
Cover Page - shares
3 Months Ended
Mar. 31, 2020
Apr. 30, 2020
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Mar. 31, 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,018,437
Entity Central Index Key 0001200375  
Amendment Flag false  
Document Fiscal Year Focus 2020  
Document Fiscal Period Focus Q1  
Current Fiscal Year End Date --12-31  
XML 20 R5.htm IDEA: XBRL DOCUMENT v3.20.1
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) 218,572 219,000    
Exercise of stock options $ 776   776  
Release of stock awards (shares)   402,000    
Employee stock-based compensation 2,063   2,063  
Taxes paid related to net share settlement of equity awards (in shares)   (145,000)    
Taxes paid related to net share settlement of equity awards (2,799)   (2,799)  
Net loss (5,136)     (5,136)
Ending balance (shares) at Mar. 31, 2019   54,541,000    
Ending balance at Mar. 31, 2019 51,210 $ 5 386,815 (335,610)
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) 5,333 5,000    
Exercise of stock options $ 39   39  
Release of stock awards (shares)   219,000    
Employee stock-based compensation 2,169 $ (84) 2,169  
Taxes paid related to net share settlement of equity awards (1,007)   (1,007)  
Net loss (7,652)     (7,652)
Ending balance (shares) at Mar. 31, 2020   59,017,000    
Ending balance at Mar. 31, 2020 $ 99,066 $ 6 $ 449,121 $ (350,061)
XML 22 R9.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue Recognition
3 Months Ended
Mar. 31, 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 March 31, 2020Three months ended March 31, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Major products and service:
       Product Revenue$5,100  $—  $5,100  $7,988  $—  $7,988  
Research and development revenue5,774  3,796  9,570  2,099  5,496  7,595  
Total revenues$10,874  $3,796  $14,670  $10,087  $5,496  $15,583  
Primary geographical markets:
Americas
$2,999  $2,226  $5,225  $2,838  $—  $2,838  
EMEA
4,401  1,570  5,971  2,230  5,496  7,726  
APAC
3,474  —  3,474  5,019  —  5,019  
Total revenues$10,874  $3,796  $14,670  $10,087  $5,496  $15,583  

Contract Balances
The following table presents balances of contract assets, unbilled receivables, contract costs, and contract liabilities (in thousands):
March 31, 2020December 31, 2019
Contract Assets$619  $1,027  
Unbilled receivables$13,949  $10,099  
Contract Costs$300  $—  
Contract Liabilities: Deferred Revenue$8,536  $2,044  


We had no asset impairment charges related to contract assets in the three months ended March 31, 2020 and 2019.
During the three months ended March 31, 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 months ended March 31, 2020 and 2019, we recognized the following revenues (in thousands):
Three months ended March 31,
20202019
Amounts included in contract liabilities at the beginning of the period:
     Performance obligations satisfied$57  $2,385  
Changes in the period:
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods(643) 136  
Performance obligations satisfied from new activities in the period - contract revenue15,256  13,062  
Total revenues$14,670  $15,583  

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 March 31, 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$66  $364  $1,623  $2,053  
Research and development revenue5,776  707  —  6,483  
Total revenues$5,842  $1,071  $1,623  $8,536  
XML 24 R32.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue Recognition - Contracts with Customer (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Revenue from Contract with Customer [Abstract]    
Contract assets $ 619 $ 1,027
Unbilled Contracts Receivable 13,949 10,099
Contract Costs 300 0
Contract Liabilities: Deferred Revenue $ 8,536 $ 2,044
XML 25 R36.htm IDEA: XBRL DOCUMENT v3.20.1
Net loss per Share - Anti-Dilutive Securities (Details) - shares
shares in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Shares of common stock issuable pursuant to equity awards outstanding 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,071 6,750
XML 26 R19.htm IDEA: XBRL DOCUMENT v3.20.1
Basis of Presentation and Summary of Significant Accounting Policies (Policies)
3 Months Ended
Mar. 31, 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 months ended March 31, 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 March 31, 2020, results of our operations for the three
months ended March 31, 2020 and 2019, changes in stockholders' equity for the three months ended March 31, 2020 and 2019, and cash flows for the three months ended March 31, 2020 and 2019. The interim results are not necessarily indicative of the results for any future interim periods or for the entire year. The results of the three months ended March 31, 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 a 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 Allowances
We currently sell 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:
Valuation Allowance 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 months ended March 31, 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.
Valuation Allowance 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.
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.
Segment 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 our 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: 1) permitting net operating loss carrybacks to offset 100% of taxable income for taxable years beginning before 2021, 2) accelerating alternative minimum tax credit refunds, 3) temporarily increasing the allowable business interest deduction from 30% to 50% of adjusted taxable income, and 4) 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.
Recently Adopted and Issued 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 on January 1, 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 of this standard 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 on January 1, 2020 using a prospective approach. The adoption of this standard 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 on January 1, 2020. Adoption of this standard 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 on January 1, 2020. Adoption of this standard 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.
JSON 27 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "cdxs-20200331.htm": { "axisCustom": 2, "axisStandard": 29, "contextCount": 246, "dts": { "calculationLink": { "local": [ "cdxs-20200331_cal.xml" ] }, "definitionLink": { "local": [ "cdxs-20200331_def.xml" ], "remote": [ "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-eedm-def-2019-01-31.xml", "http://xbrl.fasb.org/srt/2019/elts/srt-eedm1-def-2019-01-31.xml" ] }, "inline": { "local": [ "cdxs-20200331.htm" ] }, "labelLink": { "local": [ "cdxs-20200331_lab.xml" ], "remote": [ "https://xbrl.sec.gov/dei/2019/dei-doc-2019-01-31.xml", "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-doc-2019-01-31.xml" ] }, "presentationLink": { "local": [ "cdxs-20200331_pre.xml" ] }, "referenceLink": { "remote": [ "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-ref-2019-01-31.xml", "https://xbrl.sec.gov/dei/2019/dei-ref-2019-01-31.xml" ] }, "schema": { "local": [ "cdxs-20200331.xsd" ], "remote": [ "http://xbrl.fasb.org/srt/2019/elts/srt-2019-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/2019/elts/srt-types-2019-01-31.xsd", "http://xbrl.fasb.org/us-gaap/2019/elts/us-gaap-2019-01-31.xsd", "http://xbrl.fasb.org/us-gaap/2019/elts/us-roles-2019-01-31.xsd", "http://xbrl.fasb.org/srt/2019/elts/srt-roles-2019-01-31.xsd", "https://xbrl.sec.gov/country/2017/country-2017-01-31.xsd", "http://xbrl.fasb.org/us-gaap/2019/elts/us-types-2019-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/2019/elts/us-parts-codification-2019-01-31.xsd" ] } }, "elementCount": 494, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2019-01-31": 13, "http://xbrl.sec.gov/dei/2019-01-31": 5, "total": 18 }, "keyCustom": 26, "keyStandard": 306, "memberCustom": 50, "memberStandard": 40, "nsprefix": "cdxs", "nsuri": "http://www.codexis.com/20200331", "report": { "R1": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "cdxs:CashEquivalentsandMarketableSecuritiesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2118106 - Disclosure - Cash Equivalents", "role": "http://www.codexis.com/role/CashEquivalents", "shortName": "Cash Equivalents", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "cdxs:CashEquivalentsandMarketableSecuritiesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueMeasurementInputsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2122107 - Disclosure - Fair Value Measurements", "role": "http://www.codexis.com/role/FairValueMeasurements", "shortName": "Fair Value Measurements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueMeasurementInputsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "cdxs:BalanceSheetsDetailsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2125108 - Disclosure - Balance Sheets Details", "role": "http://www.codexis.com/role/BalanceSheetsDetails", "shortName": "Balance Sheets Details", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "cdxs:BalanceSheetsDetailsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2135110 - Disclosure - Capital Stock", "role": "http://www.codexis.com/role/CapitalStock", "shortName": "Capital Stock", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2145112 - Disclosure - Related Party Transactions", "role": "http://www.codexis.com/role/RelatedPartyTransactions", "shortName": "Related Party Transactions", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RelatedPartyTransactionsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2147113 - 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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CreditLossFinancialInstrumentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2155114 - 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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CreditLossFinancialInstrumentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2159115 - Disclosure - Subsequent Events", "role": "http://www.codexis.com/role/SubsequentEvents", "shortName": "Subsequent Events", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "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-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "lang": null, "name": "us-gaap:RestrictedCash", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "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": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InvestmentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2319303 - Disclosure - Cash Equivalents (Tables)", "role": "http://www.codexis.com/role/CashEquivalentsTables", "shortName": "Cash Equivalents (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InvestmentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2323304 - 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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2326305 - 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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2332306 - Disclosure - Stock-based Compensation (Tables)", "role": "http://www.codexis.com/role/StockbasedCompensationTables", "shortName": "Stock-based Compensation (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeaseCostTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2338307 - Disclosure - Commitments and Contingencies (Tables)", "role": "http://www.codexis.com/role/CommitmentsandContingenciesTables", "shortName": "Commitments and Contingencies (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LeaseCostTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2348308 - 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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2356309 - 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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiability", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2402401 - Disclosure - Description of Business - Textual (Details)", "role": "http://www.codexis.com/role/DescriptionofBusinessTextualDetails", "shortName": "Description of Business - Textual (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "i48f2f490749b457ca9369c51f58aea4b_D20181201-20181231", "decimals": "-5", "lang": null, "name": "cdxs:RevenueRecognitionMilestonePaymentAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "us-gaap:PreferredStockParOrStatedValuePerShare", "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "INF", "first": true, "lang": null, "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": [ "us-gaap:PreferredStockParOrStatedValuePerShare", "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "span", "div", "us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "INF", "first": true, "lang": null, "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 - Textual (Details)", "role": "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails", "shortName": "Basis of Presentation and Summary of Significant Accounting Policies - Textual (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "us-gaap:GoodwillAndIntangibleAssetsGoodwillPolicy", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfReportingUnits", "reportCount": 1, "unique": true, "unitRef": "reportingunit", "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "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", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "i67c502820c6845379b94b33635c43604_D20200101-20200331", "decimals": "-3", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "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-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "lang": null, "name": "us-gaap:CapitalizedContractCostNetCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "us-gaap:ContractWithCustomerAssetCreditLossExpense", "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerAssetCreditLossExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2410405 - Disclosure - Revenue Recognition - Additional Information (Details)", "role": "http://www.codexis.com/role/RevenueRecognitionAdditionalInformationDetails", "shortName": "Revenue Recognition - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "us-gaap:ContractWithCustomerAssetCreditLossExpense", "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerAssetCreditLossExpense", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "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-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "i00c6d0a9174649b893e92da76af99651_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2415408 - Disclosure - Net loss per Share - Anti-Dilutive Securities (Details)", "role": "http://www.codexis.com/role/NetlossperShareAntiDilutiveSecuritiesDetails", "shortName": "Net loss per Share - Anti-Dilutive Securities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "i00c6d0a9174649b893e92da76af99651_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2417409 - Disclosure - Collaborative Arrangements - Textual (Details)", "role": "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "shortName": "Collaborative Arrangements - Textual (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "id5db3172b7c74c44aa5fcab8b8a76801_D20190101-20191231", "decimals": "-5", "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2420410 - Disclosure - Cash Equivalents - Components of Cash Equivalents (Details)", "role": "http://www.codexis.com/role/CashEquivalentsComponentsofCashEquivalentsDetails", "shortName": "Cash Equivalents - Components of Cash Equivalents (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R39": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2421411 - Disclosure - Cash Equivalents - Additional Information (Details)", "role": "http://www.codexis.com/role/CashEquivalentsAdditionalInformationDetails", "shortName": "Cash Equivalents - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "i4e1c0241d103472d8f3a7dadcfd67b0d_I20200331", "decimals": "-5", "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "lang": null, "name": "us-gaap:InvestmentIncomeInterest", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ibae0b04bfa2e4fee8f3268ecdfe77566_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2424412 - Disclosure - Fair Value Measurements - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (Details)", "role": "http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails", "shortName": "Fair Value Measurements - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "icf64d067d23c4a5ba0096e359927bfda_I20200331", "decimals": "-3", "lang": null, "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InventoryRawMaterials", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2427413 - 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-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InventoryRawMaterials", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2428414 - 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-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2429415 - Disclosure - Balance Sheets Details - Goodwill (Details)", "role": "http://www.codexis.com/role/BalanceSheetsDetailsGoodwillDetails", "shortName": "Balance Sheets Details - Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R44": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "cdxs:AccruedPurchaseReceivedNotYetBilled", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2430416 - Disclosure - Balance Sheets Details - Accrued Liabilities (Details)", "role": "http://www.codexis.com/role/BalanceSheetsDetailsAccruedLiabilitiesDetails", "shortName": "Balance Sheets Details - Accrued Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "cdxs:AccruedPurchaseReceivedNotYetBilled", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "i5e9cad3bfcd7482e8d12785f0b0521c0_D20190601-20190630", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2433417 - Disclosure - Stock-based Compensation - Textual (Details)", "role": "http://www.codexis.com/role/StockbasedCompensationTextualDetails", "shortName": "Stock-based Compensation - Textual (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "i5e9cad3bfcd7482e8d12785f0b0521c0_D20190601-20190630", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensation", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2434418 - 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", "td", "tr", "table", "div", "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "i0286147a9ca747fe975bae1e1ebe178e_D20200101-20200331", "decimals": "-3", "lang": null, "name": "us-gaap:ShareBasedCompensation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised", "reportCount": 1, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2436419 - Disclosure - Capital Stock - Textual (Details)", "role": "http://www.codexis.com/role/CapitalStockTextualDetails", "shortName": "Capital Stock - Textual (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "2", "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "INF", "first": true, "lang": null, "name": "cdxs:LeaseAreaSpaceOccupancy", "reportCount": 1, "unique": true, "unitRef": "sqft", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2439420 - 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", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "INF", "first": true, "lang": null, "name": "cdxs:LeaseAreaSpaceOccupancy", "reportCount": 1, "unique": true, "unitRef": "sqft", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2440421 - 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", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "iff3c6d3eb3e04dd99ff65f8a6471741f_I20181231", "decimals": "INF", "first": true, "lang": null, "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-20200331.htm", "contextRef": "iff3c6d3eb3e04dd99ff65f8a6471741f_I20181231", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:SharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LeaseCostTableTextBlock", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2441422 - 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", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeasePayments", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2442423 - 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", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:OperatingLeasePayments", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FinanceLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2443424 - 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", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:SupplyCommitmentTableTextBlock", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic229247248d14635ba233d72d1c6bc1f_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:SignificantSupplyCommitmentRemainingMinimumAmountCommitted", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2444425 - 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", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic229247248d14635ba233d72d1c6bc1f_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:SignificantSupplyCommitmentRemainingMinimumAmountCommitted", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:RevenueFromRelatedParties", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2446426 - Disclosure - Related Party Transactions - Textual (Details)", "role": "http://www.codexis.com/role/RelatedPartyTransactionsTextualDetails", "shortName": "Related Party Transactions - Textual (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:RevenueFromRelatedParties", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "span", "div", "us-gaap:SegmentReportingPolicyPolicyTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfOperatingSegments", "reportCount": 1, "unique": true, "unitRef": "segment", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2449427 - Disclosure - Segment, Geographical and Other Revenue Information - Additional Information (Details)", "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationAdditionalInformationDetails", "shortName": "Segment, Geographical and Other Revenue Information - Additional Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "us-gaap:SegmentReportingPolicyPolicyTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfOperatingSegments", "reportCount": 1, "unique": true, "unitRef": "segment", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2450428 - 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-20200331.htm", "contextRef": "if3f9edecf615498ea61d7756b5d26951_D20200101-20200331", "decimals": "-3", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "i834e21e7b5224b4a9691108d1435371d_D20200101-20200331", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2451429 - 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-20200331.htm", "contextRef": "i834e21e7b5224b4a9691108d1435371d_D20200101-20200331", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:ConcentrationRiskPercentage1", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2452430 - 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 }, "R59": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "i346131c1ea2b4eeb9b07d677e8d8b1af_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NoncurrentAssets", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2453431 - 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-20200331.htm", "contextRef": "i346131c1ea2b4eeb9b07d677e8d8b1af_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NoncurrentAssets", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "1005006 - 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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "lang": null, "name": "cdxs:LeaseRightofUseAssetAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2454432 - 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-20200331.htm", "contextRef": "ica726b92645149aeb0be490867e2b30c_I20200331", "decimals": "-3", "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "if6d27efe43ff433989ca2eb2ea99968c_I20191231", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllowanceForNotesAndLoansReceivableCurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2457433 - 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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": "-3", "lang": null, "name": "us-gaap:FinancingReceivableAllowanceForCreditLossesWriteOffs", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R62": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PastDueFinancingReceivablesTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinancingReceivableRecordedInvestmentPastDue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2458434 - 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-20200331.htm", "contextRef": "ieac3eacb0a6f48298d6b5b1c689e023c_I20200331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinancingReceivableRecordedInvestmentPastDue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R63": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "iec2315cc2d4d4f09afea482776caecc4_I20200430", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:BilledContractReceivables", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "2460435 - Disclosure - Subsequent Events - Textual (Details)", "role": "http://www.codexis.com/role/SubsequentEventsTextualDetails", "shortName": "Subsequent Events - Textual (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "iec2315cc2d4d4f09afea482776caecc4_I20200430", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:BilledContractReceivables", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NatureOfOperations", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "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-20200331.htm", "contextRef": "ic9ea1e28719c4cac8ec59261488a1401_D20200101-20200331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9999": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "id6c12ac82862439baffb159bbd388d6d_I20190331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RestrictedCashAndCashEquivalents", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "", "isDefault": "false", "longName": "Uncategorized Items - cdxs-20200331.htm", "role": "http://xbrl.sec.gov/role/uncategorizedFacts", "shortName": "Uncategorized Items - cdxs-20200331.htm", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "cdxs-20200331.htm", "contextRef": "id6c12ac82862439baffb159bbd388d6d_I20190331", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RestrictedCashAndCashEquivalents", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } } }, "segmentCount": 91, "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/20200331", "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/20200331", "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/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/20200331", "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/20200331", "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/20200331", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "cdxs_AccruedPurchaseReceivedNotYetBilled": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsAccruedLiabilitiesDetails": { "order": 1.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Accrued Purchase, Received Not Yet Billed", "label": "Accrued Purchase, Received Not Yet Billed", "terseLabel": "Accrued purchases" } } }, "localname": "AccruedPurchaseReceivedNotYetBilled", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsAccruedLiabilitiesDetails" ], "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/20200331", "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/20200331", "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "domainItemType" }, "cdxs_AreaOfSubleasedProperty": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Area of Subleased Property", "label": "Area of Subleased Property", "terseLabel": "Area of subleased property" } } }, "localname": "AreaOfSubleasedProperty", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "areaItemType" }, "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/20200331", "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/20200331", "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/20200331", "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/20200331", "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "xbrltype": "domainItemType" }, "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/20200331", "presentation": [ "http://www.codexis.com/role/CashEquivalentsComponentsofCashEquivalentsDetails" ], "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/20200331", "xbrltype": "stringItemType" }, "cdxs_CashEquivalentsandMarketableSecuritiesTextBlock": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Cash Equivalents and Marketable Securities [Text Block]", "label": "Cash Equivalents and Marketable Securities [Text Block]", "terseLabel": "Cash Equivalents" } } }, "localname": "CashEquivalentsandMarketableSecuritiesTextBlock", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/CashEquivalents" ], "xbrltype": "textBlockItemType" }, "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "durationItemType" }, "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/20200331", "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "domainItemType" }, "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/20200331", "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/20200331", "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/20200331", "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/20200331", "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/20200331", "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/20200331", "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/20200331", "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "domainItemType" }, "cdxs_IncreaseDecreaseInContractWithCustomerLiabilityUnbilledReceivables": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Increase (Decrease) In Contract with Customer, Liability, Unbilled Receivables", "label": "Increase (Decrease) In Contract with Customer, Liability, Unbilled Receivables", "terseLabel": "Unbilled receivables" } } }, "localname": "IncreaseDecreaseInContractWithCustomerLiabilityUnbilledReceivables", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "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/20200331", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "cdxs_LeaseAreaSpaceOccupancy": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Lease area space occupancy.", "label": "Lease Area Space Occupancy", "terseLabel": "Lease area space occupancy" } } }, "localname": "LeaseAreaSpaceOccupancy", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "areaItemType" }, "cdxs_LeaseRightofUseAssetAmortization": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 3.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/20200331", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "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/20200331", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "percentItemType" }, "cdxs_MerckMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Merck [Member]", "label": "Merck [Member]", "terseLabel": "Merck [Member]" } } }, "localname": "MerckMember", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "domainItemType" }, "cdxs_NovartisMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Novartis [Member]", "label": "Novartis [Member]", "terseLabel": "Novartis [Member]" } } }, "localname": "NovartisMember", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/SubsequentEventsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails", "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/20200331", "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/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "percentItemType" }, "cdxs_PerformanceBasedOptionsPBOsMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Performance Based Options (PBOs) [Member]", "label": "Performance Based Options (PBOs) [Member]", "terseLabel": "Performance Based Options (PBOs) [Member]" } } }, "localname": "PerformanceBasedOptionsPBOsMember", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails", "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]", "terseLabel": "Performance Stock Units (PSUs) [Member]" } } }, "localname": "PerformanceStockUnitsMember", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "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]", "terseLabel": "RSAs and RSUs [Member]" } } }, "localname": "RSAsandRSUsMember", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "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_RevenueImpactedByGovernmentIssuedShelterInPlace": { "auth_ref": [], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Revenue Impacted by Government Issued Shelter-in-Place", "label": "Revenue Impacted by Government Issued Shelter-in-Place", "terseLabel": "Revenue impacted by government issued shelter-in-place" } } }, "localname": "RevenueImpactedByGovernmentIssuedShelterInPlace", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "monetaryItemType" }, "cdxs_RevenuefromContractwithCustomerPaymentTerms": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Revenue from Contract with Customer, Payment Terms", "label": "Revenue from Contract with Customer, Payment Terms", "terseLabel": "Payment terms" } } }, "localname": "RevenuefromContractwithCustomerPaymentTerms", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/SubsequentEventsTextualDetails" ], "xbrltype": "durationItemType" }, "cdxs_RocheMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Roche", "label": "Roche [Member]", "terseLabel": "Roche [Member]" } } }, "localname": "RocheMember", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CashEquivalentsComponentsofCashEquivalentsDetails" ], "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/20200331", "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/20200331", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "domainItemType" }, "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/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "xbrltype": "domainItemType" }, "cdxs_TateLyleMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Tate & Lyle [Member]", "label": "Tate & Lyle [Member]", "terseLabel": "Tate & Lyle [Member]" } } }, "localname": "TateLyleMember", "nsuri": "http://www.codexis.com/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/20200331", "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "durationItemType" }, "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/20200331", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "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/2017-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": [ "r303" ], "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": [ "r304" ], "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": [ "r305" ], "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": [ "r305" ], "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": [ "r305" ], "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": [ "r306" ], "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": [ "r305" ], "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": [ "r305" ], "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": [ "r305" ], "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": [ "r305" ], "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": [ "r301" ], "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": [ "r302" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails" ], "xbrltype": "domainItemType" }, "srt_ConsolidationItemsAxis": { "auth_ref": [ "r105", "r113" ], "lang": { "en-US": { "role": { "label": "Consolidation Items [Axis]", "terseLabel": "Consolidation Items [Axis]" } } }, "localname": "ConsolidationItemsAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "stringItemType" }, "srt_ConsolidationItemsDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Consolidation Items [Domain]", "terseLabel": "Consolidation Items [Domain]" } } }, "localname": "ConsolidationItemsDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "srt_CounterpartyNameAxis": { "auth_ref": [ "r50", "r81" ], "lang": { "en-US": { "role": { "label": "Counterparty Name [Axis]", "terseLabel": "Counterparty Name [Axis]" } } }, "localname": "CounterpartyNameAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails", "http://www.codexis.com/role/SubsequentEventsTextualDetails" ], "xbrltype": "stringItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r118", "r192", "r197", "r292" ], "lang": { "en-US": { "role": { "label": "Customer [Axis]", "terseLabel": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "srt_MaximumMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Maximum [Member]", "terseLabel": "Maximum [Member]" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum [Member]" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Customer [Domain]", "terseLabel": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r115", "r192", "r195", "r289", "r290" ], "lang": { "en-US": { "role": { "label": "Product and Service [Axis]", "terseLabel": "Product and Service [Axis]" } } }, "localname": "ProductOrServiceAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "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": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Product and Service [Domain]", "terseLabel": "Product and Service [Domain]" } } }, "localname": "ProductsAndServicesDomain", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "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" }, "srt_RangeAxis": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Statistical Measurement [Axis]", "terseLabel": "Statistical Measurement [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Statistical Measurement [Domain]", "terseLabel": "Statistical Measurement [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "domainItemType" }, "srt_RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis": { "auth_ref": [ "r299" ], "lang": { "en-US": { "role": { "label": "Name of Property [Axis]", "terseLabel": "Name of Property [Axis]" } } }, "localname": "RealEstateAndAccumulatedDepreciationDescriptionOfPropertyAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "stringItemType" }, "srt_RealEstateAndAccumulatedDepreciationNameOfPropertyDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Name of Property [Domain]", "terseLabel": "Name of Property [Domain]" } } }, "localname": "RealEstateAndAccumulatedDepreciationNameOfPropertyDomain", "nsuri": "http://fasb.org/srt/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails", "http://www.codexis.com/role/SubsequentEventsTextualDetails" ], "xbrltype": "domainItemType" }, "srt_SegmentGeographicalDomain": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Geographical [Domain]", "terseLabel": "Geographical [Domain]" } } }, "localname": "SegmentGeographicalDomain", "nsuri": "http://fasb.org/srt/2019-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": [ "r117", "r192", "r196", "r291", "r295", "r298" ], "lang": { "en-US": { "role": { "label": "Geographical [Axis]", "terseLabel": "Geographical [Axis]", "verboseLabel": "Geographical [Axis]" } } }, "localname": "StatementGeographicalAxis", "nsuri": "http://fasb.org/srt/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationRevenuesbyGeographicAreaDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Accounting Policies [Abstract]", "terseLabel": "Accounting Policies [Abstract]" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_AccountsNotesAndLoansReceivableNetCurrent": { "auth_ref": [ "r3", "r16", "r44", "r120", "r121", "r277" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r32" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableGross": { "auth_ref": [ "r120" ], "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, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business.", "label": "Accounts Receivable, before Allowance for Credit Loss", "terseLabel": "Accounts Receivable, before Allowance for Credit Loss" } } }, "localname": "AccountsReceivableGross", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableGrossCurrent": { "auth_ref": [ "r120", "r121" ], "calculation": { "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "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": "Accounts Receivable, before Allowance for Credit Loss, Current" } } }, "localname": "AccountsReceivableGrossCurrent", "nsuri": "http://fasb.org/us-gaap/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsReceivableRelatedParties": { "auth_ref": [ "r15", "r80", "r256", "r257", "r258", "r283" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyTransactionsTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r35" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsAccruedLiabilitiesDetails": { "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsAccruedLiabilitiesDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedProfessionalFeesCurrentAndNoncurrent": { "auth_ref": [ "r274", "r287" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsAccruedLiabilitiesDetails": { "order": 2.0, "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred 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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "auth_ref": [ "r30", "r158" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapital": { "auth_ref": [ "r17" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r202", "r204", "r217", "r218" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock": { "auth_ref": [ "r124", "r139" ], "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": "Allowance for Credit Losses" } } }, "localname": "AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_AllowanceForNotesAndLoansReceivableCurrent": { "auth_ref": [ "r22", "r125", "r134" ], "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 March 31, 2020", "periodStartLabel": "Beginning Balance January 1, 2020" } } }, "localname": "AllowanceForNotesAndLoansReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesAnalysisofAllowanceforCreditLossesDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r87" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareAntiDilutiveSecuritiesDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "auth_ref": [ "r87" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareAntiDilutiveSecuritiesDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareAntiDilutiveSecuritiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "auth_ref": [ "r87" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareAntiDilutiveSecuritiesDetails" ], "xbrltype": "domainItemType" }, "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AssetRetirementObligation": { "auth_ref": [ "r163" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetRetirementObligationAccretionExpense": { "auth_ref": [ "r162", "r164" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Assets": { "auth_ref": [ "r108", "r270", "r278" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r4", "r5", "r49" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r205", "r214" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_BilledContractReceivables": { "auth_ref": [ "r43" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Amounts due for billed services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the Company and, at a minimum, one other party. An example would be amounts billed to customers under contracts or programs but not paid as of the balance sheet date.", "label": "Billed Contracts Receivable", "terseLabel": "Contracts receivable" } } }, "localname": "BilledContractReceivables", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/SubsequentEventsTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "auth_ref": [ "r74", "r75", "r76" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalLeaseObligationsIncurred": { "auth_ref": [ "r74", "r75" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalLeasesFutureMinimumPaymentsDueAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Capital Leases, Future Minimum Payments Due, Fiscal Year Maturity [Abstract]", "terseLabel": "Finance Leases" } } }, "localname": "CapitalLeasesFutureMinimumPaymentsDueAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CapitalizedContractCostNetCurrent": { "auth_ref": [ "r152" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalizedCostsOfUnprovedPropertiesExcludedFromAmortizationByPropertyOrProjectAxis": { "auth_ref": [ "r265", "r266", "r267" ], "lang": { "en-US": { "role": { "documentation": "Information by project.", "label": "Project [Axis]", "terseLabel": "Project [Axis]" } } }, "localname": "CapitalizedCostsOfUnprovedPropertiesExcludedFromAmortizationByPropertyOrProjectAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r1", "r28", "r72" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsAdditionalInformationDetails", "http://www.codexis.com/role/CashEquivalentsComponentsofCashEquivalentsDetails", "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsAdditionalInformationDetails", "http://www.codexis.com/role/CashEquivalentsComponentsofCashEquivalentsDetails", "http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsComponentsofCashEquivalentsDetails", "http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r66", "r72", "r77" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r66", "r238" ], "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 decrease in cash, cash equivalents and restricted cash" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashMember": { "auth_ref": [ "r8" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsAdditionalInformationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CollaborativeArrangementMember": { "auth_ref": [ "r229" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r39", "r167", "r275", "r286" ], "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/2019-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/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": { "auth_ref": [ "r40" ], "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 (in shares)" } } }, "localname": "CommonStockCapitalSharesReservedForFutureIssuance", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r14" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r14" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r14" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r14", "r178" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r14" ], "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,017 shares and 58,877 shares issued and outstanding at March\u00a031, 2020 and December\u00a031, 2019, respectively" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "auth_ref": [ "r97", "r98", "r235", "r236" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "auth_ref": [ "r97", "r98", "r235", "r236", "r293" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskPercentage1": { "auth_ref": [ "r97", "r98", "r235", "r236" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "percentItemType" }, "us-gaap_ConcentrationRiskTable": { "auth_ref": [ "r95", "r97", "r98", "r99", "r235", "r237" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "xbrltype": "stringItemType" }, "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "auth_ref": [ "r187" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of contract balances and changes in contract balances.", "label": "Contract with Customer, Asset and Liability [Table Text Block]", "terseLabel": "Contract with customer" } } }, "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ContractWithCustomerAssetCreditLossExpense": { "auth_ref": [ "r136", "r185", "r191" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionAdditionalInformationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetGrossCurrent": { "auth_ref": [ "r181", "r183" ], "calculation": { "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 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, Gross, Current", "terseLabel": "Contract assets" } } }, "localname": "ContractWithCustomerAssetGrossCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets", "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiability": { "auth_ref": [ "r181", "r182", "r193" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails", "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized": { "auth_ref": [ "r186" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice": { "auth_ref": [ "r184" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInMeasureOfProgress": { "auth_ref": [ "r184" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r181", "r182", "r193" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityNoncurrent": { "auth_ref": [ "r181", "r182", "r193" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r194" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CorporateNonSegmentMember": { "auth_ref": [ "r114" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r57" ], "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/2019-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/2019-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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CreditLossFinancialInstrumentTextBlock": { "auth_ref": [ "r135", "r141", "r142", "r144", "r145", "r148", "r149" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLosses" ], "xbrltype": "textBlockItemType" }, "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" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "auth_ref": [ "r37" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Depreciation": { "auth_ref": [ "r70", "r156" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 2.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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r192" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionTables" ], "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/2019-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/2019-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/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasicAndDiluted": { "auth_ref": [ "r86" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r89" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShare" ], "xbrltype": "textBlockItemType" }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "auth_ref": [ "r35" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": { "auth_ref": [ "r213" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": { "auth_ref": [ "r213" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeStockOptionMember": { "auth_ref": [ "r211" ], "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]", "terseLabel": "Stock options [Member]" } } }, "localname": "EmployeeStockOptionMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r178" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "auth_ref": [ "r230", "r231", "r232", "r233" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": { "auth_ref": [ "r230", "r231" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "auth_ref": [ "r199", "r200", "r201", "r231", "r262" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails" ], "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/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_FairValueInputsLevel1Member": { "auth_ref": [ "r199", "r200", "r201", "r231", "r263" ], "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": "Fair Value, Inputs, Level 1 [Member]" } } }, "localname": "FairValueInputsLevel1Member", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementInputsDisclosureTextBlock": { "auth_ref": [ "r234" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurements" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinanceLeaseInterestExpense": { "auth_ref": [ "r241", "r246", "r255" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseInterestPaymentOnLiability": { "auth_ref": [ "r243", "r250" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesCashPaidforLeaseObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiability": { "auth_ref": [ "r240", "r254" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails": { "order": 2.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.", "label": "Finance Lease, Liability", "terseLabel": "Finance lease, liability", "verboseLabel": "Lease Obligations" } } }, "localname": "FinanceLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails", "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityCurrent": { "auth_ref": [ "r240" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r254" ], "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, Maturity [Table Text Block]", "terseLabel": "Finance lease liability" } } }, "localname": "FinanceLeaseLiabilityMaturityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDue": { "auth_ref": [ "r254" ], "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 payments for finance lease.", "label": "Finance Lease, Liability, Payment, Due", "totalLabel": "Total minimum lease payments" } } }, "localname": "FinanceLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive": { "auth_ref": [ "r254" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 6.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due after fifth fiscal year following latest fiscal year.", "label": "Finance Lease, Liability, Payments, Due after Year Five", "terseLabel": "2025 and thereafter" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueAfterYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive": { "auth_ref": [ "r254" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 5.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fifth fiscal year following latest fiscal year.", "label": "Finance Lease, Liability, Payments, Due Year Five", "terseLabel": "2024" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r254" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 4.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fourth fiscal year following latest fiscal year.", "label": "Finance Lease, Liability, Payments, Due Year Four", "terseLabel": "2023" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r254" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 3.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in third fiscal year following latest fiscal year.", "label": "Finance Lease, Liability, Payments, Due Year Three", "terseLabel": "2022" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r254" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 2.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in second fiscal year following latest fiscal year.", "label": "Finance Lease, Liability, Payments, Due Year Two", "terseLabel": "2021" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r254" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails_1": { "order": 1.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease, due in remainder of fiscal year following latest fiscal year ended.", "label": "Finance Lease, Liability, Payments, Remainder of Fiscal Year", "terseLabel": "2020 (remaining 9 months)" } } }, "localname": "FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r254" ], "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails": { "order": 1.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "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 finance lease.", "label": "Finance Lease, Liability, Undiscounted Excess Amount", "negatedTerseLabel": "Less: imputed interest" } } }, "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeasePrincipalPayments": { "auth_ref": [ "r242", "r250" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 3.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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesCashPaidforLeaseObligationsDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAsset": { "auth_ref": [ "r239" ], "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 finance lease.", "label": "Finance Lease, Right-of-Use Asset", "terseLabel": "Right-of-use assets - Finance leases, net" } } }, "localname": "FinanceLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAssetAmortization": { "auth_ref": [ "r241", "r246", "r255" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r252", "r255" ], "lang": { "en-US": { "role": { "documentation": "Weighted average discount rate for finance lease calculated at point in time.", "label": "Finance Lease, Weighted Average Discount Rate, Percent", "terseLabel": "Finance Leases - Weighted-average discount rate" } } }, "localname": "FinanceLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1": { "auth_ref": [ "r251", "r255" ], "lang": { "en-US": { "role": { "documentation": "Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Finance Lease, Weighted Average Remaining Lease Term", "terseLabel": "Finance Leases - Weighted-average remaining lease term (in years)" } } }, "localname": "FinanceLeaseWeightedAverageRemainingLeaseTerm1", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails" ], "xbrltype": "durationItemType" }, "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery": { "auth_ref": [ "r123", "r138", "r146", "r273" ], "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "Amount of recovery of financing receivables doubtful of collection that were previously charged off.", "label": "Financing Receivable, Allowance for Credit Loss, Recovery", "terseLabel": "Recoveries of amounts previously written off" } } }, "localname": "FinancingReceivableAllowanceForCreditLossesRecovery", "nsuri": "http://fasb.org/us-gaap/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesAnalysisofAllowanceforCreditLossesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs": { "auth_ref": [ "r122", "r137", "r146", "r273" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_FinancingReceivableRecordedInvestmentCurrent": { "auth_ref": [ "r140", "r147" ], "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": "Financing receivable, not past due" } } }, "localname": "FinancingReceivableRecordedInvestmentCurrent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinancingReceivableRecordedInvestmentPastDue": { "auth_ref": [ "r127", "r140", "r147" ], "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": "Financing receivable, past due" } } }, "localname": "FinancingReceivableRecordedInvestmentPastDue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinancingReceivables30To59DaysPastDueMember": { "auth_ref": [ "r147" ], "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": "Financial Asset, 30 to 59 Days Past Due [Member]" } } }, "localname": "FinancingReceivables30To59DaysPastDueMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinancingReceivables60To89DaysPastDueMember": { "auth_ref": [ "r147" ], "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": "Financial Asset, 60 to 89 Days Past Due [Member]" } } }, "localname": "FinancingReceivables60To89DaysPastDueMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinancingReceivablesEqualToGreaterThan90DaysPastDueMember": { "auth_ref": [ "r147" ], "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": "Financial Asset, Equal to or Greater than 90 Days Past Due" } } }, "localname": "FinancingReceivablesEqualToGreaterThan90DaysPastDueMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinancingReceivablesPeriodPastDueAxis": { "auth_ref": [ "r140", "r147" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "domainItemType" }, "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "xbrltype": "stringItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r153", "r154" ], "calculation": { "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 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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsGoodwillDetails", "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": { "auth_ref": [ "r78", "r155" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments": { "auth_ref": [ "r82" ], "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/2019-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/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r160" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r79", "r107", "r227" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxPolicyTextBlock": { "auth_ref": [ "r53", "r78", "r222", "r223", "r224", "r225", "r226", "r228", "r297" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r69" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 12.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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "auth_ref": [ "r69" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 7.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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "auth_ref": [ "r69" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 16.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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": { "auth_ref": [ "r69" ], "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 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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInFinanceReceivables": { "auth_ref": [ "r69" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 6.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", "negatedTerseLabel": "Accounts receivable, net" } } }, "localname": "IncreaseDecreaseInFinanceReceivables", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r69" ], "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 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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": { "auth_ref": [ "r69" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 14.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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": { "auth_ref": [], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 15.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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherOperatingAssets": { "auth_ref": [ "r69" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 11.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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "auth_ref": [ "r69" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 10.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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_IndemnificationGuaranteeMember": { "auth_ref": [ "r174", "r177" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_InterestPaidNet": { "auth_ref": [ "r65", "r67", "r73" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r2", "r48", "r151" ], "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/2019-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/2019-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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InvestmentIncomeInterest": { "auth_ref": [ "r59", "r106" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_InvestmentTableTextBlock": { "auth_ref": [ "r130", "r131", "r132", "r133" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of investment.", "label": "Investment [Table Text Block]", "terseLabel": "Schedule of cash equivalents and marketable securities" } } }, "localname": "InvestmentTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LeaseCost": { "auth_ref": [ "r253", "r255" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LeaseCostTableTextBlock": { "auth_ref": [ "r253" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LeaseholdImprovementsMember": { "auth_ref": [ "r157" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LesseeFinanceLeaseTermOfContract1": { "auth_ref": [ "r245" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "durationItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "auth_ref": [ "r254" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "auth_ref": [ "r254" ], "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 payments for operating lease.", "label": "Lessee, Operating Lease, Liability, Payments, Due", "totalLabel": "Total minimum lease payments" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "auth_ref": [ "r254" ], "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 payments for operating lease, due after fifth fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Due after Year Five", "terseLabel": "2025 and thereafter" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": { "auth_ref": [ "r254" ], "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": "Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fifth fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Five", "terseLabel": "2024" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r254" ], "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 payments for operating lease, due in fourth fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Four", "terseLabel": "2023" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r254" ], "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 payments for operating lease, due in third fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Three", "terseLabel": "2022" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r254" ], "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 payments for operating lease, due in second fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Due Year Two", "terseLabel": "2021" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r254" ], "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 payments for operating lease having an initial or remaining lease term in excess of one year due in remainder of fiscal year following latest fiscal year.", "label": "Lessee, Operating Lease, Liability, Payments, Remainder of Fiscal Year", "terseLabel": "2020 (remaining 9 months)" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r254" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseRenewalTerm": { "auth_ref": [ "r245" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "durationItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r34" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r21", "r272", "r282" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r36" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityCurrentBorrowingCapacity": { "auth_ref": [ "r33" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LossContingenciesByNatureOfContingencyAxis": { "auth_ref": [ "r167", "r168", "r169", "r170", "r171", "r172", "r173", "r175", "r176" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingencyAccrualCarryingValueCurrent": { "auth_ref": [ "r167" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LossContingencyNatureDomain": { "auth_ref": [ "r167", "r168", "r169", "r170", "r171", "r172", "r173", "r175", "r176" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_MaintenanceMember": { "auth_ref": [ "r195" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_MoneyMarketFundsMember": { "auth_ref": [ "r199" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsAdditionalInformationDetails", "http://www.codexis.com/role/CashEquivalentsComponentsofCashEquivalentsDetails", "http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NatureOfOperations": { "auth_ref": [ "r90", "r103" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/DescriptionofBusiness" ], "xbrltype": "textBlockItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r66" ], "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 used in financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r66" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r66", "r68", "r71" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r51", "r52", "r54", "r71", "r88", "r276", "r288" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NewAccountingPronouncementsOrChangeInAccountingPrincipleTable": { "auth_ref": [ "r84", "r85" ], "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": "New Accounting Pronouncements or Change in Accounting Principle [Table]", "terseLabel": "New Accounting Pronouncements or Change in Accounting Principle [Table]" } } }, "localname": "NewAccountingPronouncementsOrChangeInAccountingPrincipleTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails" ], "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": "Recently Adopted and Issued Accounting Pronouncements" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_NoncurrentAssets": { "auth_ref": [ "r116" ], "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets.", "label": "Long-Lived Assets", "terseLabel": "Long-Lived Assets" } } }, "localname": "NoncurrentAssets", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_NotesReceivableGross": { "auth_ref": [ "r143" ], "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": "Financing Receivable, before Allowance for Credit Loss, Total" } } }, "localname": "NotesReceivableGross", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_NumberOfOperatingSegments": { "auth_ref": [], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationAdditionalInformationDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "integerItemType" }, "us-gaap_NumberOfReportableSegments": { "auth_ref": [], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationAdditionalInformationDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseCost": { "auth_ref": [ "r247", "r255" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r240" ], "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", "verboseLabel": "Operating lease, liability" } } }, "localname": "OperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails", "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r240" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r240" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasePayments": { "auth_ref": [ "r244", "r250" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesCashPaidforLeaseObligationsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r239" ], "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 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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r252", "r255" ], "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": "Operating Leases - Weighted-average discount rate" } } }, "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "auth_ref": [ "r251", "r255" ], "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": "Operating Leases - Weighted-average remaining lease term (in years)" } } }, "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "nsuri": "http://fasb.org/us-gaap/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesFutureMinimumLeasePaymentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingSegmentsMember": { "auth_ref": [ "r105", "r113" ], "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/2019-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/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent": { "auth_ref": [ "r274", "r287" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsAccruedLiabilitiesDetails": { "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsAccruedLiabilitiesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r31" ], "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 of noncurrent assets classified as other.", "label": "Other Assets, Noncurrent", "verboseLabel": "Other non-current assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2019-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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r38" ], "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/2019-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 expenses, net" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_PastDueFinancingReceivablesTableTextBlock": { "auth_ref": [ "r126", "r127", "r140", "r147" ], "lang": { "en-US": { "role": { "documentation": "Tabular disclosure of aging analysis for financing receivable.", "label": "Financing Receivable, Past Due [Table Text Block]", "terseLabel": "Financing Receivable, Past Due" } } }, "localname": "PastDueFinancingReceivablesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "auth_ref": [ "r64" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 2.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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r62" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchase of property and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PlanNameAxis": { "auth_ref": [ "r205", "r214" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r13" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r13" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesIssued": { "auth_ref": [ "r13" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesOutstanding": { "auth_ref": [ "r13" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r13" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "auth_ref": [ "r4", "r26", "r27" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ProceedsFromStockOptionsExercised": { "auth_ref": [ "r63", "r215" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockTextualDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProjectMember": { "auth_ref": [ "r268" ], "lang": { "en-US": { "role": { "documentation": "Planned program of work.", "label": "Project [Domain]", "terseLabel": "Project [Domain]" } } }, "localname": "ProjectMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "auth_ref": [ "r30", "r159" ], "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": "Property, Plant and Equipment, Type [Axis]", "terseLabel": "Property, Plant and Equipment, Type [Axis]" } } }, "localname": "PropertyPlantAndEquipmentByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentGross": { "auth_ref": [ "r29", "r157" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r9", "r10", "r159", "r284" ], "calculation": { "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "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 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", "totalLabel": "Property and equipment, net", "verboseLabel": "Property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "auth_ref": [ "r9", "r159" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "auth_ref": [ "r9", "r157" ], "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": "Property, Plant and Equipment, Type [Domain]", "terseLabel": "Property, Plant and Equipment, Type [Domain]" } } }, "localname": "PropertyPlantAndEquipmentTypeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ReceivablesAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Receivables [Abstract]" } } }, "localname": "ReceivablesAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy": { "auth_ref": [ "r22", "r78", "r128" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock": { "auth_ref": [ "r110", "r112" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_RelatedPartyTransactionDueFromToRelatedPartyAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Related Party Transaction, Due from (to) Related Party [Abstract]", "terseLabel": "Related Party Transaction, Due from (to) Related Party [Abstract]" } } }, "localname": "RelatedPartyTransactionDueFromToRelatedPartyAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_RelatedPartyTransactionsDisclosureTextBlock": { "auth_ref": [ "r259" ], "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 Transactions" } } }, "localname": "RelatedPartyTransactionsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyTransactions" ], "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/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_ResearchAndDevelopmentArrangementContractToPerformForOthersByTypeAxis": { "auth_ref": [ "r220", "r221" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ResearchAndDevelopmentArrangementContractToPerformForOthersTypeDomain": { "auth_ref": [ "r220", "r221" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ResearchAndDevelopmentExpense": { "auth_ref": [ "r219", "r300" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RestrictedCash": { "auth_ref": [ "r77", "r269", "r280" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedCashAndCashEquivalents": { "auth_ref": [ "r8", "r72", "r77", "r269", "r280" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis": { "auth_ref": [ "r28" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsAdditionalInformationDetails", "http://www.codexis.com/role/CashEquivalentsComponentsofCashEquivalentsDetails", "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails", "http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RestrictedCashAndCashEquivalentsNoncurrent": { "auth_ref": [ "r6", "r11", "r72", "r77", "r296" ], "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 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/2019-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/2019-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": "Restricted Stock Units (RSUs) [Member]" } } }, "localname": "RestrictedStockUnitsRSUMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r18", "r179", "r281" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [], "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/2019-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/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "auth_ref": [ "r190", "r192" ], "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", "terseLabel": "Total revenues", "verboseLabel": "Total revenues" } } }, "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "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": [ "r198" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognition" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueFromRelatedParties": { "auth_ref": [ "r56", "r294" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RelatedPartyTransactionsTextualDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueInitialApplicationPeriodCumulativeEffectTransitionTable": { "auth_ref": [], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r188" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "auth_ref": [ "r189" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r189" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock": { "auth_ref": [ "r189" ], "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/2019-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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RoyaltyMember": { "auth_ref": [ "r195" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SalesRevenueProductLineMember": { "auth_ref": [ "r96" ], "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/2019-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 accrued liabilities" } } }, "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "auth_ref": [ "r87" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareAntiDilutiveSecuritiesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": { "auth_ref": [ "r87" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CashEquivalentsAdditionalInformationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfCollaborativeArrangementsAndNoncollaborativeArrangementTransactionsTable": { "auth_ref": [ "r229" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": { "auth_ref": [ "r204", "r212", "r216" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "auth_ref": [ "r204", "r212", "r216" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock": { "auth_ref": [ "r116" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable": { "auth_ref": [ "r139" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/AllowanceforCreditLossesSummaryofFinanceReceivablesbyAgingCategoryDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfIntangibleAssetsAndGoodwillTableTextBlock": { "auth_ref": [ "r155" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "auth_ref": [ "r7", "r23", "r24", "r25" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "auth_ref": [ "r30", "r159" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BalanceSheetsDetailsPropertyandEquipmentnetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "auth_ref": [ "r104", "r108", "r109", "r111", "r155" ], "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/2019-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": [ "r104", "r108", "r109", "r111", "r155" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "auth_ref": [ "r205", "r214" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock": { "auth_ref": [ "r95", "r97", "r98", "r99", "r235", "r237" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails", "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/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingDisclosureTextBlock": { "auth_ref": [ "r119" ], "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/2019-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/2019-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": [ "r78" ], "lang": { "en-US": { "role": { "documentation": "Disclosure of accounting policy for segment reporting.", "label": "Segment Reporting, Policy [Policy Text Block]", "terseLabel": "Segment Information" } } }, "localname": "SegmentReportingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r58", "r150" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpensesMember": { "auth_ref": [ "r61" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r69" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 4.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/2019-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": [ "r206" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "durationItemType" }, "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "auth_ref": [ "r208" ], "lang": { "en-US": { "role": { "documentation": "Number of shares authorized for issuance under share-based payment arrangement.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized", "terseLabel": "Number of shares authorized (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "auth_ref": [ "r214" ], "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 (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r203", "r209" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockTextualDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": { "auth_ref": [ "r206" ], "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" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "percentItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": { "auth_ref": [ "r207" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_ShortTermLeaseCost": { "auth_ref": [ "r248", "r255" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "auth_ref": [ "r83" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_SignificantSupplyCommitmentRemainingMinimumAmountCommitted": { "auth_ref": [ "r39", "r275", "r285" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_StatementBusinessSegmentsAxis": { "auth_ref": [ "r0", "r108", "r155", "r161", "r165", "r166", "r289" ], "lang": { "en-US": { "role": { "documentation": "Information by business segments.", "label": "Segments [Axis]", "terseLabel": "Segments [Axis]" } } }, "localname": "StatementBusinessSegmentsAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails", "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationGoodwillDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationSegmentReportingDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r41", "r178" ], "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/2019-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/2019-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/2019-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/2019-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/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StockCompensationPlanMember": { "auth_ref": [ "r87" ], "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 of common stock issuable pursuant to equity awards outstanding under the Equity Incentive Plan [Member]" } } }, "localname": "StockCompensationPlanMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/NetlossperShareAntiDilutiveSecuritiesDetails" ], "xbrltype": "domainItemType" }, "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "auth_ref": [ "r13", "r14", "r178", "r179", "r210" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStockTextualDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "auth_ref": [ "r41", "r178", "r179" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r14", "r19", "r20", "r129" ], "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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "auth_ref": [ "r180" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CapitalStock" ], "xbrltype": "textBlockItemType" }, "us-gaap_SubleaseIncome": { "auth_ref": [ "r249", "r255" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SubsequentEventLineItems": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event.", "label": "Subsequent Event [Line Items]", "terseLabel": "Subsequent Event [Line Items]" } } }, "localname": "SubsequentEventLineItems", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/SubsequentEventsTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventMember": { "auth_ref": [], "lang": { "en-US": { "role": { "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event [Member]", "terseLabel": "Subsequent Event [Member]" } } }, "localname": "SubsequentEventMember", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails", "http://www.codexis.com/role/SubsequentEventsTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SubsequentEventTable": { "auth_ref": [ "r260" ], "lang": { "en-US": { "role": { "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued.", "label": "Subsequent Event [Table]", "terseLabel": "Subsequent Event [Table]" } } }, "localname": "SubsequentEventTable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/SubsequentEventsTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventTypeAxis": { "auth_ref": [ "r260" ], "lang": { "en-US": { "role": { "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event Type [Axis]", "terseLabel": "Subsequent Event Type [Axis]" } } }, "localname": "SubsequentEventTypeAxis", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails", "http://www.codexis.com/role/SubsequentEventsTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventTypeDomain": { "auth_ref": [ "r260" ], "lang": { "en-US": { "role": { "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event Type [Domain]", "terseLabel": "Subsequent Event Type [Domain]" } } }, "localname": "SubsequentEventTypeDomain", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails", "http://www.codexis.com/role/SubsequentEventsTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SubsequentEventsAbstract": { "auth_ref": [], "lang": { "en-US": { "role": { "label": "Subsequent Events [Abstract]", "terseLabel": "Subsequent Events [Abstract]" } } }, "localname": "SubsequentEventsAbstract", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventsTextBlock": { "auth_ref": [ "r261" ], "lang": { "en-US": { "role": { "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.", "label": "Subsequent Events [Text Block]", "terseLabel": "Subsequent Events" } } }, "localname": "SubsequentEventsTextBlock", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/SubsequentEvents" ], "xbrltype": "textBlockItemType" }, "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_SupplyCommitmentArrangementMember": { "auth_ref": [ "r12", "r271", "r279" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SupplyCommitmentAxis": { "auth_ref": [ "r12", "r271", "r279" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SupplyCommitmentMember": { "auth_ref": [ "r12", "r271", "r279" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SupplyCommitmentTableTextBlock": { "auth_ref": [ "r12" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_TypeOfArrangementAxis": { "auth_ref": [ "r229" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CollaborativeArrangementsTextualDetails", "http://www.codexis.com/role/DescriptionofBusinessTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_UnbilledContractsReceivable": { "auth_ref": [ "r42", "r264" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_NotesReceivableGross", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-US": { "role": { "documentation": "Unbilled amounts due for services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the entity and, at a minimum, one other party. An example would be amounts associated with contracts or programs where the recognized revenue for performance thereunder exceeds the amounts billed under the terms thereof as of the date of the balance sheet.", "label": "Unbilled Contracts Receivable", "terseLabel": "Unbilled Contracts Receivable" } } }, "localname": "UnbilledContractsReceivable", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheets", "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_UnrealizedGainLossOnInvestments": { "auth_ref": [ "r70" ], "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-US": { "role": { "documentation": "The net change in the difference between the fair value and the carrying value, or in the comparative fair values, of investments, not including unrealized gains or losses on securities separately or otherwise categorized as trading, available-for-sale, or held-to-maturity, held at each balance sheet date and included in earnings for the period.", "label": "Unrealized Gain (Loss) on Investments", "negatedTerseLabel": "Unrealized loss on investment in equity securities" } } }, "localname": "UnrealizedGainLossOnInvestments", "nsuri": "http://fasb.org/us-gaap/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_UseOfEstimates": { "auth_ref": [ "r91", "r92", "r93", "r94", "r100", "r101", "r102" ], "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/2019-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/2019-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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails" ], "xbrltype": "domainItemType" }, "us-gaap_VestingAxis": { "auth_ref": [ "r214" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VestingDomain": { "auth_ref": [ "r214" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTextualDetails" ], "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/2019-01-31", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "sharesItemType" } }, "unitCount": 9 } }, "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": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765" }, "r10": { "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=6877327&loc=d3e13212-122682" }, "r100": { "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" }, "r101": { "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" }, "r102": { "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" }, "r103": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "275", "URI": "http://asc.fasb.org/topic&trid=2134479" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8721-108599" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8813-108599" }, "r11": { "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=6877327&loc=d3e13212-122682" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8906-108599" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8906-108599" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8924-108599" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8933-108599" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e8475-108599" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9031-108599" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9038-108599" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9038-108599" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=115929826&loc=d3e9054-108599" }, "r119": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "http://asc.fasb.org/topic&trid=2134510" }, "r12": { "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=6877327&loc=d3e13212-122682" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118952595&loc=d3e4428-111522" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118952595&loc=d3e4531-111522" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "11B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(3)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=SL6953423-111524" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "11B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(4)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=SL6953423-111524" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "11B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=SL6953423-111524" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e5074-111524" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e5111-111524" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=SL6953401-111524" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=118936363&loc=d3e5144-111524" }, "r129": { "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" }, "r13": { "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=6877327&loc=d3e13212-122682" }, "r130": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "320", "URI": "http://asc.fasb.org/topic&trid=2196928" }, "r131": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "321", "URI": "http://asc.fasb.org/topic&trid=75115024" }, "r132": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "323", "URI": "http://asc.fasb.org/topic&trid=2196965" }, "r133": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "325", "URI": "http://asc.fasb.org/topic&trid=2197064" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=118955202&loc=SL82895884-210446" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919244-210447" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919249-210447" }, "r14": { "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=6877327&loc=d3e13212-122682" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919253-210447" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919269-210447" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919272-210447" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919230-210447" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919230-210447" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=119407570&loc=SL82919236-210447" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "79", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=118955255&loc=SL82922352-210448" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "80", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=118955255&loc=SL82922355-210448" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=118955579&loc=SL82922888-210455" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=118955579&loc=SL82922895-210455" }, "r15": { "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=6877327&loc=d3e13212-122682" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "30", "SubTopic": "10", "Topic": "330", "URI": "http://asc.fasb.org/extlink&oid=68048583&loc=d3e3636-108311" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "330", "URI": "http://asc.fasb.org/extlink&oid=116846819&loc=d3e3927-108312" }, "r152": { "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" }, "r153": { "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" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=77989000&loc=SL49117168-202975" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=108376223&loc=d3e13816-109267" }, "r156": { "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" }, "r157": { "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" }, "r158": { "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" }, "r159": { "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" }, "r16": { "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=6877327&loc=d3e13212-122682" }, "r160": { "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" }, "r161": { "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" }, "r162": { "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" }, "r163": { "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" }, "r164": { "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" }, "r165": { "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" }, "r166": { "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" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14326-108349" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14615-108349" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14394-108349" }, "r17": { "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=6877327&loc=d3e13212-122682" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14435-108349" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14453-108349" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14472-108349" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "http://asc.fasb.org/extlink&oid=118942415&loc=d3e14557-108349" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "15", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=99404985&loc=d3e10037-110241" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=118943654&loc=d3e12021-110248" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=118943654&loc=d3e12053-110248" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "460", "URI": "http://asc.fasb.org/extlink&oid=118956092&loc=d3e13051-110250" }, "r178": { "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" }, "r179": { "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=27012166&loc=d3e187085-122770" }, "r18": { "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=6877327&loc=d3e13212-122682" }, "r180": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "505", "URI": "http://asc.fasb.org/topic&trid=2208762" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130531-203044" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130532-203044" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944033&loc=SL49130533-203044" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130551-203045" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130551-203045" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130551-203045" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130551-203045" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130556-203045" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130556-203045" }, "r19": { "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=6877327&loc=d3e13212-122682" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130543-203045" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130543-203045" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130545-203045" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130549-203045" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118956577&loc=SL49130549-203045" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "http://asc.fasb.org/extlink&oid=118944142&loc=SL49130690-203046-203046" }, "r198": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "http://asc.fasb.org/topic&trid=49130388" }, "r199": { "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" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765" }, "r20": { "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=6877327&loc=d3e13212-122682" }, "r200": { "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" }, "r201": { "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" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116855982&loc=d3e4534-113899" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5047-113901" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a),(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r21": { "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=6877327&loc=d3e13212-122682" }, "r210": { "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=116856206&loc=d3e5070-113901" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=d3e5070-113901" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "2A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=116856206&loc=SL79508275-113901" }, "r216": { "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" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11149-113907" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=118258462&loc=d3e11178-113907" }, "r219": { "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" }, "r22": { "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=6877327&loc=d3e13212-122682" }, "r220": { "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" }, "r221": { "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" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e32247-109318" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=116821951&loc=d3e32280-109318" }, "r224": { "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" }, "r225": { "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" }, "r226": { "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" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=109238882&loc=d3e38679-109324" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "05", "SubTopic": "30", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=65884525&loc=d3e40913-109327" }, "r229": { "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" }, "r23": { "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=6877327&loc=d3e13212-122682" }, "r230": { "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" }, "r231": { "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" }, "r232": { "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" }, "r233": { "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" }, "r234": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "820", "URI": "http://asc.fasb.org/topic&trid=2155941" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13531-108611" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13537-108611" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=118260190&loc=d3e13537-108611" }, "r238": { "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" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977" }, "r24": { "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=6877327&loc=d3e13212-122682" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918638-209977" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918643-209977" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918643-209977" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888419&loc=SL77918643-209977" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918673-209980" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r25": { "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=6877327&loc=d3e13212-122682" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(1)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(3)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(4)", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "842", "URI": "http://asc.fasb.org/extlink&oid=77888399&loc=SL77918982-209971" }, "r256": { "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" }, "r257": { "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" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39622-107864" }, "r259": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "850", "URI": "http://asc.fasb.org/topic&trid=2122745" }, "r26": { "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=6877327&loc=d3e13212-122682" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "855", "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662" }, "r261": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "855", "URI": "http://asc.fasb.org/topic&trid=2122774" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=118948506&loc=d3e107207-111719" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Topic": "912", "URI": "http://asc.fasb.org/extlink&oid=118261985&loc=d3e55302-109406" }, "r265": { "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=82851474&loc=d3e511914-122862" }, "r266": { "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=82851474&loc=d3e511914-122862" }, "r267": { "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=82851474&loc=d3e511914-122862" }, "r268": { "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" }, "r269": { "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=6876686&loc=d3e534808-122878" }, "r27": { "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=6877327&loc=d3e13212-122682" }, "r270": { "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=6876686&loc=d3e534808-122878" }, "r271": { "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=6876686&loc=d3e534808-122878" }, "r272": { "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=6876686&loc=d3e534808-122878" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(7)(d))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878" }, "r274": { "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=6876686&loc=d3e534808-122878" }, "r275": { "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=6876686&loc=d3e534808-122878" }, "r276": { "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=116637391&loc=SL114874048-224260" }, "r277": { "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=119400593&loc=d3e572229-122910" }, "r278": { "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=119400593&loc=d3e572229-122910" }, "r279": { "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=119400593&loc=d3e572229-122910" }, "r28": { "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=6877327&loc=d3e13212-122682" }, "r280": { "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=119400593&loc=d3e572229-122910" }, "r281": { "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=119400593&loc=d3e572229-122910" }, "r282": { "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=119400593&loc=d3e572229-122910" }, "r283": { "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=119400593&loc=d3e572229-122910" }, "r284": { "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=119400593&loc=d3e572229-122910" }, "r285": { "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=119400593&loc=d3e572229-122910" }, "r286": { "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=119400593&loc=d3e572229-122910" }, "r287": { "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=119400593&loc=d3e572229-122910" }, "r288": { "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=116637232&loc=SL114874131-224263" }, "r289": { "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" }, "r29": { "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=6877327&loc=d3e13212-122682" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(b)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=117419784&loc=SL117783719-158441" }, "r293": { "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" }, "r294": { "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=116637345&loc=SL114874292-224272" }, "r295": { "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=6589523&loc=d3e617274-123014" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "954", "URI": "http://asc.fasb.org/extlink&oid=116631420&loc=SL116631458-115580" }, "r297": { "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" }, "r298": { "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=6590653&loc=d3e638233-123024" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28)", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=6590653&loc=d3e638233-123024" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765" }, "r30": { "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=6877327&loc=d3e13212-122682" }, "r300": { "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" }, "r301": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r302": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r303": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-13" }, "r304": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1-" }, "r305": { "Name": "Regulation 12B", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r306": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "r31": { "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=6877327&loc=d3e13212-122682" }, "r32": { "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=6877327&loc=d3e13212-122682" }, "r33": { "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=6877327&loc=d3e13212-122682" }, "r34": { "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=6877327&loc=d3e13212-122682" }, "r35": { "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=6877327&loc=d3e13212-122682" }, "r36": { "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=6877327&loc=d3e13212-122682" }, "r37": { "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=6877327&loc=d3e13212-122682" }, "r38": { "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=6877327&loc=d3e13212-122682" }, "r39": { "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=6877327&loc=d3e13212-122682" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6676-107765" }, "r40": { "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=6877327&loc=d3e13212-122682" }, "r41": { "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=6877327&loc=d3e13212-122682" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.3(c)(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.3(c))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682" }, "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=6877327&loc=d3e13212-122682" }, "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=6877327&loc=d3e13212-122682" }, "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=6877327&loc=d3e13212-122682" }, "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=6877327&loc=d3e13212-122682" }, "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=6877327&loc=d3e13212-122682" }, "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=6877327&loc=d3e13212-122682" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6801-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=118930883&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=118930883&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=116634182&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=116634182&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=116634182&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=116634182&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=116634182&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=116634182&loc=SL114868664-224227" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=118951113&loc=d3e6812-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=116634182&loc=SL114868664-224227" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3213-108585" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3255-108585" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3291-108585" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3367-108585" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3521-108585" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3536-108585" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585" }, "r7": { "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" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=118932676&loc=d3e3044-108585" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4297-108586" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4304-108586" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4313-108586" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=d3e4332-108586" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=98513485&loc=SL98516268-108586" }, "r78": { "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" }, "r79": { "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=26873400&loc=d3e23780-122690" }, "r8": { "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=6877327&loc=d3e13212-122682" }, "r80": { "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=26873400&loc=d3e23780-122690" }, "r81": { "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=26873400&loc=d3e23780-122690" }, "r82": { "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=26873400&loc=d3e23780-122690" }, "r83": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "235", "URI": "http://asc.fasb.org/topic&trid=2122369" }, "r84": { "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" }, "r85": { "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" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=117326831&loc=d3e1337-109256" }, "r87": { "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" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=6371337&loc=d3e3550-109257" }, "r89": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "http://asc.fasb.org/topic&trid=2144383" }, "r9": { "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=6877327&loc=d3e13212-122682" }, "r90": { "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" }, "r91": { "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" }, "r92": { "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" }, "r93": { "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" }, "r94": { "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" }, "r95": { "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" }, "r96": { "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" }, "r97": { "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" }, "r98": { "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" }, "r99": { "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" } }, "version": "2.1" } XML 28 R15.htm IDEA: XBRL DOCUMENT v3.20.1
Related Party Transactions
3 Months Ended
Mar. 31, 2020
Related Party Transaction, Due from (to) Related Party [Abstract]  
Related Party Transactions Related Party Transactions
AstraZeneca PLC
Pam P. Cheng, a member of our board of directors, 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 $0.1 million and nominal revenue in the three months ended March 31, 2020, and 2019, respectively, from transactions with AstraZeneca PLC and its controlled purchasing agents and contract manufacturers. At March 31, 2020 and December 31, 2019, we had $0.1 million and $0.3 million of receivables from AstraZeneca PLC and its controlled purchasing agents and contract manufacturers, respectively.
XML 29 R11.htm IDEA: XBRL DOCUMENT v3.20.1
Cash Equivalents
3 Months Ended
Mar. 31, 2020
Cash Equivalents and Marketable Securities [Abstract]  
Cash Equivalents Cash Equivalents
Cash equivalents at March 31, 2020 and December 31, 2019 consisted of the following (in thousands):
 March 31, 2020December 31, 2019
 Adjusted CostEstimated
Fair Value
Adjusted CostEstimated Fair Value
Money market funds (1)
$68,460  $68,460  $71,248  $71,248  
(1) Money market funds are classified in cash and cash equivalents on our unaudited condensed consolidated balance sheets.
As of March 31, 2020, the total cash and cash equivalents balance of $87.3 million was comprised of money market funds of $68.5 million and cash of $18.8 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.
XML 30 R57.htm IDEA: XBRL DOCUMENT v3.20.1
Segment, Geographical and Other Revenue Information - Concentration Risk (Details)
3 Months Ended 12 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Dec. 31, 2019
Revenue, Product and Service Benchmark [Member] | Customer A [Member]      
Concentration Risk [Line Items]      
Concentration risk, percentage 24.00% 41.00%  
Revenue, Product and Service Benchmark [Member] | Customer B [Member]      
Concentration Risk [Line Items]      
Concentration risk, percentage 19.00% 0.00%  
Revenue, Product and Service Benchmark [Member] | Customer C [Member]      
Concentration Risk [Line Items]      
Concentration risk, percentage 15.00% 0.00%  
Revenue, Product and Service Benchmark [Member] | Customer D [Member]      
Concentration Risk [Line Items]      
Concentration risk, percentage 11.00% 35.00%  
Accounts Receivable [Member] | Customer A [Member]      
Concentration Risk [Line Items]      
Concentration risk, percentage 47.00%   38.00%
Accounts Receivable [Member] | Customer D [Member]      
Concentration Risk [Line Items]      
Concentration risk, percentage 0.00%   10.00%
XML 31 R53.htm IDEA: XBRL DOCUMENT v3.20.1
Commitments and Contingencies - Other Commitments (Details) - Supply Commitment [Member]
$ in Thousands
Mar. 31, 2020
USD ($)
Other Commitments [Line Items]  
Future Minimum Payment $ 5,931
April 2016 [Member]  
Other Commitments [Line Items]  
Future Minimum Payment 847
September 2019 [Member]  
Other Commitments [Line Items]  
Future Minimum Payment $ 5,084
XML 32 R33.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue Recognition - Additional Information (Details) - USD ($)
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Revenue from Contract with Customer [Abstract]    
Impairment charges related to contract assets $ 0 $ 0
XML 33 R37.htm IDEA: XBRL DOCUMENT v3.20.1
Collaborative Arrangements - Textual (Details) - USD ($)
1 Months Ended 3 Months Ended 12 Months Ended
Dec. 31, 2019
May 31, 2019
Apr. 30, 2018
Oct. 31, 2017
Dec. 31, 2015
Mar. 31, 2020
Mar. 31, 2019
Dec. 31, 2018
Dec. 31, 2019
Sep. 30, 2018
Dec. 31, 2017
Aug. 31, 2015
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Revenue recognized           $ 14,670,000 $ 15,583,000          
Contract with customer, liability $ 2,044,000         8,536,000     $ 2,044,000      
GSK [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Revenue recognized                 2,000,000.0      
Contract with customer, liability 0         0     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            
Merck [Member] | Technology Transfer, Collaboration and License Agreement [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Contingent receivable                       $ 15,000,000.0
Revenue recognized           900,000 1,000,000.0          
Merck [Member] | Technology Transfer, Collaboration and License Agreement [Member] | Maintenance [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Revenue recognized           25,000     900,000      
Contract with customer, liability 0         100,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           1,800,000 5,300,000          
Tate & Lyle [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Revenue recognized           0            
Tate & Lyle [Member] | Research and Development Agreement [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Contract with customer, liability 0         0     0      
Tate & Lyle [Member] | 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      
Nestec Ltd. (Nestle Health Sciences) [Member] | Global Development, Option and License Agreement [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Revenue recognized           0 1,300,000          
Contract with customer, liability $ 13,000     $ 14,000,000.0         13,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,000.0                
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,000.0                
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,000.0                
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,000.0      
Nestec Ltd. (Nestle Health Sciences) [Member] | Strategic Collaboration Agreement [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Revenue recognized           1,600,000 1,200,000          
Contract with customer, liability                   $ 600,000 $ 1,200,000  
Nestec Ltd. (Nestle Health Sciences) [Member] | Maximum [Member] | Global Development, Option and License Agreement [Member] | Research and Development Agreement [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Contingent receivable       85,000,000.0                
Nestec Ltd. (Nestle Health Sciences) [Member] | Maximum [Member] | Global Development, Option and License Agreement [Member] | Sales-Based Milestone [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Contingent receivable       $ 250,000,000.0                
Porton [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Revenue recognized           100,000 $ 0 $ 2,800,000        
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                  
Novartis [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Revenue recognized           2,400,000            
Contract with customer, liability   $ 5,000,000.0                    
Term of collaborative research and development agreement   20 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                    
Novartis [Member] | Royalty [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Term of collaborative research and development agreement   20 months                    
Roche [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Revenue recognized           700,000            
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                      
Takeda [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Revenue recognized           2,200,000            
Contract with customer, liability           6,400,000            
Takeda [Member] | Milestone Payment Per Target Gene [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Contingent receivable           100,000,000.0            
Takeda [Member] | Up-front Payment [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Contract with customer, liability           8,500,000            
Takeda [Member] | Research and Development Reimbursement [Member]                        
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]                        
Contingent receivable           $ 22,300,000            
XML 34 R14.htm IDEA: XBRL DOCUMENT v3.20.1
Capital Stock
3 Months Ended
Mar. 31, 2020
Equity [Abstract]  
Capital Stock Capital StockExercise of OptionsFor the three months ended March 31, 2020 and March 31, 2019, 5,333 and 218,572 shares, respectively, were issued upon option exercises at a weighted-average exercise price of $7.31 and $3.55 per share, respectively, with net cash proceeds of $39.0 thousand and $0.8 million, respectively.
XML 35 R10.htm IDEA: XBRL DOCUMENT v3.20.1
Net loss per Share
3 Months Ended
Mar. 31, 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 March 31,
 20202019
Shares issuable under the Equity Incentive Plan5,071  6,750  
XML 36 R18.htm IDEA: XBRL DOCUMENT v3.20.1
Subsequent Events
3 Months Ended
Mar. 31, 2020
Subsequent Events [Abstract]  
Subsequent Events Subsequent Events
Achievement of milestone under Platform Technology Transfer and License Agreement
In April 2020, we achieved a technology transfer milestone associated with the Novartis CodeEvolver® Agreement. We are entitled to receive $4.0 million within 60 days of achievement of the technology transfer milestone.
XML 37 R56.htm IDEA: XBRL DOCUMENT v3.20.1
Segment, Geographical and Other Revenue Information - Segment Reporting (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Segment Reporting Information [Line Items]    
Total revenues $ 14,670 $ 15,583
Cost of product revenue 2,541 4,391
Research and development 10,967 8,016
Selling, general and administrative 8,989 8,415
Total costs and operating expenses 22,497 20,822
Income (loss) from operations (7,827) (5,239)
Depreciation and amortization (438) (319)
Income (loss) before income taxes (7,647) (5,133)
Stock-based compensation 2,169 2,063
Performance Enzymes [Member]    
Segment Reporting Information [Line Items]    
Total revenues 10,874 10,087
Novel Biotherapeutics [Member]    
Segment Reporting Information [Line Items]    
Total revenues 3,796 5,496
Operating Segments [Member]    
Segment Reporting Information [Line Items]    
Total revenues 14,670 15,583
Cost of product revenue 2,541 4,391
Research and development 10,621 7,759
Selling, general and administrative 2,936 2,618
Total costs and operating expenses 16,098 14,768
Income (loss) from operations (1,428) 815
Income (loss) before income taxes (7,647) (5,133)
Stock-based compensation 2,169 2,063
Operating Segments [Member] | Performance Enzymes [Member]    
Segment Reporting Information [Line Items]    
Total revenues 10,874 10,087
Cost of product revenue 2,541 4,391
Research and development 5,696 4,442
Selling, general and administrative 2,345 2,101
Total costs and operating expenses 10,582 10,934
Income (loss) from operations 292 (847)
Stock-based compensation 756 636
Operating Segments [Member] | Novel Biotherapeutics [Member]    
Segment Reporting Information [Line Items]    
Total revenues 3,796 5,496
Research and development 4,925 3,317
Selling, general and administrative 591 517
Total costs and operating expenses 5,516 3,834
Income (loss) from operations (1,720) 1,662
Stock-based compensation 241 141
Corporate [Member]    
Segment Reporting Information [Line Items]    
Total costs and operating expenses (5,727) (5,575)
Depreciation and amortization (492) (373)
Stock-based compensation 1,172 1,286
Product Sales [Member]    
Segment Reporting Information [Line Items]    
Total revenues 5,100 7,988
Product Sales [Member] | Performance Enzymes [Member]    
Segment Reporting Information [Line Items]    
Total revenues 5,100 7,988
Product Sales [Member] | Operating Segments [Member]    
Segment Reporting Information [Line Items]    
Total revenues 5,100 7,988
Product Sales [Member] | Operating Segments [Member] | Performance Enzymes [Member]    
Segment Reporting Information [Line Items]    
Total revenues 5,100 7,988
Research and Development Revenue [Member]    
Segment Reporting Information [Line Items]    
Total revenues 9,570 7,595
Research and Development Revenue [Member] | Performance Enzymes [Member]    
Segment Reporting Information [Line Items]    
Total revenues 5,774 2,099
Research and Development Revenue [Member] | Novel Biotherapeutics [Member]    
Segment Reporting Information [Line Items]    
Total revenues 3,796 5,496
Research and Development Revenue [Member] | Operating Segments [Member]    
Segment Reporting Information [Line Items]    
Total revenues 9,570 7,595
Research and Development Revenue [Member] | Operating Segments [Member] | Performance Enzymes [Member]    
Segment Reporting Information [Line Items]    
Total revenues 5,774 2,099
Research and Development Revenue [Member] | Operating Segments [Member] | Novel Biotherapeutics [Member]    
Segment Reporting Information [Line Items]    
Total revenues $ 3,796 $ 5,496
XML 38 R52.htm IDEA: XBRL DOCUMENT v3.20.1
Commitments and Contingencies - Future Minimum Lease Payments (Details)
$ in Thousands
Mar. 31, 2020
USD ($)
Finance Leases  
2020 (remaining 9 months) $ 9
2021 0
2022 0
2023 0
2024 0
2025 and thereafter 0
Total minimum lease payments 9
Less: imputed interest 0
Lease Obligations 9
Operating Leases  
2020 (remaining 9 months) 2,462
2021 4,197
2022 4,285
2023 4,589
2024 4,726
2025 and thereafter 13,494
Total minimum lease payments 33,753
Less: imputed interest (7,619)
Lease Obligations $ 26,134
XML 39 R60.htm IDEA: XBRL DOCUMENT v3.20.1
Segment, Geographical and Other Revenue Information - Goodwill (Details) - USD ($)
$ in Thousands
Mar. 31, 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 3,241
Operating Segments [Member] | Performance Enzymes [Member]    
Segment Reporting Information [Line Items]    
Goodwill 2,463 2,463
Operating Segments [Member] | Novel Biotherapeutics [Member]    
Segment Reporting Information [Line Items]    
Goodwill $ 778 $ 778
XML 40 R43.htm IDEA: XBRL DOCUMENT v3.20.1
Balance Sheets Details - Goodwill (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Balance Sheet Details [Abstract]    
Goodwill $ 3,241 $ 3,241
XML 41 R47.htm IDEA: XBRL DOCUMENT v3.20.1
Capital Stock - Textual (Details) - USD ($)
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Equity [Abstract]    
Stock options exercised (shares) 5,333 218,572
Weighted average exercise price of stock options exercised (usd per share) $ 7.31 $ 3.55
Proceeds from exercises of stock options $ 39,000.0 $ 776,000
XML 42 R26.htm IDEA: XBRL DOCUMENT v3.20.1
Commitments and Contingencies (Tables)
3 Months Ended
Mar. 31, 2020
Commitments and Contingencies Disclosure [Abstract]  
Lease cost
Lease related costs were as follows (in thousands):
Three Months Ended March 31,
 20202019
Finance lease costs:
Amortization of right-of-use assets$54  $54  
Interest on lease obligations—   
Finance lease costs54  58  
Operating lease cost1,068  1,178  
Short-term lease cost (1)
31  —  
Sublease income(55) (211) 
Total lease cost$1,098  $1,025  
(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 March 31, 2020 was as follows:
Operating LeasesFinance Leases
Weighted-average remaining lease term (in years)7.4 years0.1 years
Weighted-average discount rate6.6 %5.0 %
Cash paid for amounts included in the measurement of lease obligations was as follows (in thousands):
Three Months Ended March 31,
20202019
Operating cash flows from operating leases$354  $812  
Operating cash flows from finance leases$—  $ 
Financing cash flows from finance leases$51  $59  
Operating lease maturity
As of March 31, 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,Finance LeasesOperating Leases
2020 (remaining 9 months)$ $2,462  
2021—  4,197  
2022—  4,285  
2023—  4,589  
2024—  4,726  
2025 and thereafter—  13,494  
Total minimum lease payments 33,753  
Less: imputed interest—  (7,619) 
Lease Obligations$ $26,134  
Finance lease liability
As of March 31, 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,Finance LeasesOperating Leases
2020 (remaining 9 months)$ $2,462  
2021—  4,197  
2022—  4,285  
2023—  4,589  
2024—  4,726  
2025 and thereafter—  13,494  
Total minimum lease payments 33,753  
Less: imputed interest—  (7,619) 
Lease Obligations$ $26,134  
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  $847  
Development and manufacturing services agreementsSeptember 2019  5,084  
Total other commitments$5,931  
XML 43 R22.htm IDEA: XBRL DOCUMENT v3.20.1
Cash Equivalents (Tables)
3 Months Ended
Mar. 31, 2020
Cash Equivalents and Marketable Securities [Abstract]  
Schedule of cash equivalents and marketable securities
Cash equivalents at March 31, 2020 and December 31, 2019 consisted of the following (in thousands):
 March 31, 2020December 31, 2019
 Adjusted CostEstimated
Fair Value
Adjusted CostEstimated Fair Value
Money market funds (1)
$68,460  $68,460  $71,248  $71,248  
(1) Money market funds are classified in cash and cash equivalents on our unaudited condensed consolidated balance sheets.
XML 44 R8.htm IDEA: XBRL DOCUMENT v3.20.1
Basis of Presentation and Summary of Significant Accounting Policies
3 Months Ended
Mar. 31, 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 months ended March 31, 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 March 31, 2020, results of our operations for the three
months ended March 31, 2020 and 2019, changes in stockholders' equity for the three months ended March 31, 2020 and 2019, and cash flows for the three months ended March 31, 2020 and 2019. The interim results are not necessarily indicative of the results for any future interim periods or for the entire year. The results of the three months ended March 31, 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 a 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 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:
Valuation Allowance 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 months ended March 31, 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.
Valuation Allowance 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.
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 quarter ended March 31, 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 March 31, 2020 and the assigned goodwill to its fair value at March 31, 2020. We concluded that there was no goodwill impairment at March 31, 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 our 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: 1) permitting net operating loss carrybacks to offset 100% of taxable income for taxable years beginning before 2021, 2) accelerating alternative minimum tax credit refunds, 3) temporarily increasing the allowable business interest deduction from 30% to 50% of adjusted taxable income, and 4) 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 on January 1, 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 of this standard 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 on January 1, 2020 using a prospective approach. The adoption of this standard 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 on January 1, 2020. Adoption of this standard 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 on January 1, 2020. Adoption of this standard 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.
XML 45 R4.htm IDEA: XBRL DOCUMENT v3.20.1
Condensed Consolidated Statements of Operations - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Revenues:    
Total revenues $ 14,670 $ 15,583
Costs and operating expenses:    
Cost of product revenue 2,541 4,391
Research and development 10,967 8,016
Selling, general and administrative 8,989 8,415
Total costs and operating expenses 22,497 20,822
Loss from operations (7,827) (5,239)
Interest income 266 231
Other expenses, net (86) (125)
Loss before income taxes (7,647) (5,133)
Provision for income taxes 5 3
Net loss $ (7,652) $ (5,136)
Net loss per share, basic and diluted (usd per share) $ (0.13) $ (0.09)
Weighted average common stock shares used in computing net loss per share, basic and diluted (shares) 58,888 54,170
Product Sales [Member]    
Revenues:    
Total revenues $ 5,100 $ 7,988
Research and Development Revenue [Member]    
Revenues:    
Total revenues $ 9,570 $ 7,595
XML 46 R9999.htm IDEA: XBRL DOCUMENT v3.20.1
Label Element Value
Restricted Cash and Cash Equivalents us-gaap_RestrictedCashAndCashEquivalents $ 1,785,000
Restricted Cash and Cash Equivalents us-gaap_RestrictedCashAndCashEquivalents 1,723,000
Restricted Cash and Cash Equivalents us-gaap_RestrictedCashAndCashEquivalents $ 1,689,000
XML 47 R16.htm IDEA: XBRL DOCUMENT v3.20.1
Segment, Geographical and Other Revenue Information
3 Months Ended
Mar. 31, 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 our 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 table provides financial information by our reportable business segments along with a reconciliation to consolidated loss before income taxes (in thousands):
Three months ended March 31, 2020Three months ended March 31, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Revenues:
Product revenue$5,100  $—  $5,100  $7,988  $—  $7,988  
Research and development revenue5,774  3,796  9,570  2,099  5,496  7,595  
Total revenues10,874  3,796  14,670  10,087  5,496  15,583  
Costs and operating expenses:
Cost of product revenue2,541  —  2,541  4,391  —  4,391  
Research and development(1)
5,696  4,925  10,621  4,442  3,317  7,759  
Selling, general and administrative(1)
2,345  591  2,936  2,101  517  2,618  
Total segment costs and operating expenses10,582  5,516  16,098  10,934  3,834  14,768  
Income (loss) from operations$292  $(1,720) (1,428) $(847) $1,662  815  
Corporate costs (2)
(5,727) (5,575) 
Depreciation and amortization(492) (373) 
Loss before income taxes$(7,647) $(5,133) 
(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 table provides stock-based compensation expense included in loss from operations (in thousands):
Three months ended March 31,
20202019
Performance EnzymesNovel BiotherapeuticsCorporate costTotalPerformance EnzymesNovel BiotherapeuticsCorporate costTotal
Stock-based compensation$756  $241  $1,172  $2,169  $636  $141  $1,286  $2,063  
Significant Customers
Customers that each accounted for 10% or more of our total revenues were as follows:
Three Months Ended March 31,
20202019
Customer A24 %41 %
Customer B19 %— %
Customer C15 %— %
Customer D11 %35 %
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
March 31, 2020December 31, 2019
Customer A47 %38 %
Customer D— %10 %
* 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 March 31,
20202019
Revenues
Americas$5,225  $2,838  
EMEA5,971  7,726  
APAC3,474  5,019  
Total revenues$14,670  $15,583  

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


Identifiable goodwill was as follows (in thousands):
March 31, 2020December 31, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Goodwill  $2,463  $778  $3,241  $2,463  $778  $3,241  
XML 48 R12.htm IDEA: XBRL DOCUMENT v3.20.1
Fair Value Measurements
3 Months Ended
Mar. 31, 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 March 31, 2020 and December 31, 2019 by level within the fair value hierarchy (in thousands):
 March 31, 2020
 Level 1Level 2Level 3Total
Money market funds $68,460  $—  $—  $68,460  

 December 31, 2019
 Level 1Level 2Level 3Total
Money market funds$71,248  $—  $—  $71,248  
XML 49 R31.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue Recognition - Disaggregation of Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Disaggregation of Revenue [Line Items]    
Total revenues $ 14,670 $ 15,583
Americas [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 5,225 2,838
EMEA [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 5,971 7,726
APAC [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 3,474 5,019
Product Sales [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 5,100 7,988
Research and Development Revenue [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 9,570 7,595
Performance Enzymes [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 10,874 10,087
Performance Enzymes [Member] | Americas [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 2,999 2,838
Performance Enzymes [Member] | EMEA [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 4,401 2,230
Performance Enzymes [Member] | APAC [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 3,474 5,019
Performance Enzymes [Member] | Product Sales [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 5,100 7,988
Performance Enzymes [Member] | Research and Development Revenue [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 5,774 2,099
Novel Biotherapeutics [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 3,796 5,496
Novel Biotherapeutics [Member] | Americas [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 2,226  
Novel Biotherapeutics [Member] | EMEA [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues 1,570 5,496
Novel Biotherapeutics [Member] | Research and Development Revenue [Member]    
Disaggregation of Revenue [Line Items]    
Total revenues $ 3,796 $ 5,496
XML 50 R35.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue Recognition - Performance Obligation (Details)
$ in Thousands
Mar. 31, 2020
USD ($)
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 8,536
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-04-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 5,842
Expected timing of satisfaction, period 9 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,071
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 $ 1,623
Expected timing of satisfaction, period
Product Sales [Member]  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 2,053
Product Sales [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-04-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 66
Expected timing of satisfaction, period 9 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 $ 364
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,623
Expected timing of satisfaction, period
Research and Development Revenue [Member]  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 6,483
Research and Development Revenue [Member] | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-04-01  
Revenue, Initial Application Period Cumulative Effect Transition [Line Items]  
Performance obligation $ 5,776
Expected timing of satisfaction, period 9 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 $ 707
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 $ 0
Expected timing of satisfaction, period
XML 51 R39.htm IDEA: XBRL DOCUMENT v3.20.1
Cash Equivalents - Additional Information (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Mar. 31, 2019
Cash and Cash Equivalents [Line Items]      
Cash and cash equivalents $ 87,327 $ 90,498 $ 47,322
Money Market Funds [Member]      
Cash and Cash Equivalents [Line Items]      
Cash and cash equivalents 68,460 71,248  
Cash [Member]      
Cash and Cash Equivalents [Line Items]      
Cash and cash equivalents $ 18,800 $ 19,300  
XML 52 R58.htm IDEA: XBRL DOCUMENT v3.20.1
Segment, Geographical and Other Revenue Information - Revenues by Geographic Area (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Segment Reporting Information [Line Items]    
Total revenues $ 14,670 $ 15,583
Americas [Member]    
Segment Reporting Information [Line Items]    
Total revenues 5,225 2,838
EMEA [Member]    
Segment Reporting Information [Line Items]    
Total revenues 5,971 7,726
APAC [Member]    
Segment Reporting Information [Line Items]    
Total revenues $ 3,474 $ 5,019
XML 53 R54.htm IDEA: XBRL DOCUMENT v3.20.1
Related Party Transactions - Textual (Details) - USD ($)
$ in Millions
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Dec. 31, 2019
Related Party Transaction, Due from (to) Related Party [Abstract]      
Revenue from related parties $ 0.1 $ 0.0  
Accounts receivable from related parties $ 0.1   $ 0.3
XML 54 R50.htm IDEA: XBRL DOCUMENT v3.20.1
Commitments and Contingencies - Other Lease Information (Details)
Mar. 31, 2020
Commitments and Contingencies Disclosure [Abstract]  
Operating Leases - Weighted-average remaining lease term (in years) 7 years 4 months 24 days
Finance Leases - Weighted-average remaining lease term (in years) 1 month 6 days
Operating Leases - Weighted-average discount rate 6.60%
Finance Leases - Weighted-average discount rate 5.00%
XML 55 R41.htm IDEA: XBRL DOCUMENT v3.20.1
Balance Sheets Details - Inventories (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Schedule of Inventory Components    
Raw materials $ 104 $ 7
Work-in-process 8 26
Finished goods 589 338
Inventories $ 701 $ 371
XML 56 R45.htm IDEA: XBRL DOCUMENT v3.20.1
Stock-based Compensation - Textual (Details)
$ in Millions
1 Months Ended 3 Months Ended
Jun. 30, 2019
installment
shares
Mar. 31, 2020
USD ($)
Mar. 31, 2019
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    
Compensation not yet recognized, stock options   $ 4.7  
Stock options [Member] | Tranche One [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights 25.00%    
Stock options [Member] | Tranche Two [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights 75.00%    
Restricted Stock Units (RSUs) [Member] | Tranche One [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights 33.00%    
Restricted Stock Units (RSUs) [Member] | Tranche Two [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights 25.00%    
Performance Shares [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Performance awards, threshold level, number of shares, multiplier 0    
Performance Shares [Member] | Tranche One [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights 50.00%    
Performance Shares [Member] | Tranche Two [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights 50.00%    
RSAs and RSUs [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Compensation not yet recognized, share-based awards other than options   2.4  
Performance Stock Units (PSUs) [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Compensation not yet recognized, share-based awards other than options   1.2  
Performance Based Options (PBOs) [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Compensation not yet recognized, share-based awards other than options   $ 2.0  
2019 Plan [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Number of shares available for grant (in shares) | shares 7,897,144    
Maximum number of shares to be issued upon exercise of stock options (in shares) | shares 14,000,000    
Number of shares authorized (in shares) | shares 8,100,000    
2019 Plan [Member] | Performance Shares [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Number of installments | installment 2    
2019 Plan [Member] | Performance Shares [Member] | Tranche One [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights 50.00%    
2019 Plan [Member] | Performance Shares [Member] | Tranche Two [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights 50.00%    
2020 PSU and PBO Plan [Member] | Performance Shares [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] | Performance Shares [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Estimated performance goal achievement rate   84.00%  
2019 PSU and PBO Plan [Member] | Performance Shares [Member] | Tranche One [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights   50.00%  
2019 PSU and PBO Plan [Member] | Performance Shares [Member] | Tranche Two [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights   50.00%  
2018 PSU and PBO Plan [Member] | Performance Shares [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] | Performance Shares [Member] | Tranche One [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights     50.00%
2018 PSU and PBO Plan [Member] | Performance Shares [Member] | Tranche Two [Member]      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Award vesting rights     50.00%
XML 57 R49.htm IDEA: XBRL DOCUMENT v3.20.1
Commitments and Contingencies - Lease Cost (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Finance lease costs:    
Amortization of right-of-use assets $ 54 $ 54
Interest on lease obligations 0 4
Finance lease costs 54 58
Operating lease cost 1,068 1,178
Short-term lease cost 31 0
Sublease income (55) (211)
Total lease cost $ 1,098 $ 1,025
XML 58 R62.htm IDEA: XBRL DOCUMENT v3.20.1
Allowance for Credit Losses - Summary of Finance Receivables by Aging Category (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Financing Receivable, Allowance for Credit Loss [Line Items]    
Financing receivable, past due $ 785 $ 257
Financing receivable, not past due 7,599 8,806
Accounts Receivable, before Allowance for Credit Loss, Current 8,384 9,063
Financial Asset, 30 to 59 Days Past Due [Member]    
Financing Receivable, Allowance for Credit Loss [Line Items]    
Financing receivable, past due 745 185
Financial Asset, 60 to 89 Days Past Due [Member]    
Financing Receivable, Allowance for Credit Loss [Line Items]    
Financing receivable, past due 0 7
Financial Asset, Equal to or Greater than 90 Days Past Due    
Financing Receivable, Allowance for Credit Loss [Line Items]    
Financing receivable, past due $ 40 $ 65
XML 59 R2.htm IDEA: XBRL DOCUMENT v3.20.1
Condensed Consolidated Balance Sheets - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Current assets:    
Cash and cash equivalents $ 87,327 $ 90,498
Restricted cash, current 627 661
Financial assets:    
Accounts receivable 8,384 9,063
Contract assets 619 1,027
Unbilled Contracts Receivable 13,949 10,099
Financing Receivable, before Allowance for Credit Loss, Total 22,952 20,189
Less: allowances (34) (34)
Total Financial assets, net 22,918 20,155
Inventories 701 371
Prepaid expenses and other current assets 2,989 2,520
Total current assets 114,562 114,205
Restricted cash 1,062 1,062
Accounts Receivable, before Allowance for Credit Loss 8,384 9,063
Right-of-use assets - Operating leases, net 23,199 23,837
Right-of-use assets - Finance leases, net 214 268
Property and equipment, net 6,647 6,282
Goodwill 3,241 3,241
Other non-current assets 547 178
Total assets 149,472 149,073
Current liabilities:    
Accounts payable 2,441 2,621
Accrued compensation 3,124 5,003
Other accrued liabilities 8,923 6,540
Current portion of lease obligations - Operating leases 1,815 1,107
Current portion of lease obligations - Finance leases 9 60
Deferred revenue 5,970 57
Total current liabilities 22,282 15,388
Deferred revenue, net of current portion 2,566 1,987
Long-term lease obligations - Operating leases 24,319 24,951
Other long-term liabilities 1,239 1,230
Total liabilities 50,406 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,017 shares and 58,877 shares issued and outstanding at March 31, 2020 and December 31, 2019, respectively 6 6
Additional paid-in capital 449,121 447,920
Accumulated deficit (350,061) (342,409)
Total stockholders' equity 99,066 105,517
Total liabilities and stockholders' equity $ 149,472 $ 149,073
XML 60 R6.htm IDEA: XBRL DOCUMENT v3.20.1
Condensed Consolidated Statements of Cash Flows - USD ($)
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Operating activities:    
Net loss $ (7,652,000) $ (5,136,000)
Adjustments to reconcile net loss to net cash used in operating activities:    
Depreciation 438,000 319,000
Amortization expense - right-of-use assets - operating and finance leases 692,000 759,000
Stock-based compensation 2,169,000 2,063,000
Unrealized loss on investment in equity securities 0 103,000
Changes in operating assets and liabilities:    
Accounts receivable, net 679,000 (1,053,000)
Contract assets 408,000 35,000
Unbilled receivables (3,850,000) (7,000)
Inventories (330,000) (44,000)
Prepaid expenses and other current assets (469,000) (163,000)
Other non-current assets (369,000) 38,000
Accounts payable (246,000) (999,000)
Accrued compensation (1,879,000) 1,196,000
Other accrued liabilities 3,116,000 3,591,000
Other long-term liabilities (624,000) (616,000)
Deferred revenue 6,492,000 (2,937,000)
Net cash used in operating activities (1,425,000) (2,851,000)
Investing activities:    
Purchase of property and equipment (761,000) (445,000)
Net cash used in investing activities (761,000) (445,000)
Financing activities:    
Proceeds from exercises of stock options 39,000.0 776,000
Payments of lease obligations - Finance leases (51,000) (59,000)
Taxes paid related to net share settlement of equity awards (1,007,000) (2,799,000)
Net cash used in financing activities (1,019,000) (2,082,000)
Net decrease in cash, cash equivalents and restricted cash (3,205,000) (5,378,000)
Cash, cash equivalents and restricted cash at the beginning of the period 92,221,000 54,485,000
Cash, cash equivalents and restricted cash at the end of the period 89,016,000 49,107,000
Supplemental disclosure of cash flow information    
Interest paid 4,000 22,000
Purchase of property and equipment recorded in accounts payable and accrued expenses 182,000 142,000
Total cash, cash equivalents and restricted cash at the end of the period $ 89,016,000 $ 49,107,000
XML 61 R28.htm IDEA: XBRL DOCUMENT v3.20.1
Allowance for Credit Losses (Tables)
3 Months Ended
Mar. 31, 2020
Receivables [Abstract]  
Allowance for Credit Losses
An analysis of the allowance for credit losses is as follows (in thousands):
Three months ended March 31, 2020
Beginning Balance January 1, 2020$34  
Write-offs charged against the allowance—  
Recoveries of amounts previously written off—  
Ending Balance March 31, 2020$34  
Financing Receivable, Past Due
The following tables below summarizes accounts receivable by aging category (in thousands):
March 31, 2020
31-60 Days61-90 Days91 days and overTotal over 31 daysCurrentTotal balance
Accounts receivable$745  $—  $40  $785  $7,599  $8,384  

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 62 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 63 R24.htm IDEA: XBRL DOCUMENT v3.20.1
Balance Sheets Details (Tables)
3 Months Ended
Mar. 31, 2020
Balance Sheets Details [Abstract]  
Schedule of inventory components
Inventories consisted of the following (in thousands):
March 31, 2020December 31, 2019
Raw materials$104  $ 
Work-in-process 26  
Finished goods589  338  
    Inventories$701  $371  
Schedule of property and equipment, net
Property and equipment, net consisted of the following (in thousands):
March 31, 2020December 31, 2019
Laboratory equipment$24,323  $23,561  
Leasehold improvements10,804  10,804  
Computer equipment and software3,098  3,016  
Office equipment and furniture1,329  1,461  
Construction in progress467  691  
Property and equipment40,021  39,533  
       Less: accumulated depreciation and amortization(33,374) (33,251) 
     Property and equipment, net$6,647  $6,282  
Schedule of accrued liabilities
Other accrued liabilities consisted of the following (in thousands):
March 31, 2020December 31, 2019
Accrued purchases $5,654  $4,386  
Accrued professional and outside service fees3,111  1,802  
Other158  352  
     Total$8,923  $6,540  
ZIP 64 0001200375-20-000020-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001200375-20-000020-xbrl.zip M4$L#!!0 ( %.&J% X/;^[XV(" *<.'@ 1 8V1XZ&[?A9DV?2QA@[ W?/'*$0HTT!H, MXM>_D24) XUM,!)2R>5>#4A5E565\<28D1%__+^K5K/R.71[6:?]YPI>12N5 M__?ZC_^O6OW/F_VWE94RCJHD85P5RC@9E5,#^ MMY,U9@2Q.)"J)RQ4F<.JJCWEU6"H\)$&HY#_S:\%BZ.UU++@!"/,:*2ET Q% MS8WU1*7;GO;A[> -V[VUK-=A!,L_5T[[_8NU5Z\N+R]7KVRWN=KIGKPB"-%7 MXS-6QA<,>M438RYN+HBF9_.3QP?@(JRK"%KK >_6Z_2 ME"#ZY>3LJE_M!7?G?/B\>M+Y_"IK-[-V2"1XU>^:=B]VNBW3!Q*EF_(J4M4[ MXSS\4M\;A%2)& ]R9X!+FE^.M=:OKM(,3N[4Z_;_.1OPY0,SD1XB^]9F%V\/[+^/?/EF\&AV\.;67/?1V<"9^]9_:VP-W&EJF M>O]YKO[Q0'=F)1W],O]?>W!,;]%@'#8X\/IO'E>'Q@CF#\ZS]:H6\JZ9IJ^'N0??YS9:/3[@/+5QO#"Y@. M-_KTYTH_7/5?Y6AX]?J__NN__NAG_69XG1!?G2#[CU>C+_]X-1K:=OSP]1\^ M^USI]8?-\.>*SWH733-<:W?: 1X@NUI+)X;NZ,_,^]#._X3C=9 [WZT-6 M^WB<'9W5L_K.A[/ZV?MA?6>+US;/:?WL'-5VCGC]XW9VO+G+WM)Z\^CZHGET MMMTZ:NU>'YWMP^M1Z/]S;5N@M.1X>?72B MMGG:T=G;RV>]L9W;G4!R= M.7+T\3VMG;V_W<S^N;NZ1.=AE\AX[(%JOM_'5VW-H='EU/KOD ]^+MX\9% M5K\^/CW>=,/ZYCK?@_-K9T?TZ.P4OML_.VJ<7!ZUZJVCL[_.X!F';QM;_=H! MNGK;6/\$LTR-]Z3*'?4@PP6MF@"@52Q*C"A(7\E67B,@0II_R?]X=8>>LR3O M.F@JG[35=M.LXTCX+I;L,WO9*VWZ,MNDU;SH/DTJ(J)3S1ULJJT<95;0#3 MRCM%< !IG.9_;J1]!^-W?$G<1Q$7WR$NL"9(6U[%C,&IP+'<,+W3]7;^:RN9H:8). %9D( "%]#Y(N2J MWMBZG*"DWG"D=GURN;?I.%"W">>>UV&HWOB"DOK' M#X"L#\WCL]JPWGI/ZYOULZ/67ZWC,W=9/UL'Y)P,ZV>'UT>-K7LHZ>#CCT?7 MQ^GZZUT":$$U4L^.6L>M^O4ZJ27D),0UZJ>U#^KR;6-WC)(M5#_;99]$H-R1 M**N*:%UE6K"J9?"#RB"BU8@"?P-4?I.$3J RP<8W102E5&B*@_12,Q&U)EIA MH8(T6H""H0D<#TB&Y/"N^4$W%P[_1,/GT!Z$??#'LG;6/@&ED%\*;MF>;68G MN>^Z=741$F :60M.V8L'\&TOCIYXI$7PG*5);:A;KK7=WFLE27)(]AK[I_4& MG)MSXZWQR#=QK<$P 8RVXS_7V>?ULNUG_ M>'@-SP72Z@3O-">B"]@8"1+D*>@P)&)L7)#:$<:8 M-8XQQ0W5UA.+\!UT7/6RM7;6_'.EWQV$$A/SQ 2^P03%T8.Y&:M!,/ HK+75 M9!2 T0E^AJ:6HN!77C\%$IA(:A@8JSYH%A735$3J10PD&H&T*O7)8J,CNZ5/ ME &3E'M?Q5&C*D,45[6,IFI1Y A\41_)4_4)=H !ZXQA CR2!#+0)$XY(4B, M#CR24I\L-CINZ1/$P*- :?W!<; VM*L:Y&DU.99@4 ;P.<,3]8F@ #B @B2* M,BR$EB!$O/;286LTXJ4^64A,?-$G0N 8L=75Z+6J,FI0U6+#JI$IC*1"\(\^ M39]XS5BPUA 7-0M$*1.D\B@FB!"KOB5<5 E.DA3%0R!_^J-!F_EJ_KDG['1]J!E0_=> M>!2DA"(F,N>Q8 YLTZ B@H\Z]VN:9^$M%;R9OCEE'=FF+Y:OS1=G__X$'I]P,]^2K_I M 6X<'#4GX2:$6B7S11']@J(C"A1'1V27'IV].3T^>\_2=75R.*Q_/#ZK;1YG M>SLU7&^\9SZMKE]"L]&ZJ3&CTB]66NOSX7T4 M'9W5\''C$,'OR]K'K135IT?7S;,C-]]=[C;_NQL6" 9@H$:K! M2U9E#L2+0514D<(*'%TB''/!I(EX/F&$!%AS#GPIB/F,G"$&8@@ M5P*IV$""]S[!GRR8H]@[6Q682'![+!@Q2NFJH@A9Y*U$"M041\\$D\+1(Z*B M\T8QK4 ,1N=2^,YI3)PLI5(AP93= Q.H&X()#57$(M@\ JFJCMQ7C> $46(X ME?)A,+VZFVC5#3%T Y@CO==_I)RVM5Z>#@=8JN0Y;FO]X050J9>U+IHI-R[_ M[K2;H'8G\VOUJI<'_.Z.,;K=[7OD'WN=03?_E"<)KHWQ.X+!CRP]3P8*>7K7 MY%/FT^>8A6XE?Z#P8*+EQN[_WLU6NG_QZ\E7=T>_R VSR:=>WW3[:2$[SZ)( M"78(3Z[[WS@Y,A)LO\I [(QSBX$Q_GCUX%@WTW-SRQ=$X6V>!OLC-U5N M)MAGGV%B;I^:^X*FW^G^(/O_X_KTY69H=\"W?VC8QPKI.T.\NOOTWY4^:6<$ M)3&2%.Q"Q ;I&-')8]4.P#@'G?HC$'S7[?B!Z^]U#T+W<^;"&'U@ADP.'8!) MV1M=/$THSD6[WZ6@L(9'Q1)IF.=48\>)]DJF1#!FQ-BJQQ.KOJ3@URDXVF#Q M* JF4Z=$P0@ZCQCCC:&"$4$T^()&./A226T(+3X/[H=>,%UW:F"2PN?0[%RD M<<<1T*5D2@=>%DDY,%PR8KQ"VD9'P+RQ$C/)BL^4$3.2,>NB-R]GW3^5 VZB M7!/[-F4?]X/_YFX'=K(?'F"L< 9$$5I M);!D5'."#=5T:4BS[GV68ERF^]82ZROFD6A$PA&">=!). +F8ULCJ MZ!B78+8S:,*, M#WYQ(ZB+)'IG$MZ7&#N/G(M"!#!:<$J_M0C(XPS%1M&E(K)? "7LJ/5E-S #CQ0C#M-':&$6PMH99SAEC0'HBCEX8T\_"CIT F"^W7C4]%P@8CCFJ(E?,8FJ% M#@'THQ9<*W!=EX8T\UFOFA:9&$-!"H^\1(992Y7D9%3E16@MB%H:,KWP>M6T MZ..%P\0X190@C&J;U!;FVEI/E?+B!27YUX:^SX/JW,GPV-O\C,&;? ?6C'S25#-Z+M_8& MW==&S::QG2X\V.=PZZSGWCZE,6VD+.30O0#S85@WK=MI3/70ZP?WMN]7TU_- M\.]@FOW3 Y?EFU)F;-_DCN/C[)M[/N8/[@;IAHM$_?9)^N8?NQCR";DYY1!. MF8SWKL=C(;HW4YO_;+Q>ZM]/6S- G8SB4AKBAF(41X0]JGA4P7%1J<;QE\OXVJZ0\X@KR,X6H1A;L&"!U87!D7C<-2T )&- MGQTX\PF>,"N\\MB%E#=%G-(,FZ =$HZG?:)%R)R:8=Y[,9$T'Q%$K;$D84=I MR91)J,*!LZB-FB3$%AH\Q040#C@3#"ID0=4#:@58C7$=9 M?+6V,)A:$HV=\!.$"X9 MMLJB5/?84A8\3X6!"J#Q%E)"S"DA.5CG0E"$6 LNM]96*,(=MN![>X/(DE'S MI[$AC$+$!6'!?O ,2:JHMLHYS_(49^\*(/D7DDOG(W.E8](X88 I!:/*6!P3 MDPH,*AU15,@4CL7BTCGI4NDX(HH@)Q3C5&JKF:544.X8%:@H94V^45DG'5[/ M:Y.:Y0Q@S4>\,X0MYH@:@RW3SAF"&/&IZESD%H1$"9P"R9[Y0,AC&:@#PQU3 MQXS@AD;/B4-!&T050S\5A I)0>VYUDHJ:X1A' >M&&-*R@@"@5I4E#C1 @J! M)3]K#Q4"8"$H+S$"+Z&B%E#YUT_-"\B*$#*<'H4)2$$EM)'=(&!P9N) :*>.X M4 Q3+%@H2BW.!10"2VXX1F*EQA'%*"FSV&OD'.8^^,# ^W"F!$Z!M,=\((25 MTT$0(2-5+%JC* @A$CW('DWE>$_#SP*A8E+0286(4H0#O835-MKH/-%&((*Q MT\77_SE'KK];WUA*U3&G8%64P0A%-*,4/-:0:G@Z+Y(O0IB7\^B*,B?4%))\ M K2[AO]L1)@)956D(0H@DL8.,1V++[:7F^GG5'H @5_H/)9&&N8=UHHS&Q2/ M G1&*I7RTZ"FF.2C5&B*@_12,Q&U)EIAH8(T6G@KYUX2+W7V\E]GP&>W+CV8 MS/*(UG_,9N!5WTGCW+1^2E2>[9UN4'IK A_)"G/K?S&;FH^!6N55M-)39N1H M]S\62&+#'0"]!/B4 8XG8JP$^(L W)"(L7%!:D<88]8XQA0W5%M/+,(EP*<- M<%("_$4!SBR1W!D/[F1DB$D5''@JWFH0ZHB)N9LH/Q,M<-H(P(Q#/F@6%=-4 M1.I%#"0:@;2:-RV63M@4VEQ\X$NB*,-":!E2H7PO';9&(SYOQ"\=Z@IM4"Z# MC(\2<\VXQ%XT#AXZ96=NPOU4Q/':\:"M8:XJ%D@2ID@E4<"PAR< M"V2\8UQ(S1#1P4A!2(A2RQ)URV1Z+0KJ$'+"(Z.Q9"#EK-(T:.(!=29J+7@1 M\C9NRE7#"#YK#E+IUH/@!MWL?M795$%YT,_)N!GIAO>#!\>X&[6 M5UZH/(T#=\\'>M,!Z&"!8:W#&O"M6,+W,#RH:DW5X^8^MG#9E&( MZ[FW%$MBI9/,,68,C\Y8917H>X7P/9&^B/7FYT&+'Q>YSRB6?J]5@G3&1ZI3 MT[C@F'7640LVFL&((CWW,,ABT6LFO&,ILHX;;W0D#'EDI8XX8.^!DY2T9-2M MHF29^R288H-[[8617L5HC&-$(4L<<8XP0J2,5!:E%NLW:%$+W>]V07JTU?N5 M3A?YC1K!G;8[S<[)L &'>S%T;S6^Z+1-V[_-' P8UD^ZX3$-, KIXDC%$6?1 MJ,@H QM6888)=A@([HG31=DG60)J45PCQ13WAE.#Y Z8R=KI\*D/-W0)A7 JO()8Z6*:6-%I("NJS!0E!4[!8N)7J7W,YS ME$9,#0(O03"$@K*"6BNY=#YB1-QBN\\E:.=J TQSA984'S"=]1_FB M G(1,'(PN+AH#E_*]N./[]3)IV;[4:=4L$J#TZ(8U5Y;99Q(B7E!..-"06R_ M6:-E#IW>%@:8\S'KK#'"<^>&S A;X?-J35>FBM.9F):*054MX(I M)S6S@ )P-3'5+G@6"19FL5W-GX_TT_3ND"=>&:FHC(PJI8'B#(O4G,T9$FW. M]1*CPI'^6UWXZRRXVW#::7:L:=[: [-W,0__358QF@[2...>!NO2WGC& M)+=!1^H$C<0ICU0LD?9-I$TV1JW?V1AU2Q1MP&1WC>LW.N,,\.U.=R^5[^R] M&2:Y==M"R\!LZG?:8:\]-=%8:@!,L$>54@7H@@9FB%/Z?.TLL)^3F'ZRA3 07 MI;8J6N:T45%B2:G%/D2$&"E^L*;$9Y%C-EQ&&TPJ7FP5H^"N"4>T0RQH'0TE M"YS?.WMD/%Q)X+%P>*'(PZ)$@)#"FCO!;."<*>P,3?55(]/"&6+, EZAN;_Q$8LQG+J&?QQHL:7M-*+S!*$*>5)8*"&R"$\J T MG5/!4:, (8L=PIG+CM/9"M!1R?N)"+L7Y9FQ!O]IA/?T C\R>FFY9%ZD[4O4 M&V04F W.<<.L'?A"P+S:\ESSP]&"64B)K30"-EA'G0 M04H'C]/^!N[9J+,V\,S(X%E(YBDAOC00OV.#Y2!_G UVCQ^>T_+-(+"_),,J M<*:#U"8*JK6.&'/%(QGKD 6T^Q<"EM_,9>EW@2@GF;N3._YB G-:6^]1),$+ M$QC%S'IG 0HV&FDM<5R1O/0[5DA35 *D0 !15:2K%$T!("809QDGADK'G,+* M:H^MB$8[G1;CR^7' B)E_JN&05HAJ.(R.,JPT=I[%()U:>\TMH5I2UC":K$6 M^QP()^*Y"8* KZR5=C1$KJ+5UAL<_5B=L<*ILW=@[W:^5W7PT:B94Z+8F DI'P*>%2'+CLT5$R1!T#(8IG\J):0VVDP]6,\RM]VQQ)="BYPY. _*+(H&Q\++Y']!*TFX_;D2Q#'#!1-#(6)%4:F M+'X35//K[Q9I* MVBV0;6\L!UTJB<"",.Z9H1P')95 SJJHEJ!*Y.SRF.;/>8JD'&&9HHR.H>@, MI9[!3V9Y1%;1,>?Q">?QPE&OWOD,WV8OD,O!'\][?$J\%VD,UCG"HV%.*6U) M!.=:PM?8$Y"ET#1@LVH* O,6Z%PQ)Q%&STH,,'CXM)A MT??H+1=.'#$!44^\=9AI":RJD)0..%=B:Z7Z27$R>R^T8#CAE(,KPY A,C % M$B7*H*,R.H)%'#1;?)P #%Q(2$BQ[?VL=_YF^":TW6G+=,]O)WGF?6!"=^OO M039"4ML?=&+_TG1+T7&OIB(6WF@KM ]@J 43F57<6FXK-QQL3(.:)H491 M(AGC46LBHDI=P:16&KL1DT\*!2[TQH""&I3['9BMF0N&1U<5G%[:OS6!:TN1 M8 P-Y-)'P2(!#>(C_MFA-7L;=&FA17ED$:EHP8EA!(&P"BQR+'$P5H[; M>A1;Y[P Z>:C<**7!B/!#;&&,:\,\T$$D O24X$,6_S-L],4!H<7VUTX^YT9 M3F-OS7>CRN?!FW>GIMLR+@SZF3/-C<[;OI^E0S+%[;(J@#4(:1%H2L*5-OH%]@8FD[UMLNX'TQR$-\.; M/_\-(R9+??@VV>EWB7-STF[[8M#OY6?@:;D(BR9+I\BZ!FFM(@=OD8$L11BL M?:()6";*NV!I6'S6+9'R,C+%@O2@02+/2"J)&K54G'$6K,P14H!*@9.*"N^: M)D^5N$F;^(Q>M((XPF$&#/$(&[8!:#5%/D*LX\EI@')'ADX'9H MQ$2PG&E!6=I>L61<]8_LOX)PE!;>*(OC-A$?8"PM>PY)P4VY)[,68N7 [C79[T&UG_<%W M\V@7A:DH9@8'0:TGD7EMM +S',P_^-.GOJ=+PE3SI-84>8M:;JBE!)PHQK") M*B@BL00C73#I#5\2WKJ5SM[K=PUYP.M8[[8.^Z0]2_&C926F] BY$/*:8+554(P+.EG8N4DF8 M%<4EY>3KK=9%LS,,MYER&0G)$A6)%%0*Q(P/B@6B$'*I%50$)BT0(3^$7C]K MG]PEX\&IZ8:\%'1RF^&2476_G.9=TX8'G6+GTI\;2D1;);QAFFC$@D&:".4, MXH'H$&3\": TQ=:?/S>4I+'(>L(("811ZQ2VFCIMM0Q11F)+*#T?2OOP8-W, M]8//P738SOJ]_8/#)8'3 %YGA*7D=S2;Z6EO(-(*IC?HAI'9=NN$R5B3XY// M:; '<:JHX%YPRE.36U&1Y78/GPO M!\-2ZV''&$\!K>A+L!9#6_\48%5>,N]8KQH60/BI)BN1!_,QD M%%X:G3:C>(>9"UZ)Z 5)9=AHQ,'*Q5^,FA+UGBG:"'IW<+C>]N_>[,TZ6C_% MY2VF'#&@8:B)B!&LC 4$$)OV)6/"70%2Q;^J: X.S6.I40!!,9N=&X$182T! MMT@PD-XZ2L]3%RWI%0 !%V"SY^(8KC\)$.>_IU52@U0 YSVRE*7$%-C+E.C4 MCH Q:^GRHW:*%FR)VI?J#I6*E2(6A J1\6AL!$ YP@.E3N!):OXB@_4K4%%+ M!I6[8:AI;;0B0GCC0\0&J&^0, M4Y%,C.*0>CY<#E(2O.>E?+; >(A6"MS*H5'@R4LD*Q+.+0LCY<"3'VCLJ%=8R,F!"*S26.@!_&HTL*C!' MCNK*'JSWP+G;/SA<2M4))E(J^HI\U)BE\)*2P6N/:$B)F$87EPU?EGKSX3T= M(A",!HHC93IR&RPQT1DGL<3C31D%YKW;D8:;C-5EY$(>D28!4Z4C J9S5@*G MI2JKPH EJUS!N7 .=)P//T;NJ= T:;_4V,/JI!0)9X(0B@S3R\./>0QRO-WM MW9N]I>3*J# /A""0JP;\266P4:2V=N< MLTGA4E0Y1[2*R#$; V:.85M2(Z%R@ MT3K0'$[^!')I*?->7G;C=._O^,\=TX-^=RT=F%S\K9W27T8*;M"%MWQX__7D MZ&.&O.N0XZBTE$*#!\Z0!MU+HG:<@JF*)"$+O-$D-2+:#Z:YU4LKNVG%UKE! M:]"$#WXS7'2#RW)$;X:>ZV:Y6;07)T77[J:;(4+0N]#NV)[K] MB-M&T0"N) M08(1%K$UE$?PO@VX'-91NL"-BJ9&.(9RJA6(:* ^0O"!Z+0U,R"NE.,^Q.!2 MDA1A"^P53HUH8(=MG(:>N0CFO"AE7(62X,$;C9 !VU*$M*A.C"1L""BT1.:L<6UV@X& MMA?^'L!%6Y_AQS^MIWLG/-=6*R!6V'2*D9!\ER57SC++O&%*61/3OA $8ED* MP0] MIG/09@ ')G%(IS?C:.@4:_(J!%:CCV!_H,BT(-IAAS$!-S9PT'$+W("TF*2; MYA)/1#05!53:!:"4-M830L&0I)(*0D=UW23<,9=6\ =1BR:M9!611TJK_%2B MIB"M?.KNGC9Z*JGAE]62(T]U8)@*CNBH9\RB3-]X8$X2/T8.FR#G!8RC'T .>SQRV)3J/Q$O D82!X&84%2!P%08 MK .K Z!*C9&S&--U%SE3LI# (N)4.*[2$RM1<)%CZP)\6N36E2.3]*0; M\N3_A(#;INI%-VO"1(EIQ3D/!A<7S>%&I]7*^NE^]PWVNT<+HG LB1%9[,$R M /G)K&82#.3 >&2!&EN OFA3)>?"6A$+"8".B5D2-C5Z@3;4DT@^8 MX[?)]!US?%HK\Z!T+)?@^4K%F$ F&@^>#'*I*PK3HD 4_6"ZF;'-L']C)-RT M_.RT?>KUU ]=:]KG>S$&(&PZ[^WNF[W]:1FL6X(*!*#IBX0I8/==%\Y.7R\E>#@72%./K!3,!*>XB$%S3@E1)!*_ M^,;PVTZOMP&O!,@(;9>%WIMAW:0^C7OQR]?WL+3;]J'5AAN/-L_O#$P7]'%8 MX!7<6YDS^B\&1Q3&RZD,0^68=!%1$3.40JF&^(P*<"VI+3> ME_H*=IJ9SXFZ"X[IO0#Y'LRQ28@X& W[[&*]Z:;ONAT_7>";R@]O!KVL'7J]R;O%6T +OU"@Z;8@JY M.>W<%P*T,0[8*\00DYJX&"S6(D81%"Y"R:*"H[60L.%$<&&",90@1@C21#N. M)9'$:D=9$"DSIUYDZ=.O .0WOP[*TB@7,$[Y/0=*;K-,_!21?A$$_5831J#Q*Y!'*)H\?@2 I+O8O)W36@SZ6VQGL*DA&<%KA/$0K_ M+!N.BJG/YV..!FF5C)I+G+JV>:( PQJK0+347(R7*TOXEOI\T8%,M%)6(64$ M9\P3:3F)S'/-L5)12%L"N<31HU;[K7!4J\"1C$R3U*#'$1\"83%BS%1![,)2 MI\ZQF'DJZ&F02NU04S,R9:262 @1 E6:%Z'SQ,)#Z$>4:2'!%,$?#3ZX*#!G M()?2IE(IN;!@K E=&#]UP73+G(K$6LX12 #"P57+N6)C&-@X]C9V^R[%2D+*1,"\PDTDFO! M4WEG$[W3#".F')4FHH+(A!)%\Y5%V")KD*4(6<8X-PH1C:),Q:H#T:8 LNBE MZ#L=.+]91EG$E3;..(H),RQ5I> 4BXB51Y09*XJ0JENB:.ZR*&IO5<0RB!"8 M(![L(T&HYUZR*&1 !9!%CR+>QD^BT>:4@6,PL5$821EEN9NDO$/*(*D8QJP( M37Y*%,U=%O$@<,#24HT$ Y5FO41>!$LQUD+*HNRP^RZ*-G\2%,TI;L.9(T]1T0-E)Z/WR\ MB"5S2P#]B 2:5JGE5*PS%2P*)%*FJ%2288N8Y^#D&QY8 230"Y#V971I(240 M"5I+8UG0:<&#!RNT9CP8:0BX]I070 *5 )JG!#*$"Q:1#^FW9:D/EL1..4.- M#!R3Q2WVGFAVDV:R$SHG77-QFCG3'),N0:0[7#L\F";!9E.UG3&/?6)A\&M M/!@IK*>2!"I%])$O?NVAQZ3[W.H*MM6^'K:>7R5A09)29E(%E#$:F%,J.A09 M\=$B:BU5'"GIK<,+7)KY*9BH=SZ'YMT\L!(5WRK9:R015A/!.&;:!(ML8!HI M(0.QX,@84HIOZ>MTU-P4D9# M-/AUS&MJA>=>F$!Q1-(:N1R8^"GD]Q1109WAWBII N8,"ZJ$$91)P5A0SB&Z MN*A89JJPU$O:D( DX@RYJ)0RTF++E&+",3)I!(@6H3_8_;9Z:!HS(#F\:D"( M>*_3+AFE&28R1H$=,]X5P-K*B#QP**7 M3F-DN$5,V AT$<(2\BHS2J/+.(,H)2SF+*OX4Q)NC$)TB*8-+,1/GB&>> M1:1-#&#($"F%,\$Y5C9X?M@S&Z26(A>FVQ_632O<=='AVVSFL;1IM23TC!B, M#;7),0[!H* B#PYAZ3!3DYP<-ED1+X$P?R#<7P9_9"O/^ZAY["KFJ^QJK1MZ MG4'7A=[HXVDP/G]XGWU^_0?\& L3BZ.UU++@!"/,:*2ET PE*]MZHCXE??#E MFEY_V$PH"=G):7^-D57)+_J_7V:^?[J&$?J_OZ_DY[W^HW=AVJ__L-U7[\I M$\U77:7:Z:]T3^POA_+?) M_Q6TBG[]?73L7RC_]WN$F:A&T\J:P[7_:0 >I5ZN*SL=UJF_3^_]4R[5^W! MW,71B;WL.JQA 6^2?[P[V^LU79V*O5=@\.=O?J!7A7\KAW_6AZ MIV 9]#OMWRJ;JQNK%8(XTT]XOY;IGF3M:K]SL4;AE@M.VNV]_=I__PL+]/L? M( C:G79]T(*A7&4L+_9#3&ZV#@8'HB36CCGC5'!<@U?&E#)I\>:A1*M*VR2E MX4.VMMEQ@]98AJ],S\$J/':YCFMGYVCVLX1KW_75\TC\ZV6T>MW>NC MLWWX?(1J9_NG>XUU7K^&]OJZBTY'AY]=*)VW6S5KNOG MM>NCZ^./MD^=F> M=:[W/AY=U\C[Z_I9NO\ZVMNID;W-_?/:QR-6NSZ'^\+8C1-4WU;#6L-=?7)" MR^"YJ2+N8Y6A0*LJ@-47.$'2(^.HURNO,:J^S\7Q%RJ\KGP5>+=@QN<',W4/ M9>QAE/U2,]WSREX[_/J]][&=?K_36A.C5^HGT_S>&K2 M>E5QFFNO/NC(OI\\SUBSK8XTVZN^_^=!"I>*KQ_^YK7?/*C)*F;LD1>_RI][ M].PP(XD ?Z[0E^3SV-2I*\>":?[L_PY@,7D3'/\W6C MF_%S0F*8_,D7(T+B?Z+YEEA##P#N#F[7NYEI5@[;F>OX4*D=W 'N7;P_\JW@ M8:8M&O.5X#Y<#?,%IC3,3*=I3;/9Z=O.U4.2\_T [,#0;0[WPT6GVR^D$-W. M[,ZAJ&TVSXY;1\-:^GEV>EK?_- \^KA[7;O>0B!4\=[F$3NZWC\[WMD=7_,! M[L7;QXW.Y=['>NOX;'<(/[.]G2U4_PC/=%:[KC7>7Q]O'K+Z&=Q_IWY^U%27 M;QOK_=H!NH+?GSCF!A@Q5"TUKLJX\U7+;*@*I12)X!9[&59>__>_M&3B]_LB M^$9BC?ELGAP$-W@6^^@'C()'2_T?9)[WA^O[C:W]MT>5_:UW>_N-RKO#_8/# M]7JCTMBK@&79 /-Q9(%@6MG;KV#^B_]U],7>=J7Q[ZW*+?/SQO1LM4ZWTC\-E;\GXJ R\O(JX/P%7YFEG%KS M*9\!1CSU9C@,IAO:#PFJ4=1M:^2+%E),_;"M=U6[WOV$I6$1IK$:O+!51JRH M@O7@0=10E\H1>"'%RNM:JI!4\0"$55/ MO:PR(775$/A+1($ M2RN2N$J91/SQ\=3%6:AXR,9Y ("?OOZO "_YR.6)F7/3?CC)>DF<]M-Z[\_' M4=>?HN#:J "39!2I,B1]52/X*Q+@)DX0U=(F<>?#5=;[;234=]MNM8"L]4C1 M_LO6E7']'"J53JQT;R!2,;U*[R*XE-G@*UF[DO5[%7>:QV*^OK*Q,*\_!HOED#M;AU>=PXOX+G;=;.=MGQSOO+^H=[RT;&>.(,J6KE;)79 M@*I@:LJJ$=$S@D-$5*R\W@Q-@KLH;ZTP-F]$3C&4>,%HE5E-*HR9D752,>J-E6K=E@BS.G* M:XFK2$FBM?ZFR%D<53X#Z?,23/-+KCXKG6XEWZ!=.1MTLY[/7!YV [\@NZUJ M\].Z)Z:=7>>??RW%_U**_Z)B>7=U?_5@M;+5NFAVA@#FN]*Z4N^L_OJL,/K* MU].Z'Q/S74@O42+Y8UXB!@^3R5DL_&*\RI2>R^%U[;O>*K*:&(5952"#J\Q[7U52@?'HH[762*R477D-\U]Y%]H=VW.= M?F6SFWT.ORV*YUHZ7$_FEPWXR=9$)QK 1:>;T?_&6GXRMIFA>&36:1&+(<3/+D:.F8BW)';Z_[#LX$ MIZ[(8=*78Z4O40MK8/:)I]6 I:DRJE55(::J"&/L@. "O1I9V:1 M^:CTE$N]_1)Z^UT'9%/S.+LH^++,R\F;]S?R)A@1A**HJF/48.A*4C61XRI" M1D46&951K+S6# GZ] "I+B*KS"6B-$9RBH1>=$%M9A>F60E7P0WZX%3 US%S MH?>8..@D"@.$"K>=^>>=6NJ,GT]GS(410(I7DAA_3 #U!Z.D/QI=791$HZ\D M6GU)OON?7J4?FN'B%/AZG$K[6UI@:0X2Z2NF&TPE[>A8J_PR0Q6=W+QUN%5A ME?(S]JYMPN?&UE7]#.[1J%U])=04N %YJE1"7^B4I"@K*P*:R3X7D)639"ZB@UR0:EH M1#0KKQG!5871/TCU RF;RR:"#L!>Z6;]#(8RQR: +EXXQAD"Z(=A4E;PT>>5?N>DS.C(QP&X?*IIQULCZ MS3R)>\NXT\I&T_1ZBV7Q_E3$Z)KT>$M,@/&Y-_/_T,D+2ISZ>+=#SBA;5^[4 MM$_@BW;EXVD&W^S?*,>G))E-U<%^-BWWH^6N0EXE8S]"['SL 0$YL;#H7T+L?IRXTFW+<-K07NF=+M"&BI(?Y\6/8X-QI%]*9GP$,WY) M<+':,H^8J$H15)41'*N:,ETUSM# C<31)6;<_,]!R6-W]7=IH=:YJ5@] ,KE])=75#__O+W%_-Y%^,FBN/W9F^V_9IQT*HV&'% MG09W7DGMS2N7IR'?H9,BLU]VZZ]5?L'C.D*GII=7:?$5TVS"*:F&5@KX_CW( M4KBWWZG8,#X!1AY'?&]J$G6ZMVL2C2/ MP+'-][R.E $#J>:1!4/1]LG^:D7 MW>!"OHZ%R6B,O(YBK_(+C R<5ND-P,/NG792'8%)09_^J>GG5W]9)*M>R2\>O]*OOU5,VU=^(;?>VP+3PDGV+.$%+LK/ARO3\XP'R[L-YD^2/Z[I M]2L:C4;P9MA;_6IMGUEGRVP,NEUXME'1LV0)]$U_T"NDB'E6E0[R20E/J0VB MZE**-\,.5;7SL4HBTR08X6SP*Z^/0N^^+'BH%M-T6?R;)?>>SN,W97AG\:S3 M%4?_Y(AZIYCSS;Y>IVN)-40ER4<0C:VLWP>)FJO4;J>=K,_FL!+ $AU6=I-1 M:ER>T[1I^J:2ZF_=5QU?QKB]5>8B5969GA[I?EV/C![_1C.$WJ_S$_FWYCM-]U@#_'PBGWZ* M5GA,N:IJ94.5T0A&HM"ZZB0-2DL>L;"ER)^[R"\%_T(0YFF"'R2LJ33A!4/% M. >"OVN2]$["KYMLZ >_K0"/51\\T&N!QH"[=">&*@C&%DS6\+?D/,!P8&*G MR3RIP)1=]D\GAU?!C0CYL_D0LW9>T3//J%WYVK.M5%8>^K*R\M5'6,E=@I6O M/,%**F/V15%A8JMDDN1RVZ]9_;GJ?!&TJA]=-.N)!ZF8R=9PQE>)_M&MU/.; M#/G8:W^J,N:%C!'F]ELND9(@/NETAP_MN4OVK[3X\8YJ9^].:V=N2'8=W2O<4*/&^_O;WVYJEV_:1V=';+CS:,T M!CK^N-W<:QS!.%O#^O4N.[IV?&_3-^OW]G@'%!RSV%29(:+*,*-5[<$N--RK MH.&GY&SE]=N'=<>BQ/GGM8=B%JT![EFN+Y7XL)CY+LLD+=>_<,_(,AJS4,DR M4V$9]OM3TLB*-*=S06O](<>D!.MLP%K*]R7@F(.1NSR2[3<^\^CCV#4N^:< M3L=76R>-G(VL5<-WQ19^/J]CY[J16R*JBJCRCML_>A:H.R56&9 MU$)I295^7->DE\P2?[;H+)]F.>3=7-3*UL-1UE*5%%^53$B[DU-VXR9\7JJ4 M;ZJ4X6V5(BCE3"+0(1RC*C.45#65H8I,\"H2Q!QW3U IC\EJ$P58NHK?6")* M91 >7-G*XD/9#'D. WB [4Z>@C#HA:\UC.MT\ULTA^F>EQG<$>Y6:<,[==(J MTN>LESN2;=-VB9G!O4R-)-+)O;YI>]/UO4JJK9;YKVV8IK^87Q]<2ZK,=7WT M(>GUO.7116J].[WET=YI:#8G,*S\ N#*%RE'G8\>L63X]222H] KW&KYO-7/ M0:)&D;7.L[)A+C]QPKP*5(/J2,U8J&)5@QVM.B.!36,DD:COJHY%YM!ERRP1 MRY)9LIYG9*Q?=+/FB 84C?JV_Y9$7C=4+M./L7S8SG/70/L-VME(.N1[V7HK M=R6&CLI$X:2+T3+CM99!$*8CYTAJ+]VGW5Q0,(I60.JZK&6:O3]7=NO;=^3& M6GO0\IW^^(0'TJ?SK7;Y3KN#_"GV!OU<>8,6!\<#? (X'?ULTF3SA'SR,/]4 M.E755H(A:IFL&I O54ZD8EB':%!<>_KT1;%WD3O?=&= M__TO1;#\O5=Y]#['WRJ=+V3Y>I[-16=DP*UU0\HA_7RK[,K__7V,6$96Y=@8 M>>A*8WN=YJ ??A\[E>CV$"O?*5!V^V<:/ =-L#A:2RT+3C#"C$9:"LU0U-Q8 M3]0GN3*YYK3[Q=4]"57;#>:\:F(_=-=,\](,>RNO[CSUO5?ZQY/.K%31UU_^ ML=V+T_/>38M:) OQJPV-1QT^*Z/FGH^>M:*_]_M!WK^S.:R,MIFDFA?;(&,K MX*&^_XGF8=);?#P?E:UV4ZJ&/792?K1OS/P&7E0R-M;? MO-VJ[&U7-O;JC:UZX^#9#=B_,X5+F?^I5JG^1L^:'\]XE'*5H)E4(TN/_*PV MKV(Y8]'S+)T[[W+%C]E2_^#&>53 ,D3OUG>V6QM[>8JWL54;+SVL%G9A_2;4\N-^1(RSB7J.0RQF M,9\L)X(/;MQW=ZTRDI>5TVX*K/[K^Q$IC,#7O5G6S%L_C>I?_'+8-@.?]8/_ M]8]7YGX :/%2= J5555R8>O/[&-($Y0^7@-(1^ M[TFLN+ H>R#F,FH.^^QH4HF_'\8?_0JV2L%:"M;B EM\5;#>LG4ZL;)W$4;W M*$5LB<19(9&5(K84L0OV9,\&-B&/%+%Y[L=II^E#M_<_E:V_!UE_6 K;$I,S MPB0OA6TI;!?LR9X/;/5(8;MA>J>5[6;GLK1G2R3."HFB%+&EB%VP)WLVL"E. M%43Z\$#]3N4KLO:A%9-2SI9PG!$7*ZYII MFY-<^O]/K[*9]=R@UTN[G5*)V?6V:0Y[66Z,?U$729^,-AZG<_9#;] LX\^+ M@XHEQRLEI2*9I2*AI2(I&?/)"T-8Y=NNTA[5?"=CKAK@B^;D<](LS4YOD'98 M&ML93!I=5?:SWGFI+DI4S@J53)?Z8I;Z@I7ZHN3,)W,F8?D:0+\+6,EUQ;MN MQP6?U$.I#$K(S0IR'#U%&8B%VF'R[.U(B_ 2\]B\]CRE>[OJQIT+TH;(KU:< M6+R]Y,]G[UD^V1386T[V]NVN5O8:_][:O[NQ[PE*I=SB5SY9N<6OW.)7.@R+ M8[U1M/+Z;3@QS9&GD#=-+5V%$FPS QO'9=QHIFI@O=0#)6L^G37IRNNT9%#9 M-J[?Z98JH,39S'!6JH R9ZG4 O'F6+E]6%[5)XW=-.F =,T=;<=*W0H& MW:R?A='*PF$OI(-CMZ%4&"4L9P9+7N8FE;E)I<)8-,[4*Z\W0S2#9K]R>)$* MN(=VUNG>TA.E3BB1-RODE3JAS#\J=<*B<28C*Z]K,"PX#S& SW K/;54!B7D M9@6Y4AG,5AGP4AF4G/ETSN0KK_?RIHF[[5$O+ABG5 ,EV&8%ME(-S%8-B%(- ME)SY=,Y4*Z^WKDXSFY6%,$J,S0YC_$E5BN?0P^E)R?$EDN:#)(Y77A\ M4S_ MR4&+>?>P*D7;XCW9= #)OUD=^%7>RV_R_3=;T[YXE]P'\+1@.WJ^TLN:3*.G M;ZJ=_[RFOD1>+$Q'W_D03']OG].(7I/^8^G?MWN0/8I+%OI==_NA5<&K7RDU M]U2:+^A+_FB7Y45_JT=U+P)O! MA98%!3"B,=;?;ZC\O.G]EW,A@-J]WVP!Z I,\?UN3, OHQ_S?5B7P<^E]BJ6UCT.V"9*R8G O6?H@-9C!!Y?WG M*LVN<7E][$$[Z^^G^/F@YU> &=OI+?,OLF U3+/WYTH5^'B4H01#7/77VH.6[_3' MQU75\TC\ZV6T>MW>NCLWWX?(1J9_NG>XUU M7K^&]OJJK:A6ZZUW=X[JUVEXT>-0W3<<.RH\9X>G=58 MK74T/+H^O*Q=G["]_Y^]+VUJ(\G:_2L*W8EXYXU0NG-?W'.)H&W:04<#7G#[ MXB^.7$X:82$QDK"-?_W-+ DC5B/04A(Y,8U!):FRZ^V^<>CP\,#^K&S^RK=]]4;LK?_ MQ^'Y9]*]3C_2]W+GU9^'NS\^?__X:K>]]W+W:/?E)C\X.CS>>_7GTX6^?G#7"8:40YX8@#E0A8[1'##/0*E@;)&]N M:-5B5/WGM\L[8V,4IU*7I9-8 O\%_B?$?Q'&:B"")S%R!DSVGA+ MP5&PQABI*_@GAM "__6"_Q\_X=]K[8)0&A%N N(J>)26CR,5N.,:*&/!-C<, M;G&C"_P_&OYKIJ*O@%;S%@;#?MMGKUW6:UH-/U+:;Y6J=-:S>9\=>(OD76%H M?SBSOXS?%^N7(;P ]11 O?OB)T__L;O_Y<TFIDY#.5^=@OOUI/0%]V>'^S\NX;[5 M@D7M&7*<8\2C2[\IBY$UE '747J.$^Y+4G"_E@Q]O?T.%V&1O_*CT:D,7NN$ MOS8YD5EFJFI["Z1OMZHH,D4%X:7%SP[2P9$4 K9G-;A5TB:II<=IO8Y/=O&!\ MO97XQ3O3SY?M0WMX^.)TD"8-^E4*3P79XW2&@MQ3(/?>BRNJ@_",RH =B@%3 MQ)/L19:2@"A5TG(7G>/0W) YZZQ$0RU(<5AO&"FVP")Q5E%Q*,)H#L+HLAI! M O8&2FU%3-6*]71+ONZ[=Z4"8<$G, M39C$SZ1&1)O9 <&4LM M"L)@K R-V&9$9RW#%Z%AK+MEJ+@FBFNBR*%5U3"*')JY7G$NARASE()GR/N< M]V<<0T9[BW B$@*"9,3H)(=P"YLBA^JI6JRWAV(TB9,_]WM#VVET-H?BF'P/^[ZYX.-+FD]$Z@J0C.$$_1&1ID$@(E590."Q= M:&Y0VC*YP4_-K$KW.FBUAK3B 2D>D/IX0)ZHX%J \E($U^,%UV5OB-(,N-($ M"2T9XI%0Y+0(R% :J2*41.63X,(MHNOGG5\SP55\)8]7:.[^^3<,!L\;MM/I M?1604\XC3G"&/(T\_A#"6<,N-;&ZPZSD>_UML5\6'4GPH MQ8>R;)DSJVHK1>;,3^:<79(Y.D;"03%$A)&(>Z^0C<&B8&E@E$HLL2HRIX[J MQ7I789E6O;C9F])J=&%NI15GI#"OFCRHES_E/-WO%BFQ"\,B*!ZKG'PA.Y\_ M60O:@Y0H,N$0ES'GH'N'@@,EHTD++OUC!8MY+K!4'7R+!? M$'3^5+M"4#"2:$[\0!4%7C(VO=]7R[>[7 M! "]?KO8[>O+F2_#^OF2G24 +\@]3?&+]D0[(>F\)+F34!+$ G'A #FL(I*. MZB"$"I2(YH;"I53MXHCM(Z!V4<2V@-EL[<$%S!X.9A?-<:C6@1LG4?#!(TZD M14: 0J!,<,$HD]:JN<%4 ;-Z^[]V1L>0O^\ M1TZM0N37%[078+4=K_76:*DWNV$OK_.H>W>Q-CRJ8NBW3YI)$%32Q%EE#B,! M@YS3!NG * ;G;>*TS0W:,C4,*ZPY1A5S[%, P 4870L SJUBY;=/P8+12G*D MTS(FI5U*Y(C6B(+$TGACK<^&UI:@N !@+9GN(T*G9?V9[BA683&D=CH]ZRFZ MV!81I%!P_?'9GM\^22X)!F.1T ;G6I8T-_<%A(GREJ15C,$U-PCA+2$7D>HY MZ[-54[@JIMJG#9"+B$$H /GXK,)OG[ EPOIHD>+$(9Y;H&N!&=)$>Z$T=8S9 M$4!2O(@0@Z<+D#4S_]:?$U_IBUYLO"M/>B]WS-WL5O]L_?>T_36!>Q5OUO4% M\!\5FKNS^2EB9Q43$CG0&G%G'7*"$ M"V"W!0GG'F*;D-!3I4+D@!3A''&% 3FE*/*,6^5=Q(K;@H1U)KASL!;49P[? MYCNA7D2G QC;?!NHL7<"?3M,PVYTP Y@O@EK)2IM8>3WY[K^G9>U6ON]^'X ME:&CH/Q4*+\]R7<#X0$;[A&1/N08MEP>PWJD@ M!(@$117.#LA8IA5Z+H;>@ MWU((;T&_F:+?!6%LM @,EH@;1I$.1")-/:>4<9&6K4(_S1;106?=T:]8 M<6="NH+CC\;QG4D6JZ@/3O.(*'8<\5S_TRB=6*RB MDAKK'*,NX3BY7G:G6"J*S?;)H]NLTLH*NLT0W2Y8*A-,8>$5,L0(Q)E4*&&= M1SZQ5DRPYM9D=)/UJQ.S>NA6[+!3IYGUDG8Z/*O2R^"_I^V38^@.B]UU ;#- MN"2,> *6.@[@C,,J2*5 !^V(C3-IKW+N2AN%E!48GPK&WUPRM?I(1)0.A>@U MXHIJY C#B!/,G;.8!Z&:&[(E>;$U%$MKP;OEY)&-I-GKCDV0UPU;YP*M%$IX M /9=4-C M(A,*!2(!\2#CJ^%]\0);0K.U9F5KK5IM:IATDB;#M6QML'ZHO>LG/T3-6A*2L(#\?I@DI=: MXK1CQB"-+4F\E'!D8B*G4CDIN.26!][<$,5^6NRG!=?FY^8ON#837)L(0^6< M2H\]BD8%Q"W#R&!ID0Q8)WRC$ES2MXE:A(-_W7&M7K;1U2FO=3/U7-BL3=>( MOE;S]Z\:=AF9G+65EVL+JSA69-Q4,LY/66 M;1:LW^S4R[BP BZN<8G21N?BE#RO&U-]TO>OF=-V!?HNG??_;9S8L]SP=[[& MV6E6N5;3-%/=YC%&ZQ567Q9A^!KOYM>CS5Q*2C] G3FZ5&'4A> I4P11[B3B MU$:D7=3(&PM26LLEU[F;"E](T-&ZNWMJP%<+X!? 7R%[50'\F0#^1/H^EU@X M(1&S B.>XTT=#00)09W!@261K3+@2UH OYX&JO5N%)M.?/\T]PGH'>?N>39O MO)((M?+,?>OXI-,[ W@+'3N$,&&'+)C^$$S?NI3+KRBABD5D+4F8[CE!6CJ% M8L3*21EIB"1G#A!:2DZMA;NZ .#*,=D"@#,'P FGK 7EM:1(&="(4Q^19D8@ M8B3#H /1) &@:"495@"PEJ1VO:WPH]PI.Z:V$^ZEDCRU\LQVK+ 40'\DH%]J M!" X48H:A;SE(4?9>*1%) @[8X%); G192,\@8V0%DE$33RRT1C$<>#(1 +C<$.D?]LX+Y#\'\2YTD'%,64RZ0TM&B7%496<8$8D0G4<"] M55SEKI>:+*+A^[K;M8IA?^W0;^'MT KZ/1;]+ABOLTY2B1UB (GG&GWX"MW3:ZF@ MQ?90%R9Z;]O#BW2_/)(/[>'AB]-!FD_H%SQ_%)Y?:CT!P6,:)$DHSCCB01%D M(W-(<(@6JR1W:157:-0B('W=+1#%_KIV&#@KPEJ ;AY -]$1+9B(L>:(&BH0 M!Q:1(X*@B+WE,=#<:RB?&7^E5(0D%AEXO6:%2Y\LK;9 M)PJ6"XA#*&#Y>+"\(,3 K?..!>0<4,2IXLA)K',SMB"]"L );6X0T6*Z?GTP MU@PL:V;JK3]AOFKI;36Z,,SA"?YRQ$*Q *\\1;[3,%+Z(3U0%%SJ%4%B8")Z M@Z0U&G%.([*:4.2PYR%*$ZP)N6*2D+*81XH1N,#@$LAO@<$YP> %(R;&IG4D M"B7(,X@SSI U#A +-AA&0EI/R-&X1A3J@?[S4K+,2 MJ+;LK+,"]@\$^\^3G-=3QP+&@+SA"G%P'CGE>$)\"X&1**EBB?/R%B,E5+>8 M@PL"UBCSK"#@PQ%PH@NR=18\$8AHBA&/+B 3N$NJ/XL<@&EL2(6 1I1"R7/G MNZ$]..G8LSS)\(MN- M\:S%,3[GPHSIXG0NJ/O]8CF*$61PCSZL[X88L@NAA M@NC'I>+.B@IL@ 2 +(*FV0 9]Y1%[(F.TNE"V"B:^[W:68G]<.^1;! MQ ORS0SY+BAXE%@%Q0@BQ@/B.1K#0H(_ZFF@W@2"J1PA7\F^6#>+\^K$)9=X MY'K _&+CD0NN3X7KEVKZ&@N6!N ("W"("^8SHXU(>1P-=N"BSLDFN,7Q(B(J MGG1LW9.U/#]1E%QL(')!R6E1;PR62&L0T3;I_0$[I*5*>G_T4E)'2(2D M]W/6$J*@Y'*Y\>%H<(2FT2Z[&?L,Q_(8B%SH0.LTEEE-6KW4L17P+;SH'1^W MA\>0F]W;;FCDD, T7.CZ)(@:_][M#:%!R/_6A?W,1['Y/F@_[[8[_[(YWN(YTMU[$@@GA),D 9"_W+8ZR1*,?B?!OSWM#T\>UY;A]53O/^*\+30_GIY7]]S"U[> MM_?>[G>?FDZ["^B<<^/*FO*Z?YZS.,A;OM7XUUV2XC7TWQW:/LS$N+&]^^=5 MB?%S--7Y>VW[>_UWP]RV]1_;.86+NX^M&[B(D7N(D8/ASHNQ&'EA\,?_=XC] M\3]=^\&<[AT?I/L=X#0W7W9^[(B=_;=?/G[8XKO'VV3WU6[GXZOW9.?HX]'> MOA?_[\<6W7WYY6SWR./=EULLW?\3P4H9' %)[A(#BYHB':)$..HHK$A,C+F[ MJ<MVK*X/9@=M]S;<7MZDU8X<;)X.#WO]!.2A MV'*7OSGY[DO_B3KJ/*82!0$FH5UNCDDB00PP)"2B5A-[!]K=N+T> 71E>ZW7 M]M(FR,A (1USZUT( FDB(B).>69PP-KR42_UZU$WUZ%OM-L:]NO_9JSW8/5M2MXJ=RLO8O=\-,N M71D;2V)QG>-%?SI*TY>,KK[GW.$4*];BU_;QU9_MW?VWQP<_=@\/CMZ??7QU0'?I7\<':?J%!.6 8(>Y[0#A.&C*4NQT(1*\&8NSTQ"_ [E]VT.KO)2*X%-P0I+P"E M94^Z0JZ^QC1U7M)@#<7KYW2>V*'%)5C#G;GW\OTGRA/H6*&0!9UPCC&-G&<2 M49Y@B;'@?%1U]#B7O57_O:7!4*!I6_F$*[G2)"#C!I?LDG7GHF.67__#=,7'5 [2T@Z2J'Q,RCGIC$QGB-I$'RQ#-F"=?G-I MZ<%;%]A*@/1-_J6RN9:[N70T%C-L$';!I1V&(W(:$C<-0D0+44J5&R&;%B;7 MJ[_?#M+=L J,M !=??;BT?8G1H.1W@-B@B4V:I1$#I1'6BA,1=JGEDX=_[B4 M?56 KGZ;2^K(F(@<"]A(\'#OH3UXBIM5(WW8"Z$\R\*F6H8LHV+_NP+*UW"'GE4-"<2YH6DT(L;G!!&YA>9W77JN[6FP4 MQ>CZE(#PX9RV &$=@/""YZ85\Y)IB@2IZB]9B32E'#&K0Q1IB5VP"0@Y;7%\ MO25? <)BK)UW2ZK!#55CZV&L?:)=5Q9@R9VL%+Q5K7C!^"DP/EV;)+M>!Q$, M%BA 9<0-!!DK"/+@%0AK>%5/PYC$=4OSE9JPX;4S\#Y1L%R ];> Y>/!YOI!$2A&!N L!I77*6;%1LF@H8:!R"H]HB1NBPPM:UIXRK[55^%H7URK^ M]CX4>F%3>N<6'5\7E[6(;YVYV0Y&^ MCY2^6Y=BH;7 #%N+O H4<2 4&>X, A4]B428Z$B2OMRTN**U"R"W_?FS[G]O=:G[DQ>-M_,?U?]NX M5HYCVJ^I7>$.6L'H.X"&];YWG(9XEM,[N[UA^O9AKS$\A(1D]C2T<^A10K$ MW<'HMVKG5!%)L=VU7=^NW#?IA:I=Y:U3==(;5.&+S_O0L3D;]/=O[3 \'-40 M&0^+JI_%]ZY]S+ITX],A_#[>I'CR\\U?K,J2EH'@^ZT#NY(7._$S/U8%U.!( M=(XY#EYRRJW!1DG#<30BX1+5GTBN]3_ZT&'_ E@^ W)]L%^0C6DFGMO.-WLV M:/YV:<+&H^'TF1)IQ--/[-3'Y([/W?_32U].=?-RON@%^-X>M!K;7?]L^DFI M[V.=H\"+211X]_/L-WJQL7<"?9L/[.U(L'(/_N_WYTCXO]-+@C%4)@WL_ MYG:WL7_8.TU?$M+FW?KN(1&!U]!O5,4?&IO'::S#P>US%?L;T'=?O_/#=%]6SQ!H?^&'\ MC-QU4;"'?O;70Y;W_/ <#/LW'Y'YF_EU/4CMY$2:^4[D&,7F[S%1B_"8'/83 MU=U)=SD<-+829H11&9,&(ZU[&+O.H25W(_E%&^<;WUH.PF*,DHL_"(\)>*C= M*8?A^S%V?"\I_ M?(7N*0R>S]^G,M^CM)Q< MCMI-3LWBN_4CC\ BQ/?K?B^<^F&C/SH*,S2!SY0$U6O29NFM^^4TW3\%XR[O MVU+F:9JHD6PR931&B@W7F.82G)P:;T$;3QW_]+**&B&8H$>'CXQA_\]^[_A% M&D,>W8?V\/#%Z2#-*?2WOOO.:9[6S<$ TO_#OOU>&]?<;GOLFCO^ZW!W?^?; MSLMMMKO_ANZD_SX>;XF]#V^^?4R?/_CPANP<;Y./K[;%A6ON;7N'OC]+X_BQ ML_^%I,_PCR_?'NX<'>"/^]MGN9CESJLM_/'HSVNNN=U7VS_2>^C>_L[WO?WW MWW=?'GY)SY6^ZVUGYVB;'1P??#O8?WN\\^'/^-,M]PY_^Q2Q]B0M+0H21\33 M>B*M LX]EHG3B@>C;.[_36XHQSYSM]P,#UO]4*F>L>[+RZVJU^K,-,+C,;4H M5EI*2&=%U#S#/P^"&>(%-2'!B B66YFE!#%C*9%^*5*BUE+BQT\I8;2S@1N) M6& ,<04<6:,)8L8KR4"9$%US0[6,UK6+^%]!N5 S4\$J*$IO80"553J'\X>$ M#9W>27:LWJ8YK5S%@[IC?V3,4&N#M4QR*JDAP5OITXM:&4M9T1!6!_MW7TQH M"-II > =HB&W S.@D"8*$/4*@TU79,3-#=,2:A%EON96 Z$NV%\G"V+!QAGQ M8L^4HNF@>*$XM4%CXZ*GD3.G"%>\\.*5PL8)7AR)"Y$ZY)75B ?'4=)^' J$ MS(L$UZ/00=VE@#=@"20Z3(SG MWGH-7A@J"=?:$HY)8<@K) 7>33!D B12$2/RD0'BA!ADN.4H:3^>@>BU M%[W!<%1=IC?*Z^E^;L#WDYP%M(B(MF4'C:W0_6NF5JZ"NR5O[IRR=G)W?-IR MF- :DYU%ZI!YC??BJUXO5/40H/^U[6'PKM>I3W/LE> TD^%6PF+%16Y@"@0C MK@)'6DF.G+6:$BR-YKBY05N"KW2SJ+JPEB>K#*XQ!"Y2WRL0."L(O%#KG(B8 M:R,0MRH@+IE$VGJ#K"(L8J-\X**YP5O,% A&XW:W/1CVJRJ#Q9J[ M1GQWO-ZO1JN=X'[STEH7Q'\ XD\& 1E! EC!$=,Z(BZ#0(YJCBQ$32@3V!J: M$=_HZUT"BUFC6'8+'"Z4]Q8XG <<7A!@#$1IG5:*N]Q2SR3NZSRAZ8?'!CO* ME<49#CE91&3\VL-AS:R\*\!_1Y'Q_HX@G7J8>Y]J6.>B(QVR@V^,^H,"^],4 M"MB_U$O54":95Q0!L09Q17&.WU1(@.*48.&TB,T-2EOF*=75; M0=2LF35Y!-S&CW9PZ)D14&IJ;8B,L*193JGCP:%G* &.>YBB,P9SB!7 MMJ7LND.N@&>MR?1Z6Z:W7F@W(3;=*IPY$8B7!NCLX=H\BY7&Q;@C-2" 8R.\_8(C+CUA[E;F2F MCX.;.786K!WV[ T/H?\S6*+5Z,*P- 29H> M484UM(1?L=CD([#;Z_8N6VY* M\.!#!.'.)-T/0*S 'I#C@2#./$>YU00B22YZYZ.0SC%WP;IYX=T'\N1<$.\=0-((C'K5"!K1%Q@2J@3KE FMN$'H]6+H MWI(Y_TRM(+4#GBJRPT'L]6%LCVX,[7<8%'USF>3^"0=#UCX&YL)[>UXFN-T] M31.Z]S,RZH_J.(W>MY\/TTZ[V^NWAV?G)K3-;KC\+5O_/4V7=V!XV L7=K?B M'IY.XKZ9U#"D2IM 1X,B!I(K\5FDK0LH\A"(M32F(Y9C:R2?D;J-Z6O^[VO[4'&P80IE]2F8NU?O6">L4086[G^@"[$=O%R3X?R M[R>I-U;:11\TPA8\XD0YY, YA&G0G#GG2:X16.H"% -_@;C%1/(4B)L)Q%T0 MV1 UB41C!$0F(@LY[EQQC@BFTGE%-+6NN5&_MD4K"'$EP'S:2=R%8:.3E-CY M*DQWS-ATMH]Z3=Z_5D+-K)U\J[W9/AV*DG?U0-%W,,GN%03JTQ(B8%(ASIU$ MB=)C1"!BAIE1T=C*L"ZN5S(H-IQU,JP7>5+D21WDR5(\#D6>/$J>7*A2A&H+ M 0"1($62)TKGCA("05 R J?!J3#R"V#ZV&LX.V'_6Q:G=. MAQ!*W-Y#F/3R]ER]9F>)9+7FA^]./OH:^N_R>9RMG8/>&J>_9?O=-%>#\_O^ MD5$@=_@98(NMC,)QAY%FTB#N?XQ)!(XX= MMX ML4IGU,=S+B6V]JA_/RL#$?51FG[4-T*0L.F![*?(4W; M\7$OCZ[GOXSL!X/&Z2"]H=W-UTY.J^XHW?M8&>J1][9J!IQ;R<1H,9;8(.5\ MKVR.MLKNZ;&#_EZL:,;>Z7 P3&N?)O8VQE&\'O=@'$>72C_KI%0&SCRR2@#B MT3*DN0H(>"2>4*X,S3&RNJ6U+L6@UD+=+" Y>Y!<9#^4 I*+ -G]]T[\_=BL(W#_GR<]Y[>GXQS9UV%]"Y3D,K.'P' MT+ ^4V+;/:LX<6^8OG[8:PP/(0&2/0WM3*P3$H4<3U_]5@4 V/QR;'=MU[=M M)SU?>J%*&KUUKL_[T*DZD_[^K1V&AVFL:2CC87'Z3(G1_KGID]:E M>R>H^7V\>?'D5S17>RGXY8F;_)D?JP)4<"0ZQQP'+SGEUF"CI.$X&F%=H/H3 MI3E?] )\;P]:C>VN?[:"@''K8YT#P8M)('CW\_@W>C']E?3NPUXG0'_P/XU1 M=&B N M?Y,&4?QI'GKV),!/#__Y9KB4_W=SML[ MZ0KI7J$]..G8L^?M;C4[U7TO8/$9'D/CV%(W'M#X^K/1M2M4;'0Q(2SG_/;K M=WX8/R-W763ZCB^^\[-WWE6G+[[C]]F82Q\6AMH,XTNJ\1)]:Y8U8EMAT1>1G^\L"?M8;[R +-PV0.KLP>\ M/ST^[50*V$N(;=\>EA5?ZQ7?[^5C?:=ZO?)=GY<>CD]97OWSRGR4T:VYXE,E+JDGISMG*>>'+W_ M?G"T?;;[\C/=V_^KO7/TYMO!C] ^V#\\_GB4ON/'GT<[+__I[!X=\(O4DP.V M>WS ]UZF^_WX0JJTDP\[(M__X_[NE[W]/[[LT'_:'X_^N9YZ$JY:..>D^7YTM(O>1(I=>$KD0B-741.2] L2!1)2$K$9"""ZL \W -3IHD,#<&.Q,]%XK&R,&9VR7O]#UN MB@A^K C^OO-B5,UH]VA;Y&8WX$$RD11=G O-TDB1<9(CB4$[@I,4UJ*YP3AM M\96M-5OD;WWFI],XCE&V6J;9U MPY^M[]#W[0'D0+91>>[>2=YZ@Q5J%U^3K7=?UK?.V^G>I&^M-L.\HM@>-DFK MLE6F+$EOF".*4(HQUU9K1I(NRP1$%HDTZA=02/-PD47RD6O^F^=\,%J%Y'P6" NM4!6>8T @*M &-$!%S9: M6]?M.E0L=L).>6_O-]L,<'+?K'C-0PO5*N%ZI/[(FGMN]X2'T"^N9AO6\ MN^*I%<9+R:E$E@$@CKU SB4*Q&TP7!%/#>CF!B6+(#UKA38S;0Y>3'"K:(); M:\$P-Q-<08&" @4%"@H4%"@H4%"@H,!308%BC2K6J (T!6A6QM^RSKE-6\A%!18D8RH>U<0V@Q'IX/A,72'@_W>9IK /#C; M>6W;8;O[PIZTA[93!6I4ZM.+">WI+?SWM#UH#^$=]+^V/8R".MZ"[WWN5M]2 M!;F6R(YI(CO:5W*K@I2$$9"(26X05Y8@S8A#$ P.3"J,HVINT!:1):"UR)LB M;XJ\*:QS>3:N-=H]QEY(C&X!&'7+Q3"(%DQ(F!!ZXC4O&=BK5%@&OZZ)%?XVY'.O]_;M]\_M(>'N<5.FM _ M>_V*TOYQE=(6LCH=6;WLY?:1:,*41C9(0#RX;!0$AJC%F&K+F5.AN4%:&%_O MN%/X:A$C18P\13%2R&316HO66K366O'5)7FX"U^=+U^]ZKP.6*8=P@32%B+B MG"7NRCU#1#C '# (KPICG9??FM4GY[5V<[@+PT:G-QC,*+!UC6:F3D,I<:WU MH_WK'@)4HML+"A04*"A04*!>0RDH4%"@H$!!@8(""[#/$6L !.48L.4L@*8: M*\R"D8Z!8'Z:>,A[&^J23K[=];UC^#LIYL7T-H7I;2>[B?GI*0*(F0)1&RR*%: M^8F*'%JT'-J^)(<@*,$P]X@[KA#G2B(GO$>:Y@1&Z;014.1037U LTPEJ]T< M_F$[MNNA809W1E?"^6+H;>J>M X_R!5TQP3]MT8['0Z&MIMGKDCKJ:1UDM17VL+B"$R&@ BE$G$I#-(B M2D3!,TIIUBAIK&?W7 M&H!6[<[F_;7\AU&%6[K(YYA.Z ^VJEHCA0],R0=RJ_@)/H!%8(P[@@ L) T> M6V2C",A0R92.@!5)?$ 6*E"HP++AIE"!0@4*%:CGV;P_%5"$^("]CU("%XH8 M'HS#B0YXRXC5['8J<'^C06$)CV8)5](\)&< +J#("$'<"XXA))QPSBPD5D#&-(*YU7%*3GKKG!!&YA M>9TV+#$_M#"&PA@*8RB,H3"&.LSI%(0!K&?I/X>MC%Q3HX-TPA$OM0%,F2_6 MA7KPA"L1A)X%X71 7.8(0H4UNI((]'?;./S*:V^J5\7JDA^[8DP$\/__EFLRJ_FYW0[KW M][N=MI=0-5]?__6#L/#YP2GR<(CQ!R'9HX'-+[^;'3MRKX< M7>3T&>?\]NMW?A@_(W==%.RAG[WSKOJ9H'*E1JR>*2-6:L2K-\L?'B=-6K/(> M,>GGHB@Q(/C%3ICBK778-&DT_=ZW6<1W/ZT-M!G.6XXT*E:5>S4E\C+Z8]Q_ MI/&0;(>R!U9G#WA_>GPZ:L_U$F+;MX=EQ==ZQ?=[^5A/VB+^IS&R1JQ/V<"E MS.MA'Z"1)/+P<-" I *&2WECQ*S.N5K:6;K5(G*C^;;F&V*4@;3H59_!%)8M M,3=I>YS>M$("=F7U@;4<^"]$\N%H'Q.1OGTQD/+XYYS;F.L[LOD"=)G0,J%E M0FLVLC*A-9W0Y?5T7\U8I\ME4?ZRW5/;/VN,]=MEN]-7SR>^Q.(QI7W-W*J; MQ,B\# P< \Q#,"9&*:*VDBNB.*E"CXDFM%0WN1Y)='B\2W>^[[S<8KO'VV0W MW6?GY2;?W7_;V=E_\^-@__VW@R./TVMG5R.)]EX=L(,?6]]V]CT].'I/TS-] MVWGYF>R^>O]]]^7NX>[^'^W='V_2:W_%G;.?O;Z_?9+.6* .$#"30XAD0(8' MBYP,P2OO. FYK@EO82EJ%T*TVIA78H9+S/!26%:MIF6)@;\U/R7WC]Y]F,Q] M0F5"%B98\4_!JI6RFCF#&'44<6TMTM@0)+0D+',LI<8XR)P3''$Q(4M7<+E-+1LS"Q"W]*6X-(5:%)&F9%AQQ M;P1*BJU#6$E"8Y*Y2N2462U;2A6A6X1N$;I%Z!:A6[O"%4YYYF+6CM+_%!;& MXJJMA9! HW=W:+*E<,7BQ>_WG7%1S)W-3TGN$FMEU5!)(TY$TG>!4^0(-\I# MH)CK)( 9;G'%ZU2SHN9H6T_'6<'\@ODS4K14 )H@0H (@OO('(Z>>&H)B=X; M>@?D%Z1?(-*W?R)]Q(X3" %I&1+22^*0!0B("1.%T39JBYL;0K88KE_5@=5# M^WE$Z=I/\_0Z M/4TOC,)TJHM[HR-X?C9#D;]3R-_=%Q,!.Y03:BEX%)REB"N0R BCD%= &4A% MD_AM;M"<<#=WT?N4\*\TL"T-;(L<^M41TI30WPO0%* I0%. IA;F)2N!V,@D M#@%X",*J( 4W!H=()&'\%VSWEB"YZV3W']LYA<)U9\!U+YSZEK-H@W'(&Q80 MC]@@&W! !I35&&+0VC4WE%J$F6FM0*>(H"*"B@@J7'?90%.,BO7=X-/$2CK) M@HD$2.2<:N:\X=9+#T8ZYP(I'*MN'&O2GR> !DU#0(D.)Y9%HD$ZK1LBE L- M%'ATLK"L^CKSUCGE_BUTP$[Z\NPWVP]S<.6MNQ>Y!C%#\]OO3T'JUL&5MS<\ MA'X1M=.(VG<3KCMMN&(2+')IG1 'R#W#(T5>&"V4%*"-:6YP3$O43,E/*/D) M=3-GK/56F9LY8ZVV5@&: C0%: K0%*"IR9$K0%. I@!-,165#5XV>,FHF5=& MS?%)IW<&,#+!(V<'D"?N^ 2Z YOM4\4/5)S@!6/+!B_A9"6]KVP[;W7$WWBH(H=(^7DPH M'V_AOZ?M07L([Z#_M>UA%+#P%GSO<[?ZEBIJL$0M3!.UT)Y(P@ J9;!<(L*# M0=Q+C+1D%%&/(SAGF5:QN4%;6+(2(%C$61%G19P5WERSK54L4"N[P1>;AE'X MVHKRM.'4)H#'N-+@P;58A[8P##80/*3*_. MYBR^_-4X%+?7R%Y4WD=UFRR^_^SUTQ']T!X>YHJI:'7.U640MDE9+*$3):0R=4R MIJS5UBI 4X"F ,W"6L(LR0OY=J2;[O<*&9X+&9ZH\A:4B]Y))(*DN7V,1$Y1 MC3!E$#P/SFJ:S57*7*]I7.APD5)%2A4I5>AP78&F6!WKN\&GH6%+D)4^(B$P888SIG++^D+$:NDR7.<$M%T8-CJ]0>G@ M5*)\UE02ES"V$B];XF7KH=.N]58I0%. I@!- 9H"-#69I0(T!6@*T"S(B,DD M%Q%CX07!7#BE;8Q..,&C=];!?7S)@S13Z;6TN/N/J?#P=!V\\P523V5I-X:3D114!UT6AF.O,[9UP(D MT@H"DH9)$;QW3)@DJ'E+<%*[1C\S.(4%:Z? VH61BEL7]F$(6ZNE_5<-S\L# MCLS*R*GKNN7#A-0M?5]SB!_T!UM5YG^11%-*HMS<=2R):D 9 :&RF, M-M'<+H?NKRL5$?5H$36A+.% A/(6R<0?$->2(TT-1]A%9UE0EF81Q;1L:5($ M51%415 5055;036--XYS#$H&'!2VW#FFE:#4, AC9%4WRZIIG?"%9'U>/O> M1!2"(YYXS (B4FG$,:?(4,Y1E$&R8&5:N)AD%A,M27"=$J6*N"KBJHBK(JZF MUZN"](1:KZF6E#/CT5(+5)(782+"&&MLLXBY\ A'@U% M#GN/:"0*1-*3,>7-#4%:] 895?2J)82<_#:TZ2G2OZ']=>,_ZBJ$J)S#%Y#QTFD]Z@ZJ,^?.JNG'[*_S^ MK1V&A^FITT.-'Y#39TJ,OO&F3UJ7GN)T"+^/;XXGOZ*YVHLJ+D_<BY];'.(>7% M)*2\^PDD.=;MA1T<-O[L]+Y- RLU?_!_OS^'U5:CW6WL'_9.T_>%P?].]XB5 M++LBP"KEPIX.>^?0.A+0U2MCH9X>LV-/!O#\_)=KVD_U=SLO3B+4Z9%">W#2 ML6?/V]WJ8:K[7ASJ9WA\L,?QG.,!C:\_&UV[PF]&%X5^QO0=U^_\\-T7U3/. M^0,_C)^1NRX*]M#/_GK(\IX?OC%^]@[U^^8-/]? 1O.HP,9?#GA\#!XSY/O1 M5;4 NKI_V$\T;"?=Y7#0V$H'+US$^-[#VG)^/I-Z 3>NQ2_>^HO=-)?U>_2& MJ[6RL<")O/,@W*GDK=HIH9CBA]@>'[,79S"!94/,;T,0\^NTDL=-]SP,U_69 MP;T3Z"?].:G]V2KU-6G&,'@^?_O^[1'0CSY2R\GBF/_,3#DY\S@)CTA$U?67 MXN?U[^:;QC?-UJO5],S4/_28],:Z>7BF"4CP!BP!JA4QGGOK-7AAJ"1<:TLX MKM*#*1ZG!Z=?UC@]>._%V-]S_-?ASJNM;[LO_SS:.=K]LO/CS?>]#P=\A[[Y M?G#TSY>/1UMB[Z7GNS_^.;[P]WS\LGN\A?<^_-7>H3LBW>_PX]&?A[LO.^V] M#V_.#GX_O/EX'CGFK]G]_@-/=A_(ZIQ_NBD9_OS>.=#_JYM\?'E7T=[ MK[:_[7YXVS[X\5?<.1O'T.4*^@H"]6D!$3"I$.=.(N<\1@0B9I@9%8UM;JB6 M%+3D!J]X782"^07S2TF(IXKY/WYB/@\&@A06.2LUXMI'Y+1B2!DB&&786RI* M/8A9.>?KH[BO@+HR4;X_.^O[D$#'MSM0-?G->LQYPU^?'6BGV=*4IQO_G&*,Y @;U,5"87K_"4*7C*[KL) MW90H(;!6"@47DVYJ141:J(A(((1:QJE2N+G!F5Y %.*Z4Y4:J*<%U6:+:C-0 MT0JJS0K5)K0O9Z3/V:I4:X&X H6**F@VFHK8*M M.S>/>^DY?E1GO '?YN?LQ??#V SK_#D5BAP/PWTEXM*81&*-1R*"! [I)S/-#6FNNU>6G4I3]"DNUN#:,^OIRB?7MQ/U*HBAO1<3;-L1#49'FX2/BHACY9'% M()'"#',>&=,&QH#\*?]*HBG&)%7BNK^@'XOV,'A5:"_6/A7MMW-P9M[W>V?*U\B.:="_,D( MB1"H,C8 PF EXCXR9*ET2$FE'#C0(D=RCOOI%LM+,3 7")QG('M!O3FBW@7/ M#8;3:$$@I91!W-&$>I@ ,H($K6C"/<^:&P0O@N6N.^(5L^VTD_CBT'8_IR^] M')<^"IG(81*=MG7MSB-BU!=A37F*]Z^70J?TJ,I,MYWQ)@ M#A,F 3'-,.(4 ])41 36:FVB30Q4-C>D*I[RHJ\]%>!;<.;QO3T4!0OG@85G M%VT& :QW*FERG#'$-3-(6RL03NO'O< Q!$B:7 N+Z[K<$KMAK!X0UDN-6Q%N M^R)]?]YM8^VMQ-VL#Z4]7]H/[>'AB]-!FECH5]&@!U.!\*$ MU;;$VJQ5FE^D/_WV"%U=KXKBG'CH9+@S34ZC!67V%- 3CF#. .#C(L" M:::%))9K)T*2!"TM:M7OL^;X54R]3P(Q9T^&"RPN"1:O$&1.G+$F>J329D6< M6X-<_DT&C2T6V&"9"+(JD%@W:KSV1M\1F^ G)S,=UN?F(T6)WV -(T^ 1R5B-GHD-.$V$=X+_1(BI*4-6Z,UW^R& MO;S@E8>NX/R##;.;GRRUQE$P"=@U0UR&@*RG!M'H%&AP3@N>)\I;'FUS@]Q0(Z2@ M7S&^SG<>JR/>2'L.+8;5%B/%XEAMM;8_.S,7''\ CA],LE@/3 L3%+*$>L2- MT\@(SI&3/KO07(RYU!V;-XM==W-%,8)UK$4#F.K*52U2OF<.Q"ONQ6B MV#_$625\+XCT2\2Z8JPL>AP@)YQ)338A' 9FTAL@'#)IKB-;RYH8QQ>M4 M.]:Z]G;7=,S[IZ7-R.HRUT=4M-DZ/NGTS@#>0L<.(?Q]49ZPH/U4:/_Y$K]U M5H$)#BGN*^LL1:ZJ\J4PTR(RK;G)E6WT#76^BGVVV&?7#AE7IL)7P$$ M^V4"&)$.65 DL5_"D<66(8D5CDY)32/->$C,=8V_F&[K0(+7WG0["CZP8RH\ M4::YV'!K7_CK$7@_"BL;K7H!^X>"_9=)\JNX,U0HCW1:0L2]ILAJJU$02MLD MS;5C.!<](&018+_N%H]BXUT[1%PN RZ(."-$G*"_--%?G)BOE8D#\T 2(G*/ M4;"!!@G,2&DS(@I#"B+6DOZNO0UX1'\[O3PQT#]>! %>:X-'78,8JG7>[77' M$=8%X!\(\$>;EW+*2)+8(CKD%6&( S!D(\&(,0R$A&@#ILT-24OR<+'V%O!; M;CAN ;^9@-\%NTVPACWG 5&A.>+2<>22^$(D,(D!I'(L)/"[0=LOX%>LNO.= MQ_,\TD8?OD+WM 3DKK4Q]\Y"C@7BIX+X2UW+C+&>*JQ1 *,09]E_)TQ !J05 M7$ 4SB2(;W%#BP&CF'2?""XNB^86A*P+0D[452# O:2)!&-O4-I]&ED&#@6B MN0N"2$-X#Q(4O]Z9.>_!KC>R\ MKMAUVJ%Q_L!K+""6$@^<]L6+M"U>]WM?VP'"'V?OT_[8[EYD M+/_<'$4V3"4;MB^Q9^=HB!$0I0P0=U(B*[E#1&!-HI0!8Y6CWSB]WA)HB2:2 M>YW$F@)>,1X71%T*Y2Z(.C]$G3 Y!ZVX;0[6@[A*#*ZS[^?Q-/X\1 +=)L&7;I6HW.?722YFL MOU+Z^K3O#^T &KW8..EGC71X5E6VAO^>MD^.H3NLAT:ZQA1IYH7_7MNSO'"# M_=ZF3ZO8A]?CA7W=L=WA9C=LG:]MH3]3T9]+):P)&*RH#@BTLHA+@9'A!A#& M@CHE8I ^]\^2M2(_-4>CHC$^"<2;>0GK@GCS0[P+A8\K;@G!"N$0 TJJGT-6 M!X.\P,IQ8UR4+#=GJ94!;?40[QJ0@>(X2%R))M> <:1XP M8E[2M%R6LA 7H%K,X;#5%--*_%B,TA" +D0[>=*@62_[^PHXH_YL=VW7S\(9-=4T+=H9M0CC7.TFIU[: MY:UC#>VO5X=TX;TZMOW/[6XU1G'QYWB(XOIINN?&OWQ:[GW([L:[3KL+Z'#T M-\$5%4DB-TU8BOW?<@._0]^W>Z/EW!HO="A\:BH^=:F"%"-&".(C8CQRQ%5TR$1@")11 M-$@#D9GF!KM>.[7D&A5=\\ECW>Q=7 7K9HUU$Z&,S/N$=[ESGXF("^N0$]@@ M;0V. ,#3IFYN*%5JY17W5AET&?0B'(EK'GT3VSE?]$)5IJ$J/RZ%'09AA%$X M+;Z/-E$5AI&./"(55:36J."SF;M>*1U#8P##80>":=Q4 M:;^7-D:N0'38Z^39_+/7?Y?WPQ])F(47$TT(BR";2I =7"HZH3&C*C+$-5:( M0Y3(:,X0C<#3,AL'F.2B$QB7@D3%@U+ <6D=. HX+@H<)YPNF$KF T6!:COJ MQJPUMXA%:12+B?]CD^M'J-*/>9VB\E8US27>$*I7#[OT4XW8KE.UMI^!G"68 M^X&RX5(&C#:.)2D@4; ,(RZ2E' R4L2$"U9$0Z.$BCB36AF!UBR<^\E:P9\J MHM:I6EM!U!D@Z@7;CDIC!=$AH;Q*;)L!99C.3_MBYVQMN?FR)?V.R&RR],O/-UFII>N%ZMWW=.\YIL??>'MOL9 MWMHA;,4(OI22F4X:?;Y4/$L+#"0(Q"DD?A\#0QI3B0RQ40NO/"8R-V.EN*1K M+I_?KYW5_*FB\E+X?4'E>J/RA8Y@ Q9&:8)4] SQ$'.!+Q:05C9M!269%PF5 M18LI75!YI72$I271+V(.7]Q;)VC886-X" T'G]O=;K;E]V+UPDD%,_4PYZ^8 M_)E"_$09J(((G,7(&3/:>$O!4;#&&*G]I^TL=0A]A"/W4<*FR(ZI9,>E=&%# MF-;?+*F^?5%1Q6 M!1TK .%7FLS^_04&M*E.\GSPN9Z.F-.K:;]7RNA-*^P M3 7K6?K/82LCU]3H()UPQ$MM %-6:1R/C*LO,G51,G7WY>:E D58JR1$&9)) MNT@RU6ID-03QI:XA; .0H)T@R94G@ MW- L;[AID1NRN8J\6:2"-ZX"JM-@[WF7!96FG=? )I:7I>4-O5/7@=E5]"WS M^=#YG(,E8OX3?K^COXCZV.].3TY&R>FVTPCM@>_T!J?]JEME98R(G=ZW1KL[ M$IX)9Q]"2I>Z@F8US56V'I5G?BL)S+ZOY"NLT,Z\- M=[YQ7Z=]NPLE8FLZG61GT@:FI, .J$-19J^[\1Y9*C6BX+ ,4@4 FG22VJDC M-8?6)V[A*IB^[I@^\UIX!=,?B>D3L0(Z!,^51]2 1SS!.S(Z$L2\T<'%)(RI M:&[0ZVEZ!=1+";S%QP>OAK+T^K3O#ZLRT[%Q,FX.7H4WP'EG\$8??+;Z5,4^ MK/?I2X>Y;MZ9S::?_-;T8O\T78?ON?[/]>H?RPO0KM54SU0^/R92:87E\\QU MKA?VI#VTG:V\=4-[>)ID]7;7G_;[$/XX'>[VA@=0R>XBN*<2W.\GE3%/N5(B M N+>),$=+$.&>(L$)\%;Q22S21DC-R38EPB_%8Q_+G!?X+ZNZEB!^WG!_633 M**5(=!HQBQGB"C!R1!($/F@G*56Z*N[*"]S/2%'[;9BI^'F7SNK'Z"VN_]O& MY1:>DTU->X-VGO7G5?7K]E?X_5L[# ]'+4+'_F-.1S4)FS=_TKI!KW,ZA-_' M:X GO^+R9R96P$.VB5R=VD5U2"7XAI6[U"*55H.75WJ?3OP\[%_LR<^ 7!_L M%V1C>JCGMO/-G@V:OUUZ]BN3.?T<_6(EI_K<_39)O==F_Q :L=?I]+[E5-5J M]V?E-9?)&C1LI;!V?;O3KES?YS[Q>X;Q]^&DU\]_?6L/#Y/&FP/Y3[OV-$F+ M_)9>-V0=M_JM"A:J"L<[VZFZ,@T. ?+W5NV;=FQ2K4=GEI%6(^LCU1VOO4Y, MKCR?;S3L97_^.'U@D"178W#J#QOV>*1T#PY[WY(.[GI?X?D-2S::B/&:C5L2 M5]S(G@Y[YSV*1]A6O3(.YDC+UK$G WA^_LLU^E7]W<E,LQ8=[3B#"2P;8GX; M(M?"7E$LKUD :/W]F2^J5.QNN*;LU2\-^RG9KV>4E+,^ENT%)6!O=J]FNFT. M7]A^_RQ-XC^V#HS=B]W@KC6?K;.=H!^\> M_]79>1DZ!_3C\55#]\Z'_\_>FS='<31[HU^E0^>\Y^"(:3V]5"]EWTN$C# / M?BV!09@+_Q"U2@VS/=TS"/'I;V95]3*;-I"8$8W#(,WT4DM6[OG+-_#]F_C% MR:?S]X>_%\>'GZ)W)Y_"=R?/+^#=T;O1F_/CZ)^/[T?O]5'AG-RO@_,/ 0D# M(7GB1\045R>)3TE.?:YSJ5@@*5=\[W&>#>)HA\K>MIV__^09J'V-=5]C_8-K MK'N1\IU%RM=&I"11)$0BA9\F,O-)E N?\USZ"6>YR*(\8E&Z]YB@2-F^+-<' M5DG]PTV_W)K%IAD=;&:?ZO,0,CM[[K=S&GO/ M_;XO]VN5=:H2E:=QZO,D%MC('KA?E,<^H6DL:$:I#AEROZQ'KNW5\3YH]T;G<.D[7AY4V^VXOW=A>B-W6)7[M9=UY M4=:#_SXL4=;:P$J!, M([LLDU3[A(O!9IID?AFF>*R%UD&>["?U[P].Y=5SO M(9C0*W6-2[5-#H5VVRL)O>_RY^;5?]NZ'J^5,C@R(Q@C)@UXX\D,'N]*X*ZL MM=/%F(U%P88P/_A@M)#YWF@KLLU%KC@M(PP5#S7G,2=*I"0B#$R7+*4D MT#1A7$;Y!Q#;#ZLR=ONW,UN_G4\F4GTI*N_Y6.Q_GS79Y=4XKMG*DX:1/.DR MDC\:1O+Z:D:R.GLGA!Q7R+=(#FU8CT=O:M;ZR^HTKWG4R=[EXCB,8"P[MS)( M*5ZX[SF;YG@^@@>)[X \M6BD'#,$''FA7TQ5:4K3JQ]K;WP]KNV-CV^^O(#O MWG_\X]/[PZO1\=O7WUZ>A$P/C^/#O^>#8Z^OHN?A?]B?;&I_695@G?\Q08=%,\M>5<[3T^A%_+ M8EJ# ?P^KX $JJHV2-QV+W$^^,Z]U:((F(VZ^LV+(Q4IXXH*$6=4$A91'N=9 M+G6693#I3*1KI)PKLP^WZ=BL: ]A@L?FN4%'J-1W4. &YM;_^:\\BH+?GEC5 M<&!^#7^K/SY7RY_,J^83C!*Y3R?SLOZT5%J53@88T3@PLM%<72"@PIQ7A2Q8 M6<#X89/9,JQ#55172-+N?G48(=WF[;-<[ZTRG2,F8!T//*D^J^%D:E:F4L,A MXFG,5#&&Q3MC8/RJ(2C/I?<9$WQQ/6&1/3$L3(0.<2$]F)E!XZC4# \9+,L< MW2VJVO?@19\+&'3S2(8H'9]9-0-BF;'I%):Z@@<*@T)I7N$+4!UG^+P1[$0) MQ );AV,[!]NA!"*K\#L#[BL"8PYC&,H5VR@0>B[PQGB8B:L 8S5E[4%(B?R;EP@4UXU925LS%0Z5DQ M-9@C=FEA\2;PX@=-?;B1S)O"DBN%ZV]XP!DKD3F;[=6X_-/YS'!@X!?=3<;- MD66!VUO@1Q<>DY\1A,7PDWWOM=E8NX\U(8R85.;,SQ@0 SRP&']6U6Q44S&^ MWQT$@WP* \#-P)U[^GDRA -0[T8UG][WPJ;[R756=LG7!=1@O4$906_0?+K= M5%&?(4^-@9:!+ S 3[WM%]X4K'AT"EMY 6=KA$>K91[F[ #-J%F!UKZEB1G8 MHOO>"_AJS9,\/)*3(F3L4"\9A$^@V""X5C^-W(L),8(9310G:';$:GS7G MT\J,&=".KS0N,1XWN S>O \BVD/GJAD!O! %]>+<8%CGP",&_>G"#0^ .*)PD(ZN!,H=S=*5[Y03D)MA=9_!.?W8&$S\]@UWW M0'L'"8Y7X.$!\IR,X*I*_6>.SQB? AV4IVR,%MN9&A6@=E@(:QBM #)98.E6 M,S"2!Y0<,9F4\&JC[*&P1Z7#'M8%B0YCA-^MR?9@!3+R1]#%R@F#!4+A:E<- ME[U5@H!Y?+:L Z2N8#,VO, =@[?/-1-@WN+E;MUA;%R=HKX'?!41V4"]FIM' M2%4!]1OB 2X^FH B*. O9 5*6+YMM@\#1<*>=[.1R*)8A[E835DX] =W 7\@5#2;7PMJP'WH8$"9:) M,PSA 96]M:GQPG2]@ :&I]=3)$V8#HXOSH2@K,#.VAHS+ER;LP>&!,84S6[7AAX MTP^@'NVPFB /G9S;U37YF,T(S)Z9LSLK@3*T-9.+)-% MY,IJ+G %]'SHJ1&?R**W-;:'ZZS79CH2<*.L*_&$P-$%:W,X]!L-R+;%@'6J ME%5Z6Z]!>TC0#U-,<8S5BOH+3*Q"3TT)+ I=%V-#'=9U8"5D+[&V@W;62*R! M W"M0,L9*F'47^>O0-/IZ\7(_0P:+:B_]3<"2,A7KGVX4Y@< PS6UK*W1E5#BOA8LZMUM;OQTAK!S(T\)O3AF:V5U5M]%EJ]E& MPP%%'A@(A5TWQ\,]9 0@_% UJX'4#P>K/AZBWM,6 70LW- @!S8N4G-:O]YJ4:,>.F;QQLW(7,@-#%O++GJW%1 MU[=90UY9U=LZNTZ'$XX'?^%U[I08XW]>67.[RS$7'.2P/)\+.&INY,6*QMC( MWPT'UUB'QOMK^!=P3QN2AD7HX-9"SS7M:#/FG?=U+;/DB;?UG*\PY.P5 T(N51)^9Y//F, MWN;JP=#A#I!ANQ4N7OR+#< U>_'24)UW\,Q[M+1-]0W&]^X]N,W;!2;2GB/G MA6AV _ -EW74JI5$UVHH:GJ/9O#R[TSQ8:S,\%*=0.E M^@8)C3N4;G-0>0I;G(S;4"<86&#@.,GV96;JH1?#G%Q=3% Q6I2?"SI4&Q\W M&M(QHYK!>N\=GJ<%^@37NN3J-!N[N6HZ]MA,M[M'?\[/7>+U;)G0SA$24V;15GH*B#CN)JL![MO7SR MZE__@;_@4GP#AFZ+63GI>!]DP4['H-F C=Z-II6P_*;S =C%H".[6!=.\1 T M(..QVJ3Y.)4:E\DQ9/C8M>,!PH<%\UZW,WF-R?3X<)>*54M6<^&B',95U$5I M'-VX:DY70PYOZ:0V6Y8X/7#V$P*_D#SZS3L\/H 1GL)J/62KO#V^7)W.QXZ@ M\!3WHF[[3/(N/V E!F(P167@@LZ\F,#&E6QJN'5M#G?"6RZ_K'$Z-6S$LCS[ M:=>:,>?XA9A-W#'.5H\QDLK>L:IFP__YKRB.?UO1C9UJW+GBWT8T>Z\QXB-, M%,EE8'E/#O\_/PU#8IV*[O!>-:TFBK14E;&4B-N7]UR?(/,'W<-N;8;VE1G7 M2QG:,2$1BX0DA% 29 E+0QJE+ IDFJ:)BOR>8XS3&RIPXPO M_^^;??S+N+0Q[ NGTN1KM_$%652F_A45".O83X%?5)5[ M$Z9OK]?G['_;3=R+"@:)WF_=J:?W!@GV#K1CYQAL,&=Z/3M$_8)R79 M)N?7Z[,"S)A_&^/[&=@B**M/C-PV#GO4V0=HT)W!&R]\T#(P>;\NHS#)G^[Y M+Q=-3E?4 >,:&6:S.)IZ#(-&"V@-$IC,4E*VU9/04O)F]="L104L":D7^)=B MQO:4M2W3M0^-==MEB6#(3JK)R)2DP"*>JH8#6J6*#]&0=,&^FG,)4]RP4]1^ M(\MG32W?#@B]WX%0SHTISLM":4SLJXN_JMIMTH2S*G5JTI%7NZFN6Z XW8;I MFQ?_BEW,"W&=!7G92<%^:KT/#]@0_BG"T[O@GK^+\#1>BSH(6HO&#U3K\G5A M0E-F4=7.(1- 5G*70]97.&3MI R-KW&]&IO[$H^K^W6SG[5SZQW[6@>7.EO? MMJMQ2_?J\;/7Y@VUC_2:'M*5Q*U-OM+KRY!MXZHW%2G'1O_Z?<&A\Y"%BBT7 MP50#XW>VOOIS,)JP53P"GQ5J ^^JCX\ETJ;:UM:?*D/Q_S(JI27?)1^9+.>G M';^?.01<#0NXVEKA#TFH[8!,NW8L$_8,Q9'EW.W&KW?P+NVRW=GS8CBLPQPV M$NIL&O<]DB0,! 9A@J6.H*37?3!F0)8NG]]4Q,*:H+O9F)(+= 2_XY"EF@XG M%S8U:LVLL!;/OL>KIDI@:21&H# )&98"&:;1L%G#>5U !FN>E8\1&G-T+IU^ MFS"+;@F,:P%[QC3:&>/%$'[TD&F/1O/Q!.P_L,-F#S?;\D43_QHJ9C0%D)0C M[YRU%1<;7'QG%U-5+CC@1@5K3.Y_OSQH;/Y'AJ\9G(32$BL\_>7_??.+J7%! MPJNVREFX-I+!QF/8-8%E.K7^MI!C[+Q;*,U7@Y6WCFM@A,4>Z$EIJVLD3 B3 MGDUY6;, +:FOQCHN<]'"3/^<#XTK+U^:9GUHSX LY*36#RVM5'-N\[5-X-U\ M!F? MTSDY1FZ14)F[O(1)F5H7496PS-KT<[2P2@PHQZB@FO+#@Y0H@$#9V:, MJ S4\>&5<4ZF/A)V4]*DR\G(C+492#6;2Y/\83,]+CP097-@7*BW+0QG)1B= M7^K?Y$HP6/X)Q^"OJ^^-9 EZ8_'930 3G^^T,";#D2A/I9+(A/(J[]7.&O0FE"M,@Y MEWN/P_U@!7W4 XX]Q.U&(@/RNPS[Z5;;WMEHD #B5SDO);NX8ILLST2V M]S@-EG&=/%AV./2XF(;UL'8AK;HRJI?8U4:BIV)B]F_NN"-,WM2Q0(U,J4=9PTP8]T8K+S!!VC@,Z%S\$J-_EL( )]*^B-)*YE?BUT5U6$E7#6RK8W-X,49:=J15 W!.$B M-?C RZ:Z&,A9&$JCF4SG935G-I^J032ZXL%H%X@V&&1)N=9?F%4D6S6DM6=! M<6) DA-3N(AZNJU*M(I=;;\82C)E9(8B-X6?VI"3F1XJ_P*T &,/X_!MSDOS M$5)5X6!,KO%,5$=LKF-G.!V]( KWO3=]%?_V6L=+^::.]HWR/BVFRNB+R/., MY_)R6WE@4#S@XA;6PY3%JH:X%MRJ#]E0'+75*@L2KABO]3J 2H_J<;$48D;L M@R6#JFI.I%@),F^PIEP$N+$'X8G&G]$^0"UFY'!7]/I'/M+^$EL0)H MP%H?#O_(HB0P<6%A\*QE9-.B#403+OJJV\,ZQYNZX/ET!@/NT4JVCL_MUY3D M"'[$"TNF2(>-DP[KPI"&G(F+ZLX".0LVM?ON@.Z6R*_C+*S5D@7W08F,\-0E M;S29#%; (L1&H1Q9&WR>[KD&I@R*U2?/Z*5P%.IX:NU\VO#"/Q@'Y<>=MX'W M$@&>VE]-6 ?M:C1]-B537.Q[S9$K4/>MIAB20OVM?J7%A+1ZF5T(YV-9Y \= M'$ \8DMI(JLJR8*(J%G7^A&LJ#+K'K)9F5S/LBP',+&TVFI8Y+3UVF]D7JSE M6L4R>(3:L)&#>JJV:!*_!/H"EF%,'\2":ETD"YM?*2"A5GE+D%?&I]_K7TUIB$K M1L9$-B?*F D+1+&4E]XQ)ZSRUM7<&,JV_>4^%GUV]^VWFOY\V=TWR];><:W^ MC\D"$T8C?%Y53I2L36,#?5%A-3*BV<<#;^^U_7S@/5/(4*=GC=QZ8EBC@ZT4".0P+,2J$54-7/O;. M#%ZVPN"@M3L[.,W3.<=(HW4[6A\2, =3N"C.V' (FCB.%9?.O-PX!VUA*GI^ M#:JD,Y34"&/<"GT'J*/5V1LFR[?>Z4G3H&& 4T- +_RW\>?:EUMP)2OIW'!0 MKZ[]DG:>>@[W&G=5QXTW6[L 1B-O<+Y,;E*+^C6:@J:T<.H'35 -V4$S8IN+ MU4#L-RB#[O%J:HJ$QS P;$;1U<4ZF06(& 5O;3;9JK3H%9AA7@,3 N,4""'H M$(0QPVLQOUK..WX"DU)F@O>N6W,]9^8VS*W0NFOKJ8\7B]T&)@6G:#F7'3UJ MLZ *8^::@1PMQ]V3.G ! +M2:$*/:ST)9UG,<-F-96-L,O?J9I US;5#&DZ MH^).G!HF#8-JX*!-532(NN:3.O/N5NQB*U*/K\ VM)F9C?O; F(M&#(.WK$# MRV^16!=5U6H^G0XO.K6##5IDF]+7.6;_GIPKDU7E2K MC1O+=+P&8]+XK2:G M+E^E&9(+F%A3T@"^@, MYRYQ'#7D]HC54)8+]S9#0Q*T/,=<5>>MM!/;-*E] M[X]YB>QD-,$4R:6;ZXIJ=W W6E2/]E[]#QM-?SO<^Z5-177>B':-N:KGA\QV MD7T;HO:J,S4$\L7< ;##$'.@K8? =-DKEZ>S66A/G)^!<7O>M6T51L;*CHTZ M@@&>H3L-7?O6CHS#@;,EUS--.VJ;ES!$&/?-"U-:;\(RM;">#0M8R!6+$A2MMZ"FXAZ^T8&'MU7*=#+YS5 MZ['**#)>Q]W2K9Z/&W5BL"#F=$=8M>MYBN&WL4$['-8'T7Y6R]MF'ZQW;.RW M>58MJ!5*Y?J&>E<'1O,2K)-F/II.3"L",9Q42-;N0+]2\AQ==T^,/_H)V',@ M?,<%0U]>[:PT>)/PO):YX)V;B[D:ZK$9^MU7M*I:1UZ@=[)QE0%'4:Z#RZB0 M_F(DHS Y6)5#+VX6 W1*K4V_!1Q&<\ Z[,O"WYE $O*]!TR$)L&P$2<;=,EA M\9]Y(7$_Q&0.6C4W736 %6CEUKVTW(LYW)SDF"&:KP%^#=>/,,2F4E?JFI\ MFC%J<343%1,ME:; .&R5ZD<^U)H?!_[237Q+D!XUOUMB,&-VI,)9OH7MFKE_' M#=MC7<^,P/G439,6+8W]ZSCPKME-,+M.-\'K>1DV MW/7#3]YE'0>C.^\X^!K;+&"T<3P[$ )/'!S#EYBU"[SZ!-[T.^AZGWYT.ME% MG4[VQ_#]Z.C+^[=_?SD:O0O>G[P:'A^^2=Y_//AR]!7N/Y1G[Y\]#^&^8#F= M[.CM/Z-W7^'^PZ<7[^&=Q\_>!,_!T[R)E$(>O9:$WBU_/1R!5,=W;):[?)J_?I%GT*KQ[F M4D=%'?&<? M/E#8PT!K[H")3P+\D@P M':9"IFJ94+>:EVZL3]ODLMUXZEZ"-H@8X-8*;-L!P_HTQ\FVB@BF&$-COQR2S-!QMVJ[^NG11W)(#PU^8]VCO MV<'!2X=X9YQV-M,5=<=R/E1U6/C4I>@V^M9K)>9E:XL\_0+:&GJ'GTQ&H\*& M3Q[MO7[ZI$'(0TUIU)ESQZ6X;]BQY)-^UZUS7Y=;CNMUF56>UJEYBPJ?M[/(1=+A9G?%NU[1] M]!4/;*>$_BG5^DPM&:!V>3 &$30$"PZ+(M%5\ >F_86!_W^;](D+95H:H'>G M3MBTD7SKY0FI]9EOF"G'\B @M.I,J9D'ROOZ9QCSTQ JZ/0F9Z!)J[C!?&>N M[ZEQ:/(Y_#2!R2_O/,;DK(V\X/TP*S6X[>Y[54IP_8LL*B/HBL]5/= MLOENF]-SE1>N=B1AJ7B3[5;(W@$V<# VN%330'K#:M6XZ-^; ,>)\N7)^[ MR;C&(32[.NV(25=W-L;>J6%J#<\_FKWJJ*>OT:IGI:R\WR?P3U-=^,?!Z]^; M\D*T>N&=IV!BFK-KCP3>;EI/M>T[3"&&B>C UA>FKP?V"U3#+N-'/VIKE .Q MP2Q'BN'YDWAD8>;ES" A8$,L:R4/\--.1@J\N\.7;<3+3JKJ^"<,7L&L--$? M\YX!'"U>@-DO.U?50FAHJ,[ 4%O46,-X.VO.JI6!/UB*!(D+@M^,^-(,]Q1FEJ)AOO8\(TY8YX&ZG;!K79<=;X23@.>;IAN M5ZJA1[/KFEET6"ZR[U7_S(+MV"=_Q%6VZPMC9J_H"*%>F[-O0K3=,[F^'ZNW==M03R+.PSM>N.N^;%A]-+5!]8IT*UB4C6*2:.1_[I.<:D3NA[M M';Q^ ^8@ZCM^& ^V QKRII@\'27M^;B:E7,KJWSO"6;HS+R_)B8 ^.@$A)WP MXBC]Y5?OR.I.=1;_XI6H8:]]Y':LS^6KX>K!I#2I9-?0*Q?E\96ZI3U]CXKB M%P^(!^R=?8-&X0=D5\GG.6CBX]/":+6^]VPRD2;%H$T6K2DG"8!R7J/Z7NB+ M.IA\@HAK>-*;&Y\WZSW8*8I!-0^;1EFL&IS2:3VEEH3VO=? J_9>N>90EALM M^[HFMH;.'!H#!X#I'ZP8HIU1IY"N866FSMIQL&Z^_(KB]M ,APWJQ)7JP&S,8YWJM M_5?6:#0E8'4B8FOAJ&$Q3?L,4=W'-H!QJ%J M?,5-.^EYU91OJ7IE!]['N3QM7?.@K\Q'+C>F28-V.:A66T>G*0JH4;.M0\VJ0AVG -NC_: M],.J,RV7UV*[CJ+=X:;@1H/.EAHHQR7-&1@-+'PWQ8L.;L\*\;J2<&001>S$ MW5"-@Z8%39G9UO4FK]+X=KHL?$4I?(3\O#0/Q8NOY3NT^4JK_L-?!J8.;SR; ME&;Y&U4#IN]*N\V8VXQ+ 1MD72WX6"%*=*\N;*&Q+SUVCOI#FQ/UF0V=5.VX M*6%X$U&8[32$UV:ULB^UFQ(LI]G<.+JLM6:3P&2AL:^EBZQ,%C;1)/$CB)^] MR!;F(D%RU20FU:&!6YV9+:NLZ$9^7*YK?6+,DQ"#T1W39ND'RRW8-F9(HK7A MCJ%+A_0;A[,]S(-O*NWHCGXI#_P6!19MN'93C4538-&FN2Z5V'QCF46G0J0& M-^X4#*EEQ_NR@_1!2^B[SC=[U;*VDY))=3"6QGATWI>J_?Z@/@I_3,K#R9S/ MX#C75]FLGY]=PSS_H&6<93E)?1EF&6:I,9_G)/L;,KU6V<$@T2)XM!,XJL5![W2^=M!7 MJ"&T)8^\4TQ2EPK/\"0B> 8Z]RQN!#>$&?Z*!'F[3K4\F+G!G\[#MP$ (&_W4%(9-;1<,F//IQ!0$- K1:KW2_ZZ; M]7*_SS6*7SNG6LL^MPKIO :W6"J)^WQ)&5>#Z5&KSD;U_:K6OACK%<>?)X7H MJ/CX0)/>7EC!R];I@"8R/3']DS?W0%FHX'X0 /;_-"O1L#JKR]8X?B[D\% M MV!>N+'?.7;TC4NG2W =+/O%:)VZBXN-5G_JC3V-$17:*G$L(J2O!+2X)*OCV M?(+U6-G[ZA:3<+K=/4^>/OFK22)IN-6BC0'G60E6637=Z;SM<>VDFG3,1FO? M#0NM$##&,+PUHU*5/5&8R& !9FX:'ZA-V<)R[.]D+K:-09I"0I?"LG9XU9DI MW[>P[Z9V?P6NO1,A>U3\TK! V(GBM!@[J;ZVL<$:V53W.AC8P$C]XK,"FVK9 M-BJ=G9^R&:KMQB1O*D7A1KAS/,&E1<,"M$(GOSK&71DU&!@ZO+H)W&E)IKV!E-WC4>2/Z6H"I%I.V M 8 #M#.#L%=>F"*AVMPR,JHA)V- M8QI4BY,HDZT.N@<$>3I1K(@TL%GEQ1C M2^K@,@1K/YM(UYO ^3]@()-S>&(=A<#)M;F34SA8GIR[Q)UU> (-SL/ZGCI5 M(VK_ UP%]@@+GSM"U[FMG.IASG G2-X0HINXQ3)U1\.FP;0X&Q&%B MEXZS=P[OTN[;(V<1*PUY&Y-YA'!_-AG:^J%J%HZ>,I0NB^1E.+%Q#UW"BP?. M;VDY1BUED2NOJ_T[7Q4$M9SMR,!%-]V">#34:WIR*-GBVYFT#<_T*K'OZ:R, M68FN/\@@\=HCK60;$$<;A)DB78.UM^AO-:/HG'/'6D&PE)/&\=-Y:5?0FZ!8 M)SG_K:T*L"8/;K&!^+=\:\TIMC!RDU*:E3^U SUK<;U92 6*@>=MRPWQA9V MU-08U*Y(W.87G1+F%6L:MLD=/ /W.1_7/-IH[75;(3L>['T%:^$\US H.\/6 MF;U\XCMDLA,D A*ODT4)X[SL3N:?24*M$2Y+I5)(P5BR((ZYI M&(>A3$FB-Z4M_%1>+0=F<0T0EV(\G<\:Y!NT\AKNCHKCI)Q.K!H%GV($RQ]. M)I\L\&3+.9;#5AN"/C43["J%!O<%S#''/CNO-$*CB4K5X&:-GK@F*-'-O43N MN90 M4SA&MEN?!U B$"^W+2VLE\*TXW(H[P8NZIO<"TV&D@VPMA9HK4&T,KUQR5B' MSPRV@ _;!#AX24>VMU9WUWYK_>#L,P.MV/3,0H0KN Z1CAAN8X5UINC!6+:YIP>&1.NO?O) X-&7(QC_\?F'/!2Y""+N MJS 4/DFRP,_#0/AY$";]I:+NFF826PR":8NG<<8:\97 ?:C"0,IF]_19&MUF:CTLH\5A*29VF>X48YJN(PU]Y]H"$;IP'5CY M!48B2FP5]4D9AP(;&\]9XQ)>7#FVM QX_] FM*%G#M.D6%E>N"G/,0>>+=JN MG>>9U8,'N! E"HVWJAO/;+._*F]CL\)F0/C)WG?@UFW;PN?'?ZRVLQO/1^>3 M4@(A+C-V$!ANKCOE5J$LT3W"& M4$]MNTYM+PX^,"I5&%#J1U$4^R1BVF2B6M2F^TWQ+S:^=5E M8XZ*C.^N$VXR'+1-UWWW!N*FS?(W+UX9S%3/IA=9<,JDIBR.J.[U9 M\K[NF ;K7*,VFK, "[N1^L>&YI;(/F"93M,@#ZFD!(B?9W&8QEI0#0M-6?CA M^3IJCQ8:@C8Z<7TB7ZH2'7\-.?O13TO/)BTN!NXIAX^S=(6<_X_IP5.S.#1C+1!RR_\,Y8&0*LHD3^* <=T3QO<@C.._@3!T0G,&-!$F\%=. M Y]G- ?"B&C*<\4#!8911-80Q@H)')O^4K\O]=M$_EEH(*F&:R9!DVJ=!'/J$4^&SA$F?A4*F6:*E5!JH M97^57):Z3]GM;ZM$%^VEZ_"3FU#+[;A)3RW?0"W)\<$'3F.N(I7[22ZY3Z@0 M?H[]O@4+HBP-9:0$WWL<[.=74,L:ZKB"U5QE7[LL7HN.9<%PG T\-+%PUL0P ML*W;[,S3!6YKG99C@7",^[+-K"U*,1]A%3*ZJK&_AX5!4[-ST[/!O@M'!=8[ MOX GEM7,9?.XC)]A:^ABG[_*9D'5Z/>UQ7\/EO>^=V@AP!>@+U #E(7!M*N3 M KHN"Y&TG"[PTU2[2WC/UOAD+II^.?9FM5H"NF_9W;M%KHK MKT!7N%["[?D5I,4O7.)A;?,LGHTU!I()DU.7&MB<#W/?[2PH"_NRMM"S M02>$W3FK77-+=N3 NM]P)JH)UUCU:^GT;IA6@PS8<6$VE6^TZ,W -VED9 M#^#J^JUQDJ!W52&2S#J77O."]?>:W-\6# RA(^NL.^]@?-'QW*[>W$QPS7JT MK_UL6&AW9K9Q:1.5PJRF;J;@YG2_56[TPX_4]V0_?12ZC4*OXRR&[=3 GC93 MW9N=3V /E&G#C93JRFZ-K#>?KVB^B\\;-.G/30K<8JN9&A[&<0)Y,Y:V97Q, M[@(C4_)6G.R<;61E;85YA2DRK<;I4U]D V)E,I) MY[6;M/J4OHW[=TN9C[8\9?[*%/CE'DE!2H.<)'E"X+\@RV,J5*J!:A(E)!,/ M'0;-=5WWFHR$!ZP86/:U>WDBF$'L]JG/%<%./<-WIAT!1%J4L\T.F$Y^$ M//5SG@H_9T)3^#*1)-B0*])DJ;G(!2A1Z^)>*+S61CSJ^F'T"3;IY1VD>RR? M=$_>]^JJN\Z'KO>S-MDDQ>'1WN_F&Z+W>], MEUV<6L\W:6=R/\I2!@5CC;2$PM&BJ\!8WK,$4=PJ4 M:Y1IQ[5AZ U2FFB>86=LU#.;_FX 56V=M&W'U*P/Y@FYS:D5*'[1!-/NC!/_ MES9_[A>#\M+ (:R6F#L<;P1RFTR1[R$;+MH\VB5,AQK P03KBFH78)M-089G MS=$2?@9JP$7A"XL"IM/\%'1P,.^DJ]M&O "C,6.D;^:=S6$H.&?%*M4I[<<2 M4V4=HNX%1O5N'FR@Y]!6LO6_)U<$^YV'M:[EF2DL@6:@65Q4L[I?M@-0;#NW M8\@6]Q)W3NIZ\L4K=QB)OU#IP7IN[]QRL:>UC\ZU=[S NKH&">?)P:NGK_&3 M&@\'5,_]O_:]T#3T2 ?HV9@RUYP.5GC(SK$MF+)=R8V%XG#@:CR*!C'@S6L# MA@MW./;>O*L%NF&>S?LT.%1*&I]A8+\[&%N=I4I:NPM+V6IC"KX55XCN)/"8WR<1>G$ W@AFKPF'K+]P>.\1^ MC. W5:HU>!'BFFC,7#+Z@QBRP@)G/'7PO$"W,ZL0U U5C$)K@$H,I"&[*"=& M\_CB )<1.\OB \ZZ!'9#H%KK\\*5*_3%95W3[U;6 Y?H='%>:(+1]W2NFX^? M?M!9&L81S_R$YJ%/&,A\SE7LIR((2";36%"Z[%@C*=&@C.I,)8RPA% 9"$$C MJD(N\TSJ&RD*:VAFYW6';O/T!D>:CZQ9K^I0>O?Z];D6*[IKK3 MUY8T)KII+/J^.GUM22NK*U(KG=<0M;FJV>W_K=J>LRX;NILRK1>$.UH7O8P&N03A'$IO9=EFHZ9,(!PRV ==C;G'J!L#@T7)MVR]+$\B6&H1'59-=!['9+E&-C[L1'515-9BNI<5:&5][WPHN2GVO M?M"<(>A^M% M:K<#XHZ*U;OK@+B_'0MRA2 U1PO%J-4GFE9TWFM,Z8Q:B,C-Z3[F$:8Z:&#; M[)BDN<'FE.,N[,55J4 KI3_+B+68!]A6C:;4R7"L02T=VX$!M&V$ MEI,IZU* 2_(OV_'^AH$[]5F5]K18$-GVO6XPZ/VQC[6H)I,9RL_51/^EZE0V M6RF#7VA-T/$]U6VMS-ZA2P,^])WS!563-D-TO#E#=B6WM5W+3E:P*2&S4K_> MOW7;CDMATGS;_JO[FTG/OMPP=?M5W6]X.4,9HR3,^ZK*"1)>G5^W,I^%M+5N MF5H+1>T"J\;%HTV[3K/BW8MM=GOG6>Z$7)$0;R@374.S"V ">,&9RRUV\JSS M1/QT_?CL$JPY"VUY7:'K^SM@J:LGK^E/OZ)!74=[FJY1F>Y /O>2^5+)?# _ M1:T+1&^^T=;-=]G619;ZCQ$!71O6B>(\0E%\V+8B_*,$-G(^*3\9GAS]U@FK MX.)TKGRUS%76OVEW1+?-UKBH8\5Z\2 79@WJ(+FI9S"B 4[ON%-8T.GJN,)V M.])XU"Z0,YIKU&77L9$93/2V59$+IS?GWV*O&O2M]8_MLH,EL[RQ='' \ZHI MP.@R))O5Z[H?C5TK!V/R=+A,)RK0@22?CTL%U(EBV@!*VE1@8UK9$U;BI0YX M"77&)HO-6A%AQ*PQOI5PB2 MOTE]^GXJT896O@]:5<)T.1.FOTI9RG=567JRT%KNH#22RNYWK3 %.2A,3X9@ M8[>N"U/;YC*W?W<8'\WEAE+L;VF0[H8ZU-E*ERR@%N,!=5:M[4)=HY'41HE1 M&>H&MC7HR6+;/M:NK3=E8(>) A;$='JI36/G4W5>!L>SK#V[TLVZ.>++$0CL M#M+,P."DU)VG;!>C.H]SR9U:O\(XA[]]5DNC*AK@M*DM(5UB=[6V77NZ3?3% MMMZIK?YZH UAU6$*? &L\0)E+0*3-+"N-7FE3%)U7;Y M7,&$D<&8V6]X<$VZF#-MD^#X1"[8D/6:PNWSJA-7<^A5>(1KR]9P(.PE8!"B MS O.L?P#Z7>.Z8"#;G^0-=6RY=*.MZ-KAE-O=?M2X_K#CUVWMP:]_WLKKV@19XP=HJ3!,&I N##6X;I&UX'4YNVI9 M?S.LH&,7FM.[X'RS2A(.>-Y-SUV4\:'5!TJU/AVU?>"JW\\QF]X@7,-B7!9Z MDX&^RE^BP,2S7RG7;]9[A;OU2ID036U2D7QG&7]+;.:KR^::L]$85O84NTY%H&W4YP%CLU-K,)F@6VUF/#LX>&D[!MD4 M)6QWI.2IK5:T$,#563%=*,%:,+^ [;2!YK)9Y;^>__[BE<$$&MN;VJ]LBU>$ M1%],C<&C6B<)VR:6BZC$:[?P*MYI&B-AZ+!8<;Z[MHQ-2]KHZV:11V__M;W]9+.W'^=E/.>*AYKSF!,E4A(11@.:I90$FB:,RRC_@"7N/RA$ ML-YEOZT]FBXWEX\GP!'B?>^."TY>65\76J)/'#]^"RK:$]>G>TL*38*C)TVA MR_=W&<,B(RXW M$0%)N.)2Q52$@PKJ5@F!8N(B&];RKT5!'NU9FU!SXWB95(>&@6["ZABL5=D2T@F M@.#B%:@_-EJU-;6%8^25K=TUF>*VZW>;][$&-P%_.563TY)-0=-&G):V!V:G M'CSQ'AT@Y -P%S8PF_Q>8;1##KS7L/YG"F\\J K[KB=GH/C^?6FN,KF6DGP:XWWMD74-S>(VL6@/_AFJ: ])V]+)PAXF+L/EL4M]2 MF@&:3_BDE*KT371N6JE?ZQ^Z59MX_V_=C<&I ^%.A^SBUV)L)FW>Z[102O?S M)#:*Z*R$_V4]'J>D[ELE]5\SN?IEE.Z'8;CY^TMOOO1+NA]&V2WO#?8O&5*P MGT?DEO=>,>(LC'=LQ'>VQDD<]2.V-MY^F%SRY"T<_]E6(9E&\", MD!?^OWN@SMR,O2]SK\^J-#A&[C/+,W];"!R'P-3J#RR##"U+KX:WN^!B_Q&HO^78_)=UC/GC[NBC[6HISV M%-)32*LK8-WT?5-$O^F]V.B9PO;21R\V>@JYJ=BXPC2[S7K_EQ!*:7T/]MK: MT,==K^$1^XB0IFLB<+_>YJS=;+7N]G3=RU;VB],O3K\X_>+TB],=W!W(X1_E M1?TA4OE__BM,@]^N\_=+*[E74LD6 X(_?,&W:WG_^SZ7R=#8%>MDZ="&:[=H MG39VA9M72R2.+FB%YP?+[2"PS9PAX<"@ RAYPKXT+>+BWOLN@'>2=Z.G7XY/Y+"^!]XU?Q^]28\^RH\XGJ.OG\Y?G+RY M.#Y\]^7HXVEP?/+FR_N/\*[#L^+=R=/P./I''UT$7_XZ>3H[>AV:3+$]\%FGE"YJE,0FXS)-T[W$R"(-@I:6<95';>=BVCRNM7ZWMQ*X(! LDU;E.(A(F'%AS2**4!9J)4-,8Q6Y(G=B%'WJQ MN]5B-VZ].T' 62B8'T21!K'+J4]C07W0L4"?@NV50NT]S@8TSWNQNZUBMS?C M>GFR!>O4>W=ZMM"SA1]-XEO'%F[BW4DY2W1.4'\D,HEI*)*(RCPCB62$I;V: MN5-JYA=0,6T@\>"#SBCLHLC\6,>Q3TA _3SDF<^X2I50<4I"W2N:=R11MBPM M-M\![\\K52E3KHH9L:[5CP$<@3_E^ER;9F6C[[VRW^!7VV5Q0'@J=ZVE7'=WJ"XEU35GC=^']X8<\8CY(8YZ%4Y0SX9JH3H M7,#YD8'L>>-.\<:O;2!4Y"GCJ?85#T.?I'GDYSR4?I:D,-^X4;VR31'08LU#D MR@]CK7T29Z&?*Q+Y,L\59U+ /WKO,1TDV3TDB?2\L>>-6[)W-^"-0:P94ZEF M/(M)F =,::H"*C0344)UUKM8=XHWMI'\*&=:\8#Y/$[ DDZ3U,_!,/!90AFE M+&5:BKW'T2"@M.>-/6_L>>.:+*=(D5S&@90B(8((JD,6,2$%I43&.NEYXT[Q MQJ3AC4JJ, 6^Z**-W= \#T@D$U :0ZI ")#YEBI- 1&&"98QA,,CO([7AOH[B]C&T/JVZEU-;43(86? MIS%03LJ2G!&94$GO+/S"H! BEH$_V MV"TYU2;"!2ELHHX#GT4B]DF4!3ZE>>)G,A8ZA&]H+N\M$:X74[V8ZL54+Z9N M+:82GL:2ZE"%FI HC[G +B2I4#3EG,NP%U,[):862:IOR%\_LX$*M7K5^U?M5^KE6["V0^;?X\U-:8+TM0S\L+[U1-3DLV/<,I>?#) M)S6K;M6R^OY,ZGXT_6CZT?2CZ4?S@T>S97BXF\8JB\_UD,QCB[%48X>?NR24 MK[F2BS+WVJ+Z"I$_+,;*K[6KP'@4#T9PHV!M;1[,Y:[J0WL(^6\NG-UE+W": MB22(\B@0:4Z2.*.<$A[':9P($J=!WQ)PA[S +[HHP8JP,!0)]S5-0I_07/B4 MQ]*/87-U&/ \X0DB&M$>T>B!H';TQVDO%W9*+K2U:U(++5(9^5&JN$]('/DYDRGXI(^WG$1<1 . C;522*>ARK7B[T_?'^X2MSD_!A"@H?SS*18)_1)&1! MFC,9L#!3DM!0]FK?3JE]W2(2EM,PUI3[/(P"GW 1^#3+K,^O:5;_V[H??)B=UZ]G8:"!3P+N)"$192GJ51YQH30.@DIZ[GH3G'1 M-C\C5%1&) "V24GDDT@G/HMXX&=VY:,]%'S(7307V M9TI53M.0\"RCFJ=9)B5)M$RSI$=HWRTNVH&^3<.8!33R*>X:!O[UQ$/:1)IGU*N?!+*Q <)J4$U3;A&41%"?2);Y>13C3V&4R"S08<*PTW9V'Y5K/QL?[4$_[AST MX^7!DSM-2+AE#LU#%!(BRX,HSZ,$1$+**0>C5LB(LC2(PE#0WNV[.T+BZ.1@ MUA$21.N0DC#P0;83GU!LS4Q#')L5HQ#85,,:$F(C+K6Y[NF )PW"H L60L!DGO MQU&J?)*DB4\9J (BS%)0^B*A">L5@)X[]MQQQTBGP M0!J*@%#=^]!VC#M>--Q1!5P3F42^%E'LDSP-?$94X">!IF&4Q3Q),HQ%P+;V MW+'GCC\-=^S-HY[$'SB)WT !B(-,2B'#C&6,2!'2/"%S M9!-OW:)5/9G,V- K+9^H[C.&VW=:O=LX^$_2:345+) J%&F49"3D.0_ TF(\ M)DHF*5A=O;=QE\3ITVZX465ARG3"?"TCYH,E+7U&0^*K+,DYT4$L6;3W. P& M^7VX&_M.J]N<^==+JEY2;;FDHHJC1IY'$>? S"BF3$2)"+G.@9,%?3WDKDFJ MUO.;9TD:ZS#R!<$L=,J$3Q-"?4FR)-(D9R#!,"Z6;7T6>B^H>D&U;=O:"ZI[ M!I&BBF$SFBRD@@@FT%US]C' M/(TEU:$*-2%1'G-!"0@NH6C*.9=A+ZAV2U!UTQ.5D'F<,.Y'+,A]0BCQ.649 M0LZ!?B)Y'.L<;*IDD.1Q+ZJV*971H5E@1N$VP"O=_< Z^QO#_LK)G _59IFU M+VH'UZ]FO9[^>_7KVZ_F#U],(^G_-&-S>0%%93>MX#CIO(0S.EE57'O\_ MO/S7XT7?&OQ0P63EP.RA49"ZG6^;W?V9"-1:?\ MP,QT856^0X;"HNVQSN! .V-V,)9_%8P7PV)V<8+;= *O_7TX$9]VT^(8JG^_ MNGC_5DYY1-*CMT?AT5<1PO6CH^COX/CP*(3WQ^].ACBN^/CPT\6[KP?!T>$K M_>)0),1)LU-&>#(4U6 M S#9@22'2GJE$JKXC'?"I\UE8E+A56PLV\^&CHP+>.2C8NS-SB9S&+VL?OG5 MV\A4.NQ0P*A4N;SFL,)VW(ML\-7>*XV3TX;HY8*DAB-,15Z7;52S,OG)7[Y@K?:=B[W64!(_\IAWZ(>[2QDXP^OE* MD?)UCMU=(F3<&TKS1I_WSQ3#NR&JP=5KMOLA.\5$#/_S@*6:Y!'-9C/T7$$)N^S=^'QX:N/ M[P]_/SMZ=GQV-#K^].[C/Q]AG'#OIXOE -S[M\/_Q37#\[/C3 MT;.GY^^BIQ?OHE?%\=NC\Q4@XKG/A.9^HO(\@X\D4R'V% ^B>ZA3Z 7[+MCJJRZ5!V.KOUD3IKB5 MP7Z]-;IW@_W;AK5=>_5=1?OJPEQ?3]QE 7Y[X_O: KP^4[4@KUXU9ZL7VS<1 MVT7'&L^2B!%)4S"_=0S6>$I\RB+FRX0&048C'3 4V_& DOLPR+_E^&P?9_D& ML_MV"_'@S.Z'10]W>U)Z"?Q32^![,*%["?S=)'!K.$>QC M*W8_ .4I43*-0YK;"G_:2^!=M8^_]?$/]-(^ ^!V&0!/,,WQITT ^)FTF6^) M.^VR-O/=@OEL:C+QO[9:"QZ>8S7K/?XW5UR.GW1WSG6'UW#;:5$NX_4+^6 M,K9K47Z$@%TEENT['_?M*_BJRHEDU5DO<^]8YK;. A:EBNH@]"E*6I*3T,]) M#H*79X0+2:6(XZ;3X/;(W5U@M=OB*NA#Z1N,WK_:.KY?O4/@7L!+I.? <_K@ M^D\@JW]6U_X]!-?79<!YK)W$^%!'F=4NDSA4([S6.1 M:P96,]C(^2")[P$4\>?R[7^'Z/J#MI)OL0;;2@E]7+T7OEMN*_?"][Z$;S\#%+4" MH[/ OCO843=]SK8A4%T.OO-6>6=,>O<'AOO\^(\%9@@C%\@0SR>EK-3XVH4Z M3\#>+V9_3:KJZ9>I&E=MTE&PFZSQUIA41R<'YT=_?PA9@A$XZ]1M]1QO-*.$\ANV-LE#ZA$7<9RSA/AS 7-%,A[&* M]AZ/)RMB;.4#"Z3E%:,I*\H1<#!/G 'W O92JB&;*>G-)LNH6YX!S5+P?ZF4 M-X(OSRI/ ?^3WB(2C,'=0@ZP?RO>&4;;SSP/YZ6!++O.<@SP:)2*5:E9_0$ M=W]52%4R<];A,'JGDXFLS-; I#\7B*S&E8"3")P KH:3!E>RX;[W?-P9[3J@ MM0U#-HM1C'!=)MK#V^#':M]#E+?"/1,?*6N?;6E]MIM6@%5G'I.?+0BE#P5(,]^/@$LC#RR$"'R+DX7478P? ">DW16>O'/"#0I([N83S M_/CH^@^@IFMZ;>YC;[9J+#4M7$D2]W_F;@!3L^6G\;8 G3>+@]S/>MU+8&"+ MAO+3'9 ?PH=6P$[[HJ0;K=_!""XR3B)L4V8-];78ZVQF; NN0)4?.V6ZEH.WF6;%1MT]\O56F-&G$_PW>CI^'[CW_ M6(\_'D7OSK&!YOO1^T6TH"3-6"[CR,\4TSYA*O89CYD?T4PG3*IX^0> M$/Z^X\';/@[5]W#N94LO6WY )^9>[&R1V/G:B!V2AS2,0)1(3.2+\Z27//?3,W)MSXT?[#W;H_=OKHHCW MD]TC<57-0)::U+$2GNTD^K0LA/+8<#@1=5K9]"K_!3X1[IN4[MALACB*[G:W M'A+6YJ/[M>,K6"KXZ6::U7PTMXE83]A,G+V9'LB/< VF)YY,G!Y5:U]/';6] MT"J3F*21C.(\DFSO<4KB M%>WJEUZQ>C@F?<]=M]V0[7GJEO/4CLTJ: K&:>3+#'FJ$,!3 T+].-ZKY_-L:Z31;K;FCT5T86/5U.1MX8WHE$^MD&]!=,7,]OH_[E%9@L MWR9?'GI+NGM5UZ]TC0KYI6HDS?DZ20.S/VB(XB8^4?RJ%S W$3!=:)& ,PU2 MA/AAS#*?A*'R!+?)3(7#^:*]9ST"W1B7O&>AN M,=!60^=)+K(X)7Z22>(3'0 #943X89ZP7(0BTZ'1T =!&O4,="O5\I\G,_!D M,F/#IAIO2Q+]+LT9=5^Z=\?PO9S,LIYSD+,A !I-!FMU#&X&M M.:;;QPUW(7[12\%>"CYX*;@UZ9"]%/Q&*=A:HIF*24AB$( J83Y)TLQG64)] MQB2A)*69,I9H,DCRU1!\+P5_O%6[BD^X$7OH4GR4ZV,0WA!R\ Z@:,RK?C6- M/L1UP&FZ,:;6LU4MSG !V?$[J/^+_*QA62-68 7J6E\;0LZ)F9(G!M'JA;:^ M-WO83G";3V!(OP\GXM-NLKEOP*(3\8N_/T0I++[FJ9_H*/%)I#*?RCR#12>2 MQD' TT3M>0IDP13)O9RKZ\,J[0!ZYLD"/)*%+7*ESU4G%;(&*%..FC#_D2_@ M++GHJ9[/YJ7JHN]M2I,T2'"L1-BV-BZ+N9(,&#$;#B\6OG#5UFHLZSKK4DTG M<"6,VF576H2VU3'+"4QE/)G5\VH"NY6'_FMX9P$;QH:>G)=N;/"*R5AY%XJ5 M.*2AJJJ!QUQE.'SYF96%6:I%>#HVFY4%G]M5A*F7DPLV1"_X )_2B2>/U3FH M+]TE4%]4*8K*(>!IBS%C^7,-<;6*0G@[>-<=H$C.AA8NKX9J-"O*%9"I6:^6 M1CC#-8.U_SB7IY@-5!DLP6$-L6>I :G$4::1V95- !!.":P0C/ C$'8-_U?O M!NX$$A/L]M!B$E;>=%Y6 M3X-;0W%=^B5\2^A=08O%=P(MU@_YUD->XZ[Y#LV>;[80R27CW7)8N.U!==JF MH6PQ2M&N;:LU3$#VH!B]+7+7#\@7[_?X1H!L8;^M#W%;(P.I"]IXJ0P@\L[M M\G?0!7K:N6UNQY9DL-\%LNF]9+"7$SD'>W1#.]![6[B;P:AMUQK^B+[:-UFV MW0_>Q7&?3G^^.K3N]'QV?';5Y^.HG<7+][^^?%H]/S\Q.?1Q;N/!\G1LV-]U$VMS]-8!Y0RGZA8 M^X03ZG/)E1^2A,E8QTK !CU.MR^M_@;':/O8SW;FW/>2HY<<6R Y,A7S7.:: M9S(F+(MHK%0"YR4+62) @O22XP=*CC:3@Y(XYY1'/LB(R"=1$OEYPH6?@AT1 MY!&10O*]QW%Z'PTG>]'1BXY>=/2B@T4Z#)E0&141(01>04B>L)AR&?$@O$1T M7#M1L)FGU(Z45X5&6""9IGFH2D"Q7(H=?.07;)R#I)2ZR7EK] M2&F5--(JS F-0A;[6E+M$T$RGU$9^S1341;%FD8Y0;3>(.FEU<]2<[VK8:57 MJE*F>2&&=B7PC>%D:KIFWRW$40^AMUXXA%$6,\)$(!4E&OA,G.I8IEI%FJ4! MS7OAL(W"H5OP&U*6RA!,F9#&8,KD,O2Y3A)?)'&DPCA/@HSO/4X&6=8#XSW\ MBMV>7=XMNQ3 $[E@C*2"B"3C- L9J--I&FDM@K /&OQ GM@ EF2"!\H5" M("+"I$_C./<%26G =193%>X]SH*^K5+/$7N.^$T<,8U)E #[RZ(\)F&*I=64 M2"HS$7)&@^1Z"N1754XDJ\YZ/GD/?++C!N<1H3(F?IHE >;F*)^16/HLR/.( M@#U N7GDW*>YP.R-:#E>P@ M$^XK VZZB'>&G/D=HYX]2MC=1&Q^(EPP20E1G+-(:$I4E -SSG(9:+1T(IY? MXNOIY>J/DZL7BZYQF69,^D&8*Y^$FJ*$I;X6.8]9QC,=*G2-YV3[X*A_.MBO M+4@#ZD57+[H>A.A*A8X#EBF6!!2,P8"FA"K-2)3W*M?)8DF9_*F*@4 MU))<1CM96]&+KAT*.O4"L1>(#T(@*B9B^)\'+-4DCV@N4Y[P4*0Y54$4BUX@ M;J= ;,-[40X[E >)KP2Z(?,D]'D>$A];XG&FTI12MON M=A]H,?0W=".X' C;'!C%0\UYS(D2*8D(HP'-4M!O-4T8EU'^@:1[ESZ;0U<]O%DICRR[]UQKX&GK$3FA/T\7Y^QCXZ^ MPGN^OCD_^OIW=!S]>?9^]'X([TE>'(KSH\-_1D98 WV&")5D< M+7<9.%8S;SBI*L2W]\RBKQZ&I683W8-A]^7*ESZD9@:_LPI(?]Q=MPK7S2LJ MV(O1=(YM ?B%!S,ND#4:K/?FO4-)GP)39*5PP'W&+86L>9N#YX6FC M":X#G !O,I]5,S;&)PY,KP#$A9_!!N'K["7LG)6R\A[MO7I]4.W]TL6;!V&O M58'8]/O>83$T8[S!%.YB^#C(]4,<>-/AO/+8<.BA=$$Z8\/%Q[FWF-X&YY/Y M4'IG,!2/*S5>?!6KJCGV)(&YP*P10W\*O&R,P/YKGWC&I'U* 3?"*L"HO E, MN6P?4"DQ+TW?X7WO#^PE83M#X)3K=1K8J['1PEAB^X#U%&.6',\!2F6O*K![ MQ>7#PSO4%]-A0MKV K@=<+>8#\V!Q!GC9T7I@0Z 2WL.'S!XHE]/8+7%PVWE MT)V?1//B=?UR-LBI YSG8;U1KYN-NG[?BJU;@LN9T?/Q>O+K'E)O\R'MGI0I M/*:L>U.PZ126W+)XUPIE5BI6SE0ZV&PS3/ MENO844W[YIAP)=B\JEO&X&&NYN*LGD3G^,,^+5"Z.P)WKK>\%F=*SH?JA48" MK-_>DM]3=V+_@"5XTL[^A>X5GD;AN7CQ]P?.J=8R5G[*9.J3)&$^SU3FIS33 MG(4B(+E85GBT"E+&>)#]_^R]>5,;1]<^_%54/%M217/W.M.=5+F*!"<_Y[D% M=HSCU_Z'ZA5D"\2CD8SAT[^G>Q:-A%B$P18PJ8H!:::GI_OTV<]U9&"<.*YE MX$13#GHW$["?BPK/?"^BFH8\D%FK>T_3:>@VM%H2Z4)#ENNUJ-OT9YGOQ[)4 M[[KQW=>CCPO!P!0QOELCEXQL,>_.45UB,!\[VO[]+ MGQ#F@EP/+T=[(=6WY3I7WH8G"R5_-/:^!^K&Y*B(O=^ OZ?&:#U&-F\125G/ M ]4=T\=W3+^Q)&'%8WJEW_?1'>"[=OUYOBNV3E-YT%Y8SW>+8R/S1RN]NHJM M5;?[;6G(1J]ELOBFJ25:-&%?_M]T,#GOO3J)A!^=(J^'^N2!,+CN*_1X?=SQ MZ93ZENZ'A70 C&WFL%8DYQE71BKF%74ZSW10*A/+'5)WS OX1G_5=NI6O#9Y M W=T6U5Y V]B%^^O_?=_'>_N##_M7KS!N^_?B0_[?0+/.^N_?W.Q2_^ >SY> MRAOXN/,/O-/+KQ^./^"]]WVVN_.&?-P?'O4OWL&[;7_]N--G']Y_^+I[O(#L ME=>6D:YY"US'H'\Z@ MO69$TER'+(*KP.^&8D]$],4JG6L<&311%8.&7SH&_<@8]*Q(QWC,I"0Y4BZC M*.+E(".<148*[Z3/N#=9Q&W(!>X8]+HQZ#6V;9KTLTN)9K.$M$L):+<-&' M6)+X,S?O-8^NDVQ^Y=K_KI#SIYJF3&7G]&J?'M+WIXIL^+C7_- MK=C"%EQ:V:LW>?US.VZ1<2BV>K_'^"/PJT2=O>WQ6)\<^H@F?75.Q]J]Z:I9 M+'^^_=]HI$^BDM#;]_;H!.9R>-[;AY'O=.:<">^GN"4;/V_U7D_'Q52?3.I4,3A]QT6=)-9L8SJ:A[#O,5TF;J;N M@1:$4K98$5EYO?$P2LSMBC<_E?U^!-M]^Z,[JELXP/[!3[CAXCS.)";&EDEY M:>]@2M, AL]T[",MP([_3]$[!1/T6%L_+1-^-_;6 [G'1.#>]#2,X:9>\!Y^'Y4+Y[^"5=_.LYQQPD%+U*7%@SGZ M8@+&1.]4GRERE6J:[)D>P'(='O>W3\6 8/\JV>N_+M+:A MCT>SS.RLV',UR%,YAX^![ZYP#B,7A2MG6YEH(F;)UT!]O=*,BS4'-6^^+(-G MB?) FZ/#$YBMBTGCL/D+5)*NC,/,CK%%!9KGT]!MJ(ZW[6LP*(]-2Q-G\ MWKS!W^E-HZ'>.-"R'^Q VWM;.]#>T ^?+/[X_@.,']-LWWS=V_GM*#K&/GSJ MD_[%-ND?]R\^'O\U7$S,W=WY.-B]^'OX\=,K_.'BXZ?=G9>\_^=+O/=^=]"_ M>'?1WWEW_N%B%^;T3]C;_WQV()57AN6I^L@CSB5!,@\!!A,S73E15"C+7;?M#[WM-';0A&7' M'&4LY(A+RY#*<(Y$3C3##I8_4QLOF-RZ9MMC?C2PN%3C8W0!G 8^!$:6 ,?S M7V,!D+6^*,)TN*SFH%(278N1)&Q:CG@>D/HN>RQ9C&HW/0,6+)0?/$ MF*]=P$X6,]VD^;-Y1JG9-%I)R;;BD^QT/ :Z $D<4\2-CPQVQCNW>KVGJK^ MK1T#&$F7GRDR*QUD)YQA!+A$;G-N.==:!*N--%+GF2RK*UJQ$D(73K18(582 MCW"+V]WQAT?.'][AW;,#1:1T MFA#DA:>(JUPAS8E!N7 X"X((GN$;^$/E&XA&:958OP-2)!4A,K*99$ME:+C> M*C23Y5:[P)1GG'O+C366F1P41((95E? -K_:_6..5N#PV$@O9Z.Q*_S)2L32 MT 9^9K2QM]_'N_N'>&_G4( <(;MO#D0(VFGND3<$(QYQF$%19PA.*O&YQDQ: MLA(PN&,.R^Z8-\/CAC<3V"OI/*G MLG&/0=F_%-I+6["9T'Y.>_^MCT]_[>V,CHYCC"]]%:\[&D0=/Y;)%^7U3S%0 M]QAV;YFIUCJ!S:FL=.TP\$,7A>G1]%B7)U&?1!6IBKS%P-OSB;>A,N!6\Z(F M\'8IZ/:TN-(C(.N9^K)Y36CSK3^=E/I?U #2A8N?9J 7'/F3J!Q<']6\P=>1 M#-$5'!W%JIX.Y3*=.PG6DK:<2FRHI=923FF>!Y:[F\IZ.D_'_7LZ/O4O]K8/ MM%#2AQQLFARL&ZXP189CCJPW(6."9;FV&R_PEKK:TQ&)9!5BR*7 @H<(V,)X M,$H23BBQ!$Z'HU9E-Y40=,3P ,3P4L!V#[\D L=QXQ307B M6F1($AJ0ECC'&5-"V+#Q@ESG HMI,HD;70,R,3-WRV@+L)Y3;V,X?7B^F4;X MHL>#T;28,:4JIE94=9[1?V[G,F7U+%/V*8O[ZU,4&E$"K!KD>#(9C_77P?'T M>%7N+;D43@NF25[ZJ3WAN8'_ \5,Y:D%*Q%8=@'I!SJ<[TC_[$ X#WO/%6(2 M.".WE"(IL46!:>.),YX3"0=2W'0B4\I4Q)@#M2_2C+8E-.1\OAJL_MB[0;)= M-[9?OP*[*,6$!T4[W2V%LDK]L0IF@1(#SS@>)4RQ=L[<7/2K?@_)Y M2Z-JJQ?1XF#G&TZR65O&E]("6JKCX*16$C?3A4T:0MSF_XNYL[$@/^9;P<@S MFDAJ\%*Z2F$X(-^>\0M)6],BU9&D!S1Y#UM/.2'A+U@A/3Z?)2;,NP1!%8.- M"<-1Z/;B+7A<]/3P[&.V*WI[*1STB1F M-29R[3RI]G'FX8VM)-*.3HY&A9\-%@4LZ%E3X$4HA7YCA4#)2I>.%0&*9Z;[ MH,PY6I)ZL)*Q'8*5EKH\9#%)42HLE<(@]A6E-M>R2ROX_K'%'2MV8_.,"YC/ MSF<<0\=@^H:0600;Q1'/+47*.H7R+,^=DI9X2I<;WF4-<&-]%W,NOCJ\J*T= MC6,I\_!\JW>I;J55JE)*B*,8A3R-PQ<)CWR:BAE:Q\6?'-5933651T-M$ 81 MC-O[K=[VDCAF>_BH*/BO4>F, GLPJ1]8FHG+G[3HF%KE&' G,R*#R$DP7$JE M598S8#I&DRQC6-PGE,P=C\&/AB3XP6X&NKM]D!GOVZD9 MH7$NM?"6;;R@2])L:\#A4N6\R6$YPX2:K]EJ%*8JAG"CKV(YH2\/V"<=+2;X M7!W]7]$4MXP%PF!E LM \'EI,F8,+)AU@6!Z5;ND>V/ISY:#]_<_X+W]5S2V M7=K;Z>.]-P=."FF%)\@%31%W$<"("HF,5YG/B0'!RB,'OPJ^J.T_784$A'1, M9$9QEO-@N11""^4]4[EQ!/C:TA2A!1+H,H2^F0;>B-VS@YQ0CCDET5^>(4Z# M!2D>",)*.LD-:%LB9@@-AI=H8-[5^8C]E'=+]7D+-QP.!Z !@%6DX>;S8M)[ M.ST]'9X_BSK^/[P9U[8\79;>$X N2A/B5DO5^RE:+Q3_>JNKT[7DUW9.1(PD MCGWC=CG6Y[V1229.RU>8#GZ=SWY]%6ST57P9Z,[,?5A2VDR:=%6W,^]MJQR[ M+4]N,:.-K1X08:.PE#EFYRHP#@5" O#$)=< M(R5RB:0D!F?2,#"V-EY$7E:69R^V!FF*M%O\D-*GZ\1]F9KRI"!E47/)2@ID M20I$9;!R?!^7YD<\,[<3 7#.@!',E(KXUY>!\TT8-:'CGL*Z1U_8'*]H53%_ M&0UA;O3 ] ML15O:8%NM$45S&XTKM.AXM2C<(#O71DKC(2U2';UZE6D692[92-2X_U1Y.9L^%J;@9E%!2;A^A6U M@S4&J.H]3*E1E1B=>0V:"*4>P@@GY7S*]E];O7>-4&Q_JT]A&&V/2J4."#$^ MO!2=(Y@QB,)X0'T$S0/Q 2/,O,KQ!-EX]6 2YU(1)GP 9SEI:B5H1G5_JN*] MFJ@Z?+OK\>WRJ_'M?B!4W2-G!?NW%E:5!&AE6)_J\[*+';#;87)FUPE$U:FM MG-=M)M#V&\>\AF0P-7E'P(UJ3?56D]KJE9BQ15FXF^;1)XL*,79I@ZCU?VT^B+OSS!>K2GJ_M<"YYUJ_W9;!FGC7I1 ME!J6J862F]D5'-EIPIIXS4-E,<3*/, M:NN[7-KO;@SM[O?I[N&!UM)0J0F2GAK$K0](8VF05E+G6F76&QI3)N7]Y=(: MK3,GK+6Y"5P:(YG->9YY3;5B.%\L(>^(X3L'N2Y>L?[V0?!"Y+FQ2&'-$?. GT5A> M I48C>N6+WG!7ZQKXKR,LKDXQP5,GAFX8(W$,IAW;6:UQ9Z,])@741KLBU%9 MT ;>QN;*B\,M23]L5+BR W7C#UU/NK6P7(F];9EUYJ1;T)V+CT MBAJ?.+Y,?UEY01,20Q4KW_7%9/C?_T$9^_6J MV/C;D1V45TRJ"Z,8?1U5E:C/M$?X*;(5/P89]?ED=)8R,^/7WO;^/7%;/S<1 M^O8]_Z^$A'YK!QZD7?-HF/IF;%H3';^UY@^JPVG,-:Y4#7A_?]CR'VDSAG1+7KO?[SO^',A(;$$05 MILH%,(,1##_6IZE^J+$S+,QLX*)'NWF+6:W:V.M)+6::L6ET< MS; #5TP#Q(XZJ7/)0(PR*15(/ ZB%[&T?J) KP15%5 H,NB\52&41>=0$FJD@ MN9)FX\5UY-*DC,XC190?I]!4SXT:^RP,QL4$+"93%DH/3E)"&7P&;!25Z"BO MDRU/=+S-(Q_WIQ0FDV02)N$W8_4IGK%:^KWB0F2<$Z,<)\1K;#.?!4&)YR'G M'TE(JA.@[VB,@)YGWV%/IQRLUJE*,RD8'[GC4(R"JO9UMOOM /.IJ>KK$N-HLJLVZ M:EYUB=+:6=NJ+.M<=!;7=-@D/LVG^2QV*0%+"32[HFA9 AUS?$1TW#_K']X; MQM\"W,[649K30:J,*.0V.?1U4:J>8GHW&GR,V2WG7 MJ1\G7Y3;ZE5Q^=EWK1'+>([NQ1_#&,C1116,:[A28J;.GPZB&9%"5N70R1,4 M\ULJH+E479\274;#)ACFQU]BCDV=\CDHYC,\$T=,74CBB\1??("Q8_@NP8ND MI.+D/(H5\KKZH)5(6>56NDL#5+EEZ?JZNCXUBVK/?F2&@T-=ECS/0F>S,/A" MMDY[M5,N&#QNI5/),.>W2=7YPND[_*XASH74.^A.0 >,><9\#!R?>()91"T'N#!7LOSN?&_[@.:PZK'M$:;$(1 ] M&ID@0&/5H#'Z".U'_$IQ>"R)$C;CQ@O!);$:5!Z7!ZXRJZG6[#NV).FV]T#" M0P2D$+@9;E=^N9\7Q()9-Z901#YSBRM2>E7H;VEQS M*HCDGG%FO=*>.Q><<;F+Q'-%$LZ]8;$\6TJ!>9SUSPZLSXFUQ"++7 ;&"<@W MT&\<4HH('#(KO,<@VI9(M@9N!2AA>3+7TZU<6 :]U[B%3D83L')F>6I_[&Q7 M4)F3))U;\%ZI\/'+ &9594P.3KY$*Z8T0^"PG_GG*,833Z\=%7>7_#LZVCRDIH%<4J8A\SB=V;2K!TLIR MT#LJG('8*:]ND;X9+=JA.QLX^+4$=SQ'H$2,4PEA,36HK,M)'K:F1*=2J [+ MG)"VME,N5YU[.KBX%)9H;@9JT8>^E9>0[CW5@V@OK\;K^X/ZHL@=^/(F3RJY-^Z038 M"Z\K%\"S-0SV]M^=]=\?. MN6.]< T'N-5[5_5MB*!9A"O$MV@-J@^!OX#JYQM@[?J#VNB*95DI9IG4 MG$%H]?*.+'=%0$R6R2PHP3R+D"W< ;^1RCL2$3*%XWG21X"$2GWD7FEI']1] M/WD;9_[':)Q^]NL#T="4>GXT];5_\>K >07FE]1(84-B881$.ML:KB=L"=;56;7'](HLS0K+YSIS M:#Z3_<8L_[G4]1NO;G+)3UO5=(TF>L/44L7;K*E*4I-BD&T<(7RZA@UK!60^ MZ^-%9PKYCP0C4%MSF,#9L&5SY4.&0.N&@@14@1: M:4==;=\#R#"VM[-]H%Q@H!]SQ+P"&>9H0 IT"A1 8=9,D R^C#*,WIP/7[9M MC"97B0\VL^96[CJ' _4NTYXSPHVS!O;?!)T;0ZV05":JD%@QW%'%?5,%A_\/ MV _TAL5.<\U-+9R$"LW6<:DR+UEG&BEG,/>&QO;;!"C%AV[ M'35\_RR./3#5O3 ZRP,B620,22R2FA$4,OB5YL9KK&\02=^KU M9U'4/PNF1[RJE3TE]B^W0\&-8XTPN4'U61UZ/Q9(YH4A"V^C1ZZ:I< MB,_^O.>'OFD!'!UV7P=%Y>R)> T-?G++E]1"ZRJ';)Q#54Y%B1V5P"=B?<$@ M!2N 2%O=/)O Z S@*\&-5]ZBMI]H\64V:_@I#T)Q$&,>K8;&%1ZKG2.),HOU MY!8MZVO[L'$YE=6%2P9<&8P!;$'JA/89E9PJJ2SS0Y&?B"F^'^ M<]J>G=*__Q+#/ Z"R')LN0;#S]$8L">*]BU"NZ&98T$6M2-$JX MUNOZ3PC)/,L4M3)G8',:Y6W&;)9IE;M4H83) S%0GAG MP/#>>,'PI4X3L.X-#(YOVC DP5XW@YM#75H)6T[F0&?!:RX=QPXK):AVWBA. MA'&.?P,+Z*+SMZ(-TM]_=P#;2K1A#(F0P?'/E 4+A&,$Y"(S%0PS,;6=7,<( M&C26$D(#A Y0R;B(VNKM:"?)F5G>4@ET#0(V*6]UN=RUZ4RR$FAWZGII,^*= MEQ8K1CG!N6**8<<(-3D62I451K(.\LNN^>MW;?[*=B_>\=TW!\$2EUEND9%* MQY(S@DPN-0I4*8LI[)V.72^7($7/MPZ\19G15:CC"Z5!2QJE5*"AZ9)*4].3 MU"]E4/7+C,6H9T?^9+'RLQZAK,*O*D1GSZH!2&_MLK]BSI=TX145-T\=,5A2 M$SO$*I(ID.]"22:%]%:ZT'GU?W2C9++WYD"++%!@5,CE,2G/P3\ZHQIIHTUN M&6$LIES=>YO-J,\33ZAD@7.?,ZF 6Y+<^V7YY6T\,&OA=5C5 ?/[ M#*7[6?E_.VJ# MRK2+7MHMRJ:I<5HQ'90J9N6^J1)[VC &=9+/\BZ<"\]NW#D78$\B8"*C\2"6 M_?@O WC8F0>5]<2/-WO[VV_W7_ZSW:5V/2SME0*J7V9K)@#5>B^J/,JB D1^ M=QF?(I%JRM.K@-$7R2S1Y=)>>S!.,2.J M..:GN:#)K50>KHT BLL/C=&7S. M^V\.,N=#A@U%A(M86!PQ3[52$<1=*J]!;F*WM+!XKHX8>%)5SG<''(3[[&"R M%J)I5<'\NL[UW)_Y[/=KG\)2O.LG++;[^OQ*H;WZ0LT#@X^^:! LQ9/)<^X] M FEX!0)[LQ>OCS1P^=[VGS,D]>JK^H82D:\%GA\[TA:S$2J]:B$6UN["\E3V MN^FCL.Z;OBRY?9;1/CN\M<-TX(>IVTX)8ES6J5L]]NVP8G=Z?^3IG2FFC;>[ M.G#_TQVUQW#4@$LV)Z@T#F*%\]>$M3<\KU[WFD"II!'A+(\Y]Y;C8#5CCL._ MW(B C625YTS4GC,1]?DE@=*D"CE(6FK?F^4F%Y-( M!$ E3:%_&?%J(1HDCTBJHZ_C7!4-U4>_K54MT\5>)T-S)L"W8T?PV."]C"5$ MH7UYU++U2$*%/#F?BU/,L?XK9'QE^&[.?;CT<,!G(SB>989)V>>L*(WU]JW% M*$S.4IG4\' TAJ4Z+H%1ZB*%37@%?=S.PBG3TNJI%C$9;9*ZQL87']C!J:XA M#^;>O>HA[(LB@5:6" VMLS +H,#T2N1_/5EKRZ/A)3J._O3L;@:G_.]B_ MF[W?@;_!43P!V[["^HGI=@7PO#2E9L[-*$DR_Z8+/]SLO04ZN?#C(=Q985;, MXT LW[KL#PQQ<8+M?!@",,AS[11?0LM2AC1A!/MO9WL2WE[?M1 MKEIM%%CPQEHJ@N962F5HD,KF\#%Q(B^!0"JYV=6MW:OX[)-8S3UPJ(DA)1Y> -I@4$T MOH&RDNDQWW.D#K#8M'W3"&8_*.QPE-#^HYI?QYWA*8/C:$Y5P<)*T:FMEM9S MR_S^LGTTZ(%EBO]V-3'416)]Z>LFGRC"UTZ2MKN? M,C^J&#JJTVGG27HS LWID_/-DN,:7X+?MLDXMLBJ#E%#_W4.>WK3YLK622C2 M$:E[SG1D^]W(%LV82M MP686E[;3PBLD?E-'3EL%Q'!AZ<5.>UYB)=2ERJ/II$;PK5,=AX.0-K\6<[.F M4C/%\MC 5%U34UDKE/H*.VAY'Z96HRA@8&!LE?;XR-KIN(Q$71=VLA$H42N3 M*>%,4); 8;1K<-."XEC7>!I]1J7#['5@+:<2\PEHIFA"&PAL(LP M,RCD&:&"TEQYNO%B<@:+=5[%G1;#49M=V[):B5AR7"[UDESU&,X.D=V=SP?><>&#-8C*W"%N>( 3K37R7C"+,VSRF %*M_CWZHO5 M(-9V7O0?ZD5_>A$_(A9J0VJ@FK*%<,QPO\&_6Q0C.T@LM>'Q4&I?AL>K+ MY1;V6K&>G][ZN D@5 G,8^/MU!0@<2/K>?DE2KDD.4JWC/,3/1@66S]W4&%W MA I3CP(JK/J[VH"U8$FKU@0\IY3_%HS?0MZ_GBF[\Y5Y?X]LQ Y,!]U&A?5M M/',Q@6JS]^K$;C7)Y.G")O4\(7&EO+)JA#380BX5\/!]WMO9W88/N*2_]J)J M#E,X@FFCMM)^/!IZ.QWJ" ZF#T]&8 +8.6=,71-3M;AJ7N80) NHW]44ZI98 MO7%K@93JG-@;H&PD^5>4$]=3"NE8))E,L_PQ@LNOAELYUKI]: #1N4=4A1X+J>*HHAF MCJQD-O>4.1E;^>*M_!X0K&]5,_NTX$2?7[ULW/#&E7'+]D,W%\ONZ\_>Z26= MAY+*_/8H1J+_7RK7^].?^*CY FL>Z]/4BRJJX)OP^+,C>.HY&IU%_W5L CD M3;D$7:O&+\L_K9\F;P3,_E9SQ3E>('UX]2UU@V*F)E3]'Z*\;'X*M5\_HBEBLUT8H@ M2I3]E6!E4CRM:O0;=9X4O=#',:/@Y-)HKZLO7\.7LVJ9YT.M\^GUJ,RO!Y8W M]@%FG=;/ZN+HKBGWP>6:X$QH:C3G3FKN?.9!5\P=R[#FRWO8=RGW]RGV8/[; M;._- 0UZ X5B9%:95&'VR\X$O9 M^+9&C(@"L7VJRF/]AS; =7;*0[W9>PUZII_]6?4FFI[$K74],XR54V6Z)I!% M&"18\?,YF*@Y5OFJ,I.KY[8*UZL\]-,QD,X83M2L8>]P%A&Y4@EW=];:^JV%8-UAEJWO2E55T^W2"6H4DM?5L+,CE68\&*?L%M"GEK]> M2EUNU(N3Y$A(7;1G3I!*YX"IQIY\R9DY#R!NK%,7!28-7EB9UK,\;!AH155H\) W0SF*]YJ'-Q+:;^?]KKVP67@VY M6KV?MAJG]-'M+Z'4YZ5\XAOOJP M2K:(,3I?+.D-D3P"46R44%WU9*I]+>%08:.**2QB>GXB2EBCG\RW3&V69Y?2 M.\?^N*H$OGK5TZ*=U _L'8.ZD5+GI_$\5JWCZX;R/KEIV[-)+W#E?)*L2NHT M*.ME;_G&&[W\0)3';UQ*-!=G?L79*N'&AE7U\\0/XTJE'/_Q"*@T8D:5CXH7 M5B]WQ4Q>MYW:MQGSCLITMO[*]/LJC%!F]U3+UL8=W)Q%%C9K7Q6J(A&;T1@K M_?])R5Z *+QZPTM.=ZMMOSW;3@ZYF<74;'+=47OV5;*^2K4J>OZ6+$##_T"N MH>5KL?S5(Z-)FE E]I:O0>6>CHQR.HG%.$MG6*Y5Y ]+1BS?K;Z]]ILOCE#G MJ:536QV ]#IP3_FN_U/,)$L5E8H)WL OOL1DM%)ZQM:N0' [X^DA\B>Q$6Q, MLFO4YM*?6BU!<8OWKU+02Y>M3BJ \[%K2,I0JV1.?">@]2>80#)K6Q;?N_QIS% = &_#$8 M+I8,-$Z5!@^TE548B01$Q0SNL:D"*^$VDI2N+)SR.Y!_]632082_JUF45'/I MK4O:*.K 9"R\&7O@Q(W3_>'F.L\T=&IS':<:;VY._E;O[:S:S09,^O?!9PQF E<:DNNB"@:N, M/OD\GIY.[-.%)'E_M8.F\4_?&*A<8I"O[MUA/@\49\H%ZKD6F39686$)CY@E MN=&==^>[10]W(_+!]H'67CBF/>(D9!&OER&MG$+42)V)D(,LPALO",;7P9A$ M1:WJ>YA\)J4U?@R<8]@(G"K&,IH.7=DQL69=<(8GM7LRH8E25E3AX8&E*#D=G5:T)*C_\UKXEEUGSBGU+\BPG7I$0A.#4>QEP! D2V@:C M0]Z52/S@Z/U._RSVGX:S9WE0B'CO8R\ZCV06% ),NJ!T]-DT8/RWJBU6B/VTQCP[77>>"8,DEP;G*; M6RUSKR3I F7?B<+ZVP=,!QRD",AZ'A#'+H*Q&Q?;('(E-?4N4EBVI!YGGL(2 M!RR94M<:^XZ:6,32O"K?/;Y7HE4?.TT99KBW&:=<*ZSR3'$PV#&W[ M[,/[E\"0CC[W]S_">&\PL*8C8&WXP_L^^0CW]V'<_LXA6V1H?6!\'_;__K3W MYYNON\=_?=[=^?NX3U\":_O[Z,/%/T.8ZWG__8>SO1T7^A*!**^6HJ5S-ZJ7^Y'>GC&5?05E+"-$9]A(I+ CH(QA MAA2L*").QY:Q#GLC%JGF"?D)T@'PLP,0;:&D)Y:*P%RGL[K&IOT5426D6!&M MF,J:"Z/872%:4#\E%74TC1RN^/F76V>2SA=?59&TQ!T7[ACZ,/E%3R>C^I84 MSB@_,:.Q\V.4(K6GA?^E_N77E@H1[_^UO85QV< :/1WJ\U\&)VG!TG,KL:G4 MELA(DIR3,?SOZOE44G6KE*K_FKC+7W*^E:GLZN^OO?GZ+_%6GHL[WHRWR'5? M"L;O>&\WY?68'-'YT M2^:V>/X6ZHC+ 9OQTQ$G<"SK#\HC3B[SUAGWDTN8WZV9Z#SOO>4[U2W;&A97 M+7>SD.IA%[*RA>Y_*=42K?FAEW+>47'EDLYHL^;8H#7Y-K%_VZ4_@)SOF6S^ M(Z3_GBRA-%6_M3+R'6BE8Y,/R28?>"&OI?Y*84Q:Z.FD5XR& ]>K7_"Q'8UM M]VF:E/+?1\7D%LM]KT1Y#RO94<9#4<;+&F8L>>W^T(/*H/M'#Z?^>U/*4R*& M1T<)Z\DC.II8"^[0BYRA=YDI/(#^\Q_6>C^OIGXSRV@"&^OG>2M#+WU0*F,F M5/3[]V*I8K'>B%_X*ERZWD_DYPKOJPH;S;L:'IXBKA7/U9?5TQA\[T;3Z$F\ M4GY?>1Z7;NU#'\C_7&3,][NLZ= \Z+J6Q[)T-*W1NJZ0VF"TQP9S$S3U/,2T M&D8SZ:T+/L]%EEV1VL!626W0100,7@@,;D]^U^/Q.:QBXL/KTG3^KK$:N/_K M<._3!_KQ.,9C^FQOYX]CN(?W=_X8[![O'G^X>'7V8?_SUP^?7I%=^O%3?0\\ M:_J1OLMV/WT\_OCG'Y_Z%Y;#^WW>W3D\Z[]_16'$3_U/O\%\_QCT/[UC'X]W M0W^ O_Y[_^6D_Q:?'7AL/>-8(**#1YSG.=(L&$1R10R6GDH9$R+D)L\NY[PM M-UD?YS%W.PQ!;"6GX>[. MNXM=,+NT%L9G$N4,"P3V5XZ4H1II:HF@,LB0=\)K/817"DO^*^5J+ZM1:_-L M5D,S??\XF]B2=V\ ]1/Y^4=V?UJ,1E]147 YKED"I@UU491X$8.3$I$U@0XL MUA_$RO'I&!BLGKH$P@3,U96]:F.A023B%)VNJU2+(^\GQ4)UXJ4JGH7*G:MI M(Y5PW*ZL[:;*C_DB!K;^M2!7U#?=6*_4JBZ>KQK9;#4WO'K'9_7&J[=B]]HR M^-]@G04NJ9(N,\(0FTGE,67V/HJ.5[(1?W#Q\7>OHMK;><<.'!6QH#V@#(-P M!#')D*)"(8R=M0(["L2S\4+FU\"%EEM_IHO4P&$\*,IRHN/+S.0N9')')WA' M)O=')I_% 3-.4>,X:%.6(RXD1\K[#$GO&&:24)VIZ,2^!K^YW/J&C=R%%K@G M%E-.'(D>=1I]YZ"P:V>#RW*#74<+#TT+^R_Q ?9:2\J 6V0I(*\(TD%:!(:2 MRH&G&RK)Q@LBMR[KU0T$S9$?5CT4C_6GT;@7!B<@2")(U."DF PF93.O-GC; M]HQ]+"]F?'B)%3)'WSW>V# M'"B-:)XA;2,("[8!&6P<$CG%/ =FP*3<>*'PCBE@ M+N?]BU>TO__J?&_[0&'ALH MR"WA$&@\%)G X4\MX2?+N&/)'[ $NN<>)1BV M&3=@'V3>*TX)D=Q:;W4(@>4JHZZCC.],&?TW!W V,]"!-0)U$MB)UAE2F;!( MBJ P >[NF(J]3V]4@5<6:I>-V[LW?[G29+W*%+X=>$U&-I9,YA%T7+T%4DS^ M8$@Q]5EL_+I]KZ-3-R)WO#HYG4Z*F:-W34 \:+\YB:_$QT__?/ZP_]NG#Y]> MGL63N+=_=+1+_QGL[;R\V-W_XU-_YZ_AWOLW^-))_#0\WGW_]U'_S]U!?_\W M.(EOQ-Z?+]G']Z]X?[]/^N_[9_WC=^+CSM\A_?WF0&FN"0-&+(@$E=)D!,G8 M)X9S"9Q0,ZD<6\1AR;2+V'@9\SIPI9Q2AA%0Q?+@"78L7P3]F)5#]%H;<1?$ MF!N?_- (, U%;1>%GQ35Z[B]D[\C]E $=_\M0K\^9Z+:/0-S-0,%/>?(.Z G M+C(:(]<$$8,9MAZ$KE1W1899CWYY-T.4SZ!]B&CM102F+$&GVZ)I/*U: M94:4[S,_]KWCBJXBIDR(I^=+.CT);GA<4UJ%,KPZ[(PY[PTCHF:-IY]F-'O* MT<"/XX#G3Q*$1@IV9Q :*>A#@="PVV*-K R/I9OR]Y@RO^W-';K" M0V;U4-*AT#PV%)KUO+0[IQT*RB,XP_].&B)9&VR#VZ]A1Q,/2Q.THXF.)N9I MHC(P.\+H"*,AC/T8"EX3_).R#$/R=9GL_[LZ\*OL_U>T?_P&?]P_/-O=\/CS_^^9(N9O_W/WTX_[CS]W!O9QOOTC[<_P[^ M_GS1AW$^OG]W#L_\NO?^(\SGXSQ<",4J<&X)HDQ)Q(F52&KX4Q"12:V$<8YW MY=;KDOK?U:UU\FN=#LW:R:_4!I/^VC&FCC%UC*EC3.NSKAUCZAA3QY@ZQK1V MC*D#6'L6%O\,8(V&V 8N"*0MI8A;'I!1S"*62>6P"U;F'4#HVLBOY<7^JS0C M[;+ZGG2^63?E+JOOV60+=5E]:]XR[#%=VAW5+K'O$1SC+K&OHXDNL:^CB2ZQ MKR.,+K%O;1+['F%>7^?B?P"_XA/R[VNLE S"6,49SS&1 5-%/3;266^8?XYX MOM_FWS^&.7VR%[N?ML_[GS[@C_OQ\U?\P_N_AKO15W_\-\SW,]G=>77)O_^! MOJ*[%WW:WWEUO@OSW/WS#WC'([CF'3RW?_[QSS[=VW\'WX4=>FYUF8];.T/:.)5)@:Q+P5B),(R*N9 M0E[@((@@3F>F,^O70FPMR=E;J4W+=X*JY;>!JET7Y,;K@&GE@P'36O>U^.6W M$@/_;6J_L^,G>C!<&\#0W=\K-G;\$3[?'>X!N]K]\Z]/_?2<5[P?LX+?O[K8 MV_]\]F'_'>OOO[E8! S]>/Q!].D[T7_?QQ^.^^? MO"'3X=GN_M_P5SZ8F__ MMZ/=??MU=VZT ?K@!EY0 M,!YPQK$)F562/3;DT_3@7P83X,?V-B?JU)G1>."+2ZO[@$"];^V1=].A MWPOU!,Y_GX['\-M^Y*//][Q]OCCPRAL/YPIY)@CBE&H4-3=DB*,\5SR(/-P5 MGC=;!QJ]'IVW19&I,=J@F)3M)R9SL+TK@M^N7UH\P;"N&-\M+S[#6W#Z'B0O M/MNB.7^HC.V[WGOSE&^;9'Y#,L0/R/%7U_2W/NL=:R".@1ZN:4I3Y]W\IF5[_/[+.W8^98LF1F-8 -'W:YI? M&X?D'2V+JH[X#>N_?Q.=AZ0/<^A?_#W8VQD>[>Y\/ ++XGSWPK*/G]Y=?-SO MLTM]PW?LUX\[?WW^N.-=F$__PH6Z9WAR M2$KFJ:4,(X.Y1UPZ@@QS8)HX3*ADL9*8;KP@F#\N;^2Z<^PN3-:)BDY4W&_+ MT4Y4/(2HN)BEI#)"''86>8\=XDP2I"@U*%.P0UQFL"=BXT7>"8KO$9A:@XK7 M1VDJO1^-/Z/!"3H=CZPO+AE+S7K2AUW/Z^CUAC5]S)S]WHV N)VO3EZ7F]FQ M]E58>[O:0 4L,0T2.46 M1LP!316&#'"I> $>Z?TQHOOD)%P+P=G77G/W97^ M'^#,[!C@HU!M.P;X#0QPIMMF*N3,*(<<9Q1Q#+JMA!U!BA/GF-*<8F" -.LX MX"/09I^RJ_^/PGNF.L:V[ M(MHQMF]@;#-%% =E;)9S)*2QB.>!(6.M1EE.,3>&"B_5Q@O&UJ\ZX!$RMLZ3 M^LWK>?G?9:G'W\$LZA#U?[#MV>'K/Y#)L.LGG3Q=09[N_CYG*"@'&YDAIB-. M?IYCI&%;D+02!^ZQ$"06W&&RYIZ=9P>9OW:>\4YX=<+KR0NO>S<+.^&ULO": M&8.Y#%2SP!%Q$B/.:(:D5ARQ+!/*95QD.!J#>2>\UDQXW;5V_%8=84Y'Q2#> M\4^?N%Z$'CD]AM?=[)WXR?>L7JZG\7JH3R;; M)ZZ9R7.M6][=V68'4G&MA?9(<@="B.0YDC23"!L:%+.4P,=/N&YYCC;]'&W> M1QWS9?:Z]#QWEIX58%E4O!!?)+_93_?$=WZ;N+ M/OTX[._TR>Z??WSZ< 'O=/P*K)XW]..?_PQV+V"N.W_/UT&#'2,,[!T*SA'$ M,^.1(9E".MB,&JSS(,+&"\HW&65KEWKQU"K>*$,(]YLI@FO-@:!XP6!379(]U#/\',/QV$;7GF$D!;#Y3 M3B'.)4.:!0:_:981KZGQ>812VI3?!4WI;D=J7=G1-U@)#\"G._;W4/JN,_-ANPC-4(Y#CF)& U)<:22"*XRQDE&>:?;KA5S;]=;)%C8BP/W'B[ M\8)M8M45)CX-!WC'_>Z9^ZG,:6F)8=)[+B61&0\$$Z(S88SCH5-MUXS[M5RY M/L/"9PYE(08',>5(J2Q'6!@KHG->A9"X'_D. $%/G_MUSMI5%W$OA('U"WIM MF(Z!&TT?3K'MO!85:^<\TQY3H90A7!EO'/SDF4 MZ9PA*KE W#F+C/$4<8Z5,#B7ENN-%V23T>\!)?3DG1:=S_;I<3]&N"8^8\;1 MP)W22N928*;A5Y=9?4W-:,?]?@CWFRFVCE+*:6Z1(EHCG@6"@.'8X?#K>]\U8T3-T(S0RC M0>6<$QVDES0G>4YUQG.GQ6U1;#K.?7^<>RY?.>0AH@DA)W.%. &557JF4!Z, MT12+X"*N#<_6KQW'NK.B*=6+/%LG;3/E7'>'?6O8YP_A'&V&A=E@60*E.,,8XIX M)@B2! O$F3(Y%SCG&!@G4YN"?8^ZY>?-.-?+OYN5H'6/8QUO\^^_?5'\TM/6 M3H^G0QUAMYP_'0._*<'UHB:NCT>P+A?I@\Y'?)?M^&F]%.[MV6[OM#8;?A_Z M^ N(DNW6GE\I9CH)LXJ$::?^"DD=Y4$B3T/L2,(84DH[Y+F$C9<>5(U#+NF%^ME<#^C-A<_,E+P=#IB M?!\YN]=.U[9<"\%YAAP7''%#'-(B\TCG@>2>J2 QWWB1;6;\>R2^_+C#MWY< M;3WC")W$ZB36DY!8/S)$TTFLE276S#+DQ!!OI4*"ZQQQ;P4R1G$4,*<\M\IP M%?.8-JFDG<3ZT1+K%GV;KNILPK;$?&\3=5UOGAM:/-T\\@_OFK)JCY_8%_QL M,!P^YG>^OE-,_8:](^UZNF?U>'P.]-_[HH=3'SO$Z-/3\>@KL-Z)'Y[W_O/A M[16Q O>O9]]P^NQQ0;+]C692E[Z8,><(=A MBB@7\=BFCBVEL*C;MB1?6=WHH_T545MW9' 47R MOP?:#(:#2;L9_'?HY/;6'GDW'?J]4$VD-8_]*-V?<4 M#4&:9!9) P0<,L^$][?NZ/88)75)H[JBT>&,-AZTH]NU2F'7X*UK\-;U_WH* M_;^Z!F]/?(.[!F_WNYZUKG@ZA8.C"QB^:^_VHYWT73.>[QLUMNYK\4MU$%Y7 MY^!OX#.#+][MCB8?_.0WL$F]>QI^^.,_/G_8'X)1\H'L?OK /N[_?=2_.!3] M/_M\[\^_/^]>?!8?CO_^].&3^[3HA__P'N;T_B7<]XY&7SZ\T\7>#CSCXI!_ M_/,-V]L?#C[^">],=^<;O"G)<(Z=1(IPC3BW$IDL \M'>+ IB,U, M? ]T\N?=C6<-\EP[D=*)E#40*0\8UNU$RL.(E%EHUS(B',<.8072A.M,(*V" M1(11G!.9@VZ@-U[P32;7#Q;XJ8F4+BOXSF;7>!1\40!1ZF&*:XRFDV+@? ]& M_Q)1A8/W7=^W1VQ;M*I$DBQH[?N'8['N'&L]4TP[5OAX=.*.%3XX M*YRIQ]@1R6CFD,]99(7&(6EQH!AX[;K8V9T'&[[\3M9K9 R)0Q M&<]0;)2%.'9YS,X."#.N;!9<$)ILO&#B>U@"3Y[;=;[PNRWB5?_NCR9ZN'Y8 M&-=7X#VKV/(]E37>/'ZB;?UC%7]>*7EQIWM5)<.#F6=8H2=Y/I6R37S D39Y+W0R+A, M@.0*#"D!,LPX(T!R$4\]B5@H@N/'(ZCN!DJDOUXJHJ M8;)%Q4.",G<0ZP<$7WXL05,6=%N 15)^_.NG]-3WQJ71PLS>:CGMFI,>IXMP-QMY. M1N.B]U,L/M_X+7ZQ\7-*RRPBI1R-AL!HBA)*Y@O03+PL#M1:O.VS.%I^/GK=Y^?4.ZH)B>PG#>P4CQ&6-_.M06_AB<] :3HA='''O8FCA+N OW MEFY5^9S__@])*?XU718_37^37W_NG1T-[%'O3,-X(<#[Q=O@ 66A;+Q\,SW\ M9-0+TW%9FA]?H>@E-!WC>X=C?1)K\F$+X+ M7XY],0&Q$3>R_";J=T#I&W^_?5=L_+SD@FK]XQ7;Z0H@UJ2_P?-1N7^',)&K M1WY=C=RZKU?RVFI6\9K?]M(UU2-/6QU%DK0N-F?'KZE1K;Z*M!./AC\^'8[. MO:^6H/ZS=9XKDBRF0R"N27%+E)C'24*@5L?R:""4XDC#WL3?XBK9T?'QZ*1> MZ"]Z,$R@%Y&\!D4Q3;LS=\0K)C4H(BZU'L;5CM\4T^,XY$^#GWM7F@SEDQ?] M7<$+F;M<8NXXLT)*Q55NG3=*!%U;#3ACN&TUO-K]8P6SX6U\\&^1QMKB?'L, M9^?01S3%W\YGE[S6Y_&CQ+%WTZKMA?1ML5TOSQ^C\9_QW#56!_ZQ5@?K-U9' M7_2/_QKL[FS3_O$'%I_S<:?YQ_[=/_?W^U_ZGO\+NIVU^8*UR M-+,$Y81RQ*7E""P]AK RF07M4#G&-E[DFU+EFX1?KN"L*+$\RC\-!C^7C#PR M_(I&BZGY!&SKA2:?]79]&!;"DYK]]+";Q#HCYC^ED.O:OJO/^;*EZ;^?EQ8'/C!18 M>,289D#5F"*IB$*9LC@S&LQE1C=>$+X)3#O^?Q59]X[U>=23(A>-!'LZ.DGT MZK_ZL1T4_AJ9W?NI4MM>O=TK:HUMJS>OHZX?H=T7EYU.CD9CD&^S*L@?#)[W M_0EQ?YL>&&>M]I(A&AQ!W J1P, 0S@0A/KA@<[GQ0FY=KEEIL/(J2M3-BMXL MUQ/_'/O#"+@UGF.T;[V=CDM$KFV;5$ZB&-N,#!;(X"2RP[;),7]Y0\5/6<>: MK6(E((K+:OJ"_@T<8#A-$@:HV-RKVH6M?F7F0, MR: ;)[ON5$??;?P+)'TQ< ,]/D\$=>;!&(2?QPG4I[D]F=Y7D]#IJ$C6Y2]C M/]1Q*6<8:O_U:[5=G)8=&#>6WZE-,1I.)_[7RFV(VT,L0=R;@U):C6=NVT./#"A%GU'2BW[1PS-]7FS\:^[E%U;STB)=[5-\? =_5<]94K5Z M>^7Y?,K\KF1!,XT&=&Q;F8Y7,+/C:3&)2A%HS4.OX?C">075?(RFH60&V(5<:(CR?4@R<]\[\T!4)T%>XTI.J'=5+0W"O^,HFOX5=240 DM]H_@1PR=3$;P)H>'?GP$\@6^JPYL M.J_/F&(_O>3][0.//6,APRBH&)T71"(5L$;<,+#_L 9J%I&)7DVQDY@H':G4 M).K[DG8!Z.2L] 9K4+0K2FY[S6SI*:K-ACG'Q8R3PL>%OR_A?L]T=V=OQ-5L M=-N,OOC^X&1P/#UNR+?CK9_@Y]F!9#FP4.X1]2#S>:XXDIH*9$7FE/991BD' M2KV.5.>9:_PD>1^&J6-'F\]6(?J&\FJO<+1%&Q/TT)_X,9#W>>](@R*J>\?Z M:]RYY.B-#[@.[_Y.Q-CRE(%>;7]QT_&YU^-[$_ OHUNZ[!8,,QZY9T=H;RYV MMP^H"XQ(XQ%70B&>^1Q)D>?(9E;+G&N>&=9FB75F3"_N1>F9^ ("J!?#R]^% M!LY&8U?XDWMSEZ9__H%7@&-1$@)Y;I2P_P'O[;^BNQ=O2/_BG=C;/G"9$-H: M@1Q3%,1C9I#&"B.F0Q8$["3AP'Y"E'.)#BY11QB/CIOD[>08KF:4/G[6"]>ZL_^9 ",FIU J! M^ *U2G*#9(X#RDS.#E"JR,_;$&I1)TG DHE24!%5N]]SZ%$*O(0:7I MG TF1V *AN"3Y_Q+N4=5BE7)PJ(5&9,RX.=6[]W)$,Q!H,9&,?J?HHET)]LQ M-)B" S!3R]0K-RC*!.MD;3JO)T>;501SZ:V;R9L_/:E-A%+"MC)ZZJ2Q)H:^ M<&[*%T\K4_2JD(EOM)U:&RQ'VRSY<CP<^/'= DN/,S7S[UD0I]2# MWY6I53%GZ^>GZG"&XP!\;E2=AYF:'U^Z(HF6RC_3\(#<4O9BZW#%U#/0FLK# M-(H-=XX&XZ:[T.7M-(MQ.2_=:Y21N?FL)C1R;;!QE%/J*6?&2F(4L\JHW(<\4-,)C1\M-"Y> MXMW# R,=SDB>(46U1*!Q2*2)UTAI(Y2VWF*27Z%FW$26]T&5,1!=WFQC(F4K MC3-Q_6(*W]1'+H;R2?YKT23KND:"U)?6SXE#;Y5')V90S8YGZRTJD3"%[P>A M>DB:5Y./542/4Q0*HTI<1N]24M'KY]11[2AK%@1G>OB*4O,9B9+7RY-WKY(P M,7>WS'QOW=A+%FH=\(2+?MM[+F(HY1E_]78:8YU%A=1<1IB:CUNRZG625?&J M,[]\A+AV93W ZW1JXDK#1Z4\*Q,RTHDT(Z#H,N_66M#PPG38@^,[ *TH'1XX M'-:/)Z!7PC$=GX[&2?2 G-&)\F%E8$ 0?44\^,4I"(246A+)/[YTD\!1'?#V ML3R"W3@L'ZY/3X'.4L+P_)%_?^3+2$@[R?MP!"N7&('S,,ODKC/1G3PR:8CH MC6Z]PLS!/#D_+1.6RUR4F,5B1X]L'3#FJ!0:Q;84%*:X%F'[$(JM!U\J=I=3HC1>3L]'EE+PR M6;Y%%<5=U+V 398+&YABFGM!%16,>>J(]"1@ND*,I%/W'B8Q?J=_ >J>-TP) M[")E9#%8QS'2L'4(%#W/O,Z54&SCA5@6"ZD9:6+S;7Y8)S;,W 6KT0[)O>4! M.Q5(X!:43ZYER"WG(J8$!]?1SH^G'=X_/,".1N(Q2$?\21X2DQ$"&:ZD"C(( MK_P-M%.E(83!.'HHY^V %DG-:_V;B[9%S"<]'5MA?1*M@%-?9B9/+BE09Z,I# GJ1E.U=*2'86'P=$L=3$S* M'.A_?1E0M1OGMZY0+F.SGSE6H\ M(_3$V5O;/TL;G]_.F/G3'J!U2UD..;? "Z,T"]9*19JF1*&H\.N8LPF?GXZ& MB8EO];9;;V?\<'2V['16H\)GT^'U^O!2D21=SJTE6#N!00X9E1LGN+2O^,*U"IS6;O2AV48G$9_]+-5FW?WWUWTSPZV6M]8R#U!]7Y=5)]C0',(%6KZ%,_G0QLT3L=G":G!=RC0P1&2/S4 MVZ,3V)O#[\+J7]>NW MF-Z?\&XM6?#_L_>F36TD6[OH7U%PSGMO=P3)SKDRNT\X@C:VC_?=$FT;MP-_ M(7($V4)B:S"&7W]79I4&A!B$&22H]XWM!J2JRLI<^:QGK5S#1_CX!5/T,HXX MA** E8K R5-J7A$M@E6+B%)5$.4B)ZG:W[6A[1?I7EGG(SNU4I9>Y;<"D7,. M=!GLG\[92T2VE.>Z"-E2FMT"9$M_OA;9_ I#VP)DVQSGX77R7 MX05HNU%#S#"_&7BK)K."MVH.%\#;D4G@%KJ_ &]<.6H*QYF)F%.BC 6(H];H M(A JG%D,;[0&M\>/JOOFSIK;!QPS$3'C"*=<"2ZT09J[ KG">>8H$'6N-UZI MR[4=?@7GMJ>_7)/FOE# <.!46DN%EY*#+:%CX0412A1>@:R19%" @)%L4%RK M2&L?UV-$;J8(/"6=L-0%Q+C-+UGHJ+R#8Y12L+ M:5T)E'<(W"N8P2KP 'J?3"?;E*PY033F1C0DRG$ *7SMC(LT2TK#B1O'LS9+3BL(/9;UY'.2OJ?@7E M5!>B&<:H+[>^!") :DRV,"-#;:1%MQX MXL=GJ63LN*Y5_M.J_'0F3S2)P7B%/,NV3'!(^R"1(8115A08[(,[JGRU+,^L MJL\M>5J" XW61,NLY$I(99@Q@0']U((S$6JA6RVA(ZT/!UX2L&$81L87%''I M.5+,^E0H$9-0"/@P/I;0)2_0XY+,NB#3]069V#H79+JJ8/RZ&!AW*NN$_KI< M%?Y-%65Z<2JN22QV.A@2TEF!=MP9IX(3FDK"E3*$X\5>JCGD=D?!CSIA-[ZI MHHL_E3OTBJSB3J?G\D^[\>.$%Y7)PZ][J1H'#.XO^,[W%P;9NSL?3H& >FQ@ MU3404&LUXCSUOV"I*:;BQ%L?1:#%1B. 8CM)HMT?A070+L[H./DB=\:8^TIN6&1&P]YX% TA>,>].UNGKS\W"GH;N$*>*N&G]6 JL^WRL_FVJ64 M'PJ]I96Z^O-K+[[^0[D%ULD=+\9;Y+H/!;OKM4\XY&MN/'_M@A9A8P$ C \/ M_-4':!V[&%T>OI&L6HTV.K,3J1]V(BLF^O!363S"5.[E%-IFF:;])I?\+1N& M,+)YB[9Z#[-GGD"X:UQX_KCPP!-Y+2Y=?AYGWTI;S=_=]JMJS6;]]I' M]_*LW;F;Y_-IDULHQU,W%JTHXP0'PP(ACBM%"\:P%C>$"Z5^N;U\H,V=O]HP+@I_/]W_MBWVOS79UV^^?;DC M[C[^NM/Y_O7X,V[M;>/6SOYI\]U[NKN7_OY7N[G3:3?/_7&+_CLV9WNY$Q>C M\%PC(F*JU:(]L@3#KSPP+RG5TL:-5YQ>CGJ\_WZX#[:#5@]Y?J$[^U+H_'C= MV6NEL5(BO\Y*(Q0I%8@5VC'!M3%:P;]$^J)0BJDBWG#V7RN-AU$:TS;JV-CH M6! HR!@1U_"/)@RC$*7!BABOA-]XQ=3E$*9::3P[I?'L[,<[F=YK:4U^"IT. MC&]S7*PN6Y7&'[>[[9Q[U?X1KI0V^K!S?-TFOF&>UUGU.2=-E 0K3!57C"NG MO2*8>269XMS>PE[ZQ1:6M59<1BN>S9A2!A;(8>J0C11,*5%P9(-.+:$$#XIP M@U-U;;)9\,N5+^]=+][+!EM5W+J[(GP"MVH-E \!E-I:6EA71,L%CY9JA[GW MNL"<2EP4-\4'UT#YZ$ Y-1]R>Q$?(BJBP&7!. W\%!FAA;#<:25K MH'RV0/E<[(>[GC_),IIY/61J]M^]U'5M-0^@J@^KIS'XW/=&*6RR=C;^DJOD MUO.Z_DSC3@'L-=-X*J;1>CUCDCD<@Z6IR (L(>(X,0UB):*&64()U<;CC5=T MDTB]7J[*)???Z@';:OHR:Z55*ZUGH;2$E2P5OPXDGJ1" M1"F]LVPZ?V-?'GO6& 0WZJ=&DZG)SSVFE(YKGU_H+!DNIBQ-"[[EBAQ+IIY> MF]N[]HFH$F]Q*M/FSF?2//='K7>?SW;W/I#6M[=',+:?S>,W M9'?ON_BZ]X%_??>97?+ZT_W3U!6L1=_@KWOO85R?:?/+F]/=O3=G^WN?Q>Y> MI]/:.?K^=<]?3,2TUDJ/J46!&X6X80P96404-.98#3A5;.5DOG_^J8_=J MNO1KI5$KC150&D%+(A7!PA+'O<4J!&^+H(R0)K*"UXF83Z(TID?%TA9:$2T0 M,;A 7'B*% X:$6N8+H@N)-&@-$2=O?\T2N/EF'0@/-)CU:Y["(P2#.)&@@ M6WADJ,2(L(B]$<%'*D$#Z4>(KZTS>1;;*;>#YJ=,*=R;*2+'$/FK" M4]L=502O/6:!!LJ-KAGWD^#=E'%K(JA2CB*"3SFD^AF?F:1V/@_$I9>T1)^Q-M$A@@)A@9'(N(["!DM-=,85 MI"#7\-ZN. M+ZOIUZ\1[K[] Q%K&@A3.F*@Q\X6P(D)+JPTF'OE:K[\) @WY9LDC MM3HYH:D :D89-ES7[/D)=,NG&?9,&:$D! M@6+7ON?:]US[GF_$.T5$H!1'80WW7AEBE/.%MSJ(G8K,MFK&JCY@NH!U47L MUDOMSV8&,">)9#0B6GB.>"@H4@4KP,P)A($2#M[2NHC=2M.&%Y@\4"NME=@T MZZRTZB)VZZ:TIK:J#=1XK2S"T47$HW/(T,@1X:#%G"Q@^5A=Q&ZEE=8*V[K7 MUYM[UJ7(MG/QKUPNIES)<6VO38#2?G"]PR[ZJ%E[ R MAO9PU ^#S<:I&33^]Q)8#8Q4\<"TXEYRP8(MJ/=!66%IA+W.#]XOM"O$$A#] MYOBDTSL+X5/H_VB[L!BQ6[WNCS" U]D^-7T_R%;][.>O>X-AJS?<#S#N\5SE M_/W=,GU_@OAR/1'_%VK_;8O=#P=$$VZMPD@;ZQ%/73ITT 4BU',B/+,6XXU7 M?.NRC[$!TMY)4M(/G5RN;M@#@2D7HQ&JM2O%D+ZA25D=< MU-*VGM+&6]L'VG('B@HCX8A"@!X2*,N);A1$D4T$1N=4.G:K\>FF0K55-5GXR>1%;9S"4!HV-&;8Y? (*/'A47[,63#] M]!004[YU4R'9BFB+*=%^]7]L_U^O+E^7Y258$JUEE@4J PKJ0FN.H!? 3 MJ@X*N7%SU=I5H?3%8DH/NRHT"-YJ/'2E[+3R1[T.V*^#-_\=M8=GZE['6K76W6;Y_I[I(6L>OQ>[[[Y^V__R3[MU M_IXT=][&YM[AS^;V@3)>""92;"H0$6XU25HAE570Q$;&([>JQ.YV=P2(EY#7 M2F\5&#C<@'1B5>@B<)$ZR["(0M7>NLV)70K[S M@_](;]9VMY'X).C51);8D^7MYLFI.L=J(V1;' EBK7>Q-X MY2"Y(-O 5L\V&Z>A'QKMO :-T0G(1^DL GI:3CD8],.&:91(%SPR/T+?'(;) MYXT3T*49\:^UPF!E\[+>+_+0VYTK;??[IGM8]G+XZVSZG;_-6?I;-J;F)&WP MOEL*XY?JQ;?+]QY__G=ZZQC_*<'RA6 4#RB"%P,<4,=,EQJI%TAN9,D]$O\N@1?[>%1/EIQ9G $6-1S(?C!C7!TS_%:= FE]W^41+$ !Z@Y;5&"B3$%(4$&G#,9% M3IQQAYWEG8*_&/JPC'?P]NO_U%Z\QU__#S\/ G,1A]RC/L+ZFQ1^IS30'8(Y MH5I[I]3&*[QU.-56_.S\6D<;V6J ;CUN M#\M66FEKOLZK<1BZKAT&=UJ,59V093TSNV57L>YAXS\!&,;=)F,EWOQZ5\CN MJ-\X"L;_=V3ZP] ',0"KH]-SV=?>[C8^!G_:ZX%DM(>@U%_#] &>=ML&%/Q1 M,E!.P<)P;G1RUC GH.1_9L][YZP*KKG2POUO',[7V#6.P?\L-C)R1;7RTJ9Z MNU+I@"ESBX]_;F?6.O]S\$=>Q^U^,)].C N[:="FZ\Y6AOKM?AJ#^O[/YGFK M\W7OG\[NEWWQ]=O'[U]WWAY]/6Z2_6^==G/G\WGK&SQ_YZ^C2Z#^[#T)WG :W1 ML0W]W0A\X"3%Q87!IY']!FIKK_D -8$?AD ( U.3/][ MCO8*0UB37@=@O-OX3SN&QOON8 0F(4A3,A--]ZSQVP9\*WVV\?M6(Z%;)ZU6 MX[?_YW\I2O&?>>WRS^3/WTLCI?K^N _EX%>1+)*H= %$PBK+L0XJTJB=8-(7 MN*#4U$CVP *YNWT TT93_VC$I0"RRG5 BCN'/(BIL$6A@;)NO*)JD]X6R4K, M&FM&,VS E64;48H;?X=NSPY<;]C8Z0.YW;Q2;39^2])=R>+TJKR08ZG<_%4! M9*F=24$-3J0VIAKH(@*,&\!+ZQB3M0 ^K ">M0X/ AC$(\L@,#H[BAX?U60VZ"7)"_9Z+](Y!B,V >J1>Z0+)1R MPH<()I8O"LJO"!BKI>^^I.^\!?!'172D, B':%,]/864]NDPGW$61>$8D1NO M"/D%^ -A;KP^"@-S$LSWL)3XS5UZ002W[NX#6'%+ZS.8UIW&OTT7YO6L,8U6 M!PL*=D"OY"F^<7'[7<.0+^\\J8I(C0%$,90;&5*+$FH**C3QA8UC=DSNX".M M-][-&P\W#P\LUTIS35 ($F#?>(F44!X5P6E+5/ % 0N*ZE^ ?0*[YY,!P3>G M2^VZ\35SVZT\W\VD^R2?DTQ$=!S+,(YQ6RBZ@Y3SDP5W=>4VB>QN_#0>:677 MU7(+<@MC>?\3% :7!(SJP%#DB:Y8D4+.14!4A"(:4CA8&Y!;N2D6R&UC3F23 M+%V0MA2TV01$[/\PC4\C &V8]TVPW=Q68R_'9R8++5&/L32-8R_G;F-[8*Z% MGR?M?KD5TC<"7 ;/' MGDI1%0AW[O>/&VV#["T5[^Z0/V,SP+";W)\*=;G5W MZ=9*\%@8"0J8HC MI>=&5K\D8(5YRH< @-Y)ZML <9UEN#:-$YZ_8R&>91.\ M97P?3M#^R P:-H1N X L!U >CSK#]DD'=$5^$0#=I#>.X!OP>.._C0;#ZH;Y M1J%_/!/?GSU\&YF?)K??^^X4ZLNPR]/TQ!]S+P73_R:]-.!_&D0Z!FM4[_J? M\I:-&?XT_]7%3L3\2W7,.;[9G)]G,_]QW@:?S,\BZRC="00J5%]);S]^^?], M]&7*MT[S#TM4*KW!5N/O47\P,M/WFG^)S4OW*R>S^F5NY),Q7AK\9#G+44K;IM" AXSB?\IKIND@O M[F%E\LQW+T]^>N!U>0S+'&7,GUWX4?^*LXO_A,$@A,GA91:.CZ$;3DUG#V;A MY5*!9*"1YND!D5P ^<+(*0%40'*%E,<:18D)U]1AZH#HQB1,*9]G,)^;D .> M2C&[6F5? O\;@A%NN&SUE 01E9)(S*@?_CO*C!QV'2#?L =_U..YVNP6? Y4_'-\L1"!5>M6&N^^U$MCIY$^2=G[Y6YFB-.;X! MH1_"I4,81D;QG@4&4X;V]WZ$_@0%)D.9!J*4B##(=^Z''VV8FVQ65$ED?O9> ML%\3N&<]!X^N-GJ"A^,$"*66*J,IVK'1&_5G&V": MY\WD;@6S@CKF'&*8F^1N!4O#@J51 *)H65A*C%NNX?"=SKGKQ;R/Q70Q2)Y\ MY];S%-V6SK*EM;"8/F+/B&22I#BWRX'\5R>OFJN*E63PV DNI)"#^5RATZ,V MX$V"N^IH.D?D]%)N<:/3-G:,G[WRS'S4-2,@(3F=-2F1,K&UF\OV9"2SII./ MR@='8,L"XFT[E[!G)N5U)LDVH=>U^)0JHSQ>).^2,1Q72O?DG=^4K_QBW23- M\\_GS>T#PYB+3%/$:-# APHPDV/PB )T$2YLE$PO!5U4E601A Q"&(L9EZGX!FA#^*\04G%B^#WPR(_ MBL&6 D7SV@R.MKO^?2[HD(ESJ]>MZCB\8![B>.O# >P,9[P.*)"0*E!90&91 M1.2 SQ?.!2&6]LK=9V6"$U$Y% MI"P3B#-=((4!BPN&C<&<8,5RV9W+Z7GWS3!SN$__@D7:@-NC<2F5_F0]RS2N M.S+-%YU)\!;T99J+7\@C6-6IN%Z5ON].Y"Z)FRP5YP4'?%E) >7*.3'/4_*K M5.?!A_!1MCJR3SU]M]WW*188].9@='("ZK0_\>2>C$#R*\_U3*1YPNSK9:X^-NJV=IFB>'C#-O0J% M1![L'<0MM<@FNY[98(LH?+ L)KO^ZM)ZLT<8-K@4HAYBK-R(.46_XG]G8\(X M%;_VQ2.I8G-RJG#Y= *D]$+8Y<+S Z^B4#Q(I0H-_[&Z$-@S'3AA4F F,D^K M!&K9\X,*LK(DI6.#W9@2P])TD!#$ FEZ59:%67QLD(,$LDA,)":IRHQ(XXB6BS*2XEAR], 4&&<@$2X#?I@( M?EFQ-FGN>?CRHWQP:$%Q)%_\%"*K4[*+$303^Z6 M$LA.?7_#4\!OYK91%4@7V 9=0Z!.R+Z)T(W!745WC,QW@\ M'Y53X_%][*G#Y&>%C: M2WY6ZPCL*>Z1"5J"D<.)LM%9S[*?=4'UG MX/+>A MYI$TGQHGKIO6\U=!EU O \$%"1+#SF<*S"A%//96!P!D58%NEIH:=.\N(-]_ MIA0*I M.,X1Y80B[D#FM;4462T""9%($BY5_@N*ZZ"5\-86W'JII"ED*O)#-5-*A?FR MB\_(45L*]?C RF7ASB6S /)CK]/IG0X:OV5/:%EZ9/#['S?59)UY\]Q78>[C MW*#'C(:]\4R5G2WR7ZIN&-E;>S((?XQ_N-1!:';6TYN.>SNTN_D=\W.G@8=; MN H^K)H:5@.J/M\J/YMK#%)^*/$68?SJSZ^]&*Z][D.FKKGQM==>^U0BMVCQ M0$,6[*[7WCQD=ICK-LNSHFXME1Q^AC\T#=%=]>!%?O'IJE?L-/XA]^ OLA&Q1L09["3Q[UO$QO?%N_#P(.9AW M=J^M3,'E.[J'R[;#WSZ?PKB.6GL=^-Z'G\V=C^W6^=NCW7>??S;I>_BL>=JD MK>]?X?KYML.MO;_:3?J&['YY>_QUY\UIZ]U[UOSRAG_=>P/CAL_.M\_WZ]K+?9"U>,<9TURCW8 M#[-1=^>AW_-F<'2=GAD+W'SZ7ZU;;M8MK=B\85V@B:@5)30/Q]!P=QM4ZTJ+OZ".5$#X/H X(-2ZAKJ?@GJIC0:%XQ[ M8S$2U&C$!5?(IC9'/D27ZOD7)A0;KQZ#13][D%NM6,R#L?C*VS1KDWEWRN(3NK3E)L=JU#EM$AG_!9I4-P:V\?'P1!"Z441P:SR\!SS$,WA(#T3 M.F@2$;>Z0#S(@'2P$A6*7&X?6>+CBE/MYA^!->X!..7?MJGGF MKII[]E5?FR%^L4YSK6B65S13/W6T,A31>^2+%/%B"HNL-@%QQ71PC >KV,8K MLHGE8^B99^_ J:'O^4'?/7#H&OH>#?JF?FLJ8Q %YX@I"] 7L4KM;1PR7GA/ MC0G6IVY_FZ2HH6]%B?0#."$F_6I6+X._3&K_=-3K#U&NQ#+EUY,4E\'HY+$' M+K?$;48^MRBPSO ROY'?8>2CDTE#H!?M@GK&2O+>8^'S-D@%?VI->"=->#;U MOC?/W?F!POFT%@P!+%)#>AE $7*'5"$9+P@3/HJ-5^QR<=6G]C:MH2JL >[Y M =P]6P%7!>O5L/>KL#=VLL/X#\E!P9CU1; HL, 0EY(@)=,:$165,('0:!\S M3N_98U_M3U]V$L<]:E,[F]YQJ/U)ZZA)?GM2KEQ)T/LL0+7"6$9AM&>=Y1&+ MB*-$6 N%.(\%4EH*)(VSD>-H G8;KX2XI"=^KSU%M9/\98/:O<=RUZ#V*Z V M$[X-. :Z1:("8S#\8=Z1D? /$X*QP@7*9-QX1:FB$>VUAXB5%A/$.\$!%IBRT*PD7+3>"AT#EF1Z]1;.@=MMSJ8=EJ^OIK M/57KJ6>AIQXSTJK64W?44U/+,K!(*744264(.%XC*:(7 6:]12] M[#&K]=13F*?_RHTT[MB>>B4CC^C-D4>K&>Q5MFMI+(SV&DSJ 0W*=G&3=MN] MU$:[UPV-8[CW46Y;U F#06KCV+F2L#T$6PSR]=.:@\CX-KV@?G3H.3ECJW[J%SL5NM/'DV776H MNJX?S,OJJO.00U[?KCJW5(]/V&KA:<9RZUX+J[MFCV)&K-)8'K0_QHW+^JRZ M-TVS2>J8NF4G\TM^5/#(P N9P]01\]BT MN].D]6QQI4:8N47NI9/NIXI/6:$I7*FQ/&Q#JN5B$QZF']53^F87-C4.QC'X MG\5&1JZH5EY:88F32@=,F4M-O<=GA0N:>J=]=7UVZWB/;I=;].-XATY:?:]I M@^_*(0MC^O+FO/EEG[2^_/O;_MX'GL=Y_(8VC]_PYOGWGZUW;[]]?=<4\P[9 M)GU/]O>:/[]^^TSVCUM'K9VC-OR-[N_MG^WO'9[O[KW!^U]:W_?/.[%YL
#@_@"#@;&8D@U!@LK ^*8$:3369673@>!K34^;KS" M6^06.%B']OTR__;M@8/KA@T@ '=+<7G>$[928[E!Q]0II7<)=^B.CFWH;]Q= MM4P#'2[%RE]+K'>JK?<1=M[?H9^<)I.8!T1KW7*S;FG/<6RI1)!6%L)923C5=R2ZYG5E_-!);]!.B_='CG1J_YB)U_F?/ZOH*$ZW"C&I M;G;I2F,'O$18BBR=G;G9?X_Z4]D^#,CV@_F. M3(2W^L-T3LW98.-?%UY^;C8O3=+5ZU7^"\*1P+7='96Q:1G:@N(Z:"6\M06W M7BII"DF -U+-E%)AP?S?18I6=7U>F\%1X\2T?7*,-[U EQ+MHNG]L-CWHC&)H?_%X'W]7!=W7PW9)U#U9K M-/J^*?VSB@S9.^J'T&BFB.]!XTTW 6<.26XPLGD+5^H8>("YA!MD8>%7:VF^ M\V@>0YH?YA#N*>0\V9KW=#3P0F9LE8;RL ?3+W:)4Z)C'0QX3R'&+IDC,=L0 ML=\[OI00M"IA@ ]3<.5/YMSI+1/W@F.=C? MSYM?WJ8QG3:_O*'-\_2\KT>M'7^T3]\>?WWWYKRUU\2[>X[/>X1W]YH_][\T M:6MG^^?^WOYY?K?C-[A%WW[;__+U^_Y>DS3//\"8CV:/(QF\-SF@Q$BAE$)& M.8.X=1;9*#F"OV-91%@WK3=>L4?IK/DP6VCU<.>&2B#7G58^[YJ!MSZM?%X% MX1YV#]6:N];<3]7YM=;<]ZFY\07-70B)*6<<%3A@Q+G42'%ED"W@/]H;Y[C: M>*4(K35W7;ISE2;Q:I/Z8MF-58GT??12:2])^?Y*%,@ZJ]A[+JMY54N8V>BJ M]\GG&0;#2OWN=O_3-K;=:0_/:D6\C"(^FS.A@^ >%YX@4+@I6X3HU"L2[&C" M"V>(C]*3NDW,$QC+SSQ:LP[MK;5RK957V_"M]>]#Z-^+AK"1E G''/*!4S"$ M>0&JUQ#$8Q1,6":5E!NO5J^,Z*HC;=V@[=XJ\SR0L?L<3H]?DEK]E6.+=5:K M]WX2/*M6_^ZW88.=F$[M5KZ#-FV]GK-F&5BQ5$2,/ \1<4\Q,K8H$#9%C+*( MRE(-VO0Q>CT_KU.^^M2W/O5=B5/?6N,^?XW[H(9LK7%_4>->M%^E$9ACJA&G M42%.I$#:&)K:QTJB0PPDM6P2NM:X]V3 7D[,G/6NX_?86\?[Y__T][]\OX4]C%M?6G"6-_&YE[SM'7^ M_2!A) M!(ARB1;S@%!E."\0\P_!W$Z3F&XT 2'>25K@_"M=7?KN'Q9L%W7K1 MYA;M9W/O_8$)) 6J&D2-R14K+;*:.60HMH88[ZAGEQ;M%AMU57.BMZ]J*K+9 MZ(WZC>-*-AJF:SIG@W;^MND"LG52OY*JGD;PL\XH^$;*H[ZJ!F'^J< MZJMSJ@E;PP3E!QJR8'>]]M%RJN]"E9ZJ?X9Z@C2R_534LA&Z:8R-G>!"J@9T MRP3B]<^IK3L)U O\C!;XVIXI3W>^EQKO7=M7\>(\JS4X^LN]WGZ;-H_09>.] MU6D8L3KY)G7*R9W[C3X?G^7="@I>[ZJ<6,UC5V59(1VF^;2>OY7ZNL/XL M_)>';/?+!]:$_WT]_N?;[LX'W#QNBN;>-OWZ[0V#[W[;/X8Q[+W]=LE_N>/$ MUQWW\^N./_[ZI,PQ<6[CU>JY+I?84JL'1;_02;[6(K46J;7(S?D4 M-[1_O\:G7BN:>U0TTW[QDECE3 A(1JT1E\(C);%%,5!C@N36> 64>Y/+-F]"DQ]8[M\GCNZ1J=D8A*9>]TUZM M7Y;1+^T90X92K16-%BDE0+\8YI#U(EDS/D986","KY/XGL!BJ3'PI6'@KW/O M&A#O"HA3PAU!*H.A#!$%__ ""P0<&R/LE;28MH@[IY#".")# M3#!>\Q"9>TQ6_>SCFVL4K%'PH5EU#8G+0^*45X<@6<"D0%8D1[8E&FG,/0(> M;:TI&%4D\VJJ'J-BP;,'Q-I7O32O9K6?IM8H#\RKW_9&]6'H,CJD]7J&5AM8 M]X)0BZ2@-!V&'-6* #8R^'NPWC"::H#Q3:$>(Q;QV>-A[:U>FE7SVD]3*Y2'9M7M'[5G M9BD=,AO+3J1QHK 1:5IXQ(DPH$.(1SIE\4O.0;78VEE=.ZMK$%PC5ETCXM*( M.&75A12&ZT"0%@X#J^8%TM%29+RE3$IC29%9=4%EC8>KR:J?N:]:Y/HDPZ/0 M#R8.0[_VVM3ZY0%)]G:2L5JOW$6OS 9;1TH)T\ZB*+@%O9).0W4H4(B$!:<* M^"C6_NO:?UTCX7HP[1H6?P$6IW1;R, U%QR)P!GB. #3EHXCQAP-10Q"$K7Q MBK!-^%:-BJO)M^_JQ5X#NKW7&YI.X[C=;1^/CLM*@(V3"@1JO\[RE0EJ5;0L M_:Y5RS*J93806S).7>$,<@)X-O=,(J52RT)'2'2BH$[:ND[+ZA#Q&AI?/#3> M.TNOT7,Y])P2<^E#6WJ':.W3??O+/,P7FW_QT('?;Q^FW6N\L MH7=V9^.\@[4N4DJ1BRPBCH5 -D5\6Z9LP8H@#3&UG[SVD[\\)/QMC2AXC8OW M@XM3/NX%2P>( LG"*<2-DDB3E%NNBT@ ,H&NJXU7Q:8DEST:EZIOUX!8N\CO MCVPGI_BNA3?(O<16SB]>%^FMB_2NM75R"SNDUJO+Z-79"'AAH]+68&2#37FE MRB+-O43.,5"T!A-)<'U*L#IF2*TH:D51*XI?M-VNL-IJ+;*<%IE:9UP9'X0P MR&FK$6>1(J6<1*'4WO>6Y=SUGOS9G5S3[GC9LOOS[3+/:"P_2T[V^;.OON::W3]Y@ M.#_XC_80YMQ=ZCZXH.7P;LJN:;SN'1^WAQ=C_=;NU:_OK?PE-'*CQW1(VFL, M1BP=_@ ? .HPB*<-0O^RZ78X [C0=P MV ]7WBB-QH#P09OMY+SN?4OAGN[6#OF79:C)%O!QCNS JG M7M$P#X/%CQV,[+?@A@V8I''#Z$SCS##WH$[.[G[(?SD]:KLC&,59HQ_^.VKW M)_&B:7#C 5RX1PQI*'OP*L/V<1IT^F+O^*13WA!^6[P8@]E1_8!)J5A<6J8P M@'N989BTNH9?PWA$/K]&^820/SWM];]O793QA^WR7LK)=/KKQNX[[P\*S83# M!4$1\W3TB0TRE M$M2.":!N4HDLU=I_1/=]&(!'Q;,W@*6V*LN%ZVA=EFW38 MTC_:'A[RWY'I#@'3A^T?@ )F:$"^#TW?YRT$F[*70=Q-M_A6X^THX\PXGGL< MR0T7QD[:2"8?4@U@3\#&/@5L_'E2[2_X*NPKUQGEVY_TAG!=&T"P-_5[7T20 MP2R$S&S4?GOP/>_P60BP9XW1[5O*7[VLE5% Z$G=5[[N*[_4D%]@7_DG:44] MQRP;VV.4:.R=G82Z^7@:W+-J/CY=X!T@9/4"/[L%KDA%LR(55?3YBH04W.3B M6[]X@^9"@W'*MAJG[>%1Q=S U(GEZHR-,.")V63="2X<6X#BE]54Y2%$9.7. M6K9/^NT.+"R1*^M97_E==J\GM+\0A;EZ,[-28QFOST,*^/U@QFI-W"J>8J\Z MK"YQA*V4%4PY+:+ O/#4%CBX*(AU 7[SYK:Q3I]@WMH1YK [G/<8EKW&8;HJ MWE7&%Y>?@]Y_)D?9;TCK_#UI[?FCK]\^GS=W/IPV=UKMW9TWIU^_O#UJ';_] MMG_^M=T\?B/FC[*;>Y]9\]MGTJ)OCUM[S=/6SO9ID[[GS;V_.OM?WM#]+ZUO MK>/W9_M[G=1U'%='V02NHP>$&>6-9LBZPB&N%$%:Z]2PA3#LC"V8"ANO%'^, M-H@O6.,^7=K?NBKGG9G#H&0<7#P-6N":?3FI,'R-$9LB0^"*AZXU;Q0U@0N(@_,V/L(&ZSIV&/1L9G(0NN8E#P@ M811%G*>61UXPY(,L*"?:$P-43&QB5=='6U'*]9R[?)0%TBX=M:^L1_6%/G\% M/$+5)]6CYJ(<:W_1'2S:V\WH^C,;1ZFF'+2=\H1+)JRAC/F">N*D=236S&9= MF,V%_F68A$+)(B(JC$2\( 72\#L*+I"@A"NH+A*ST8RLD9MIF4VY>CAW%2.Z M/J+\EO'01$Y_K^9G)6(0EXT.?]T/OCULO#4NQ]O>/C;\R=_TJFA+(M)[O>\V M_CWJA@;#F\FQ4FSF$,A*FX%>^M-.L,/)):.3%"OYOY?)FJ.%PLQ*:A3F MVBCM(I',>"N$545024F0 DN&+R@)L4S%$YBRW5B^Y?@E7X_Z?9BBOWK]?@Y2 M?6U.X).95#JYGFKASL',NWOO2?/#@3<&DR@L\MZX9+9*9+"/2 5)89$*'D!; MOR(@X)>PO0&RW8$?-K,'U_@?*5)V*BS;U1^FLI+#;E/T[X]>YT>2LB3;.<:V M%,C?-CY./OI/]5&YBAMWD33#=%$X7>!08.Y#- 6\C\5,:Q,H%:26M,>2M";9 MW3X@'$O8WQAAZPSB5$N@$=&A K:_M((Y;##0B&L$K8P8 EPVSI7QWWW@(.T? M.7K:CN>[84V9[7*EJ,"2VM"?DY88"39% 5*B _?*6T^EPJF*F8Q:4962)4II M08O$YGWK[5@XG/\YR)+1FY.,[6K8'R>CG@C)7S#FOT,_Q=N9PVDU5$1?G*Q\ M.&V='K 84Y\5AH0($7'&!#+1"X2YY(9@7L#G&Z_495'YG[3P 1A@.\G$ CG9 M:FP/&TW3=TN1^9%RJ8 @]LUIMQ'[O>.F92JG<8&F#1J)^4 M> J*VVKL=AN[;MB#KY2O4+X!VZR4=3G*$FS3#2=*N[Q/&'>ENGIL2?.WNRDK M::OQGWS/8^/#PEO:8/J#2>5.^!!HTN'1=,3I-:N<)UB/?@KJ2]O3C^?G/^__ MVOW8..F,!DMN5Y6:R8N":%,HSB4V$888,(8_"LJUO/UV'6-Y>I_WW<&P/TK6 M)&S(]N#323\8O]O]IWJ!CS!^\G(W9W-O&^_N- ] CVH/DXHB=APX Z7(.-BL MA!A'HS)!$+OQBFW)!?L3]M^8*$SEZ4I)3.(UE:Z+PF2ZW9'IE#(5_IM^K';0 M(2Q:2I6$V_S6_GU)N:*^B-(&[P4WW#@P?+$A7#%*HM>6XEJN'D2NR.[>]P/% M!:.66&2EXJE1>H$4IQ(12H25(1AF0:[(%EZ$^\;V?I1)DBGUM,*:!'6_M9<6 M@KLQQQO7_GTER&FY/PWA'U^K_+SZM'G^_L#K@LF !0K>$."'V"&EI$)2:+ / M9:$(*?GA0E1YKHG?NRE!\E+NX@+Z4:8_!S=*3@ +OX)U%;I)SPY&=C T.0TR MQ=]W.@D94^+E2>@/>ET SI-^#WZ&>Y3G0\,CF(_TA82\G91P.9KY4ID"/?_T M,NPTRBV5[;K18 AST#^#[?4C=$W.TH8MF39!O^UR0FC,9=+:.4]]_)TK M%_.D-VBG>?BC'SHYGW2:O/@_?U83Q^E6(9S0,?U:>+3Q[BP5Y MNA<2859<6%*KV]F9F_WWJ#]UNQX&9$$#?4>Y+^D?IG-JS@8;_[KP\G.S>6F2 MKBXX<6G5UFO'3;.'CT/(SK!)&G*_YT=NF!P8H3L*C4X*8AM4\6NP5\KCATGQ M@/%ES@R.QM_-%FS:O9V0-O+"O?3_#A9NBO&FR9>/2PA450->]XY/LCD!#*@/ M+Q_S*6_*6@Y]T]E,NQ.V<_)IIST MTV :$$!I6H0FXW0/0292/4(CD/_$%"A M ?:(=6PI&W 49\_/C;?0X47OIU&9D?55_,G[>X/&&\^8]Y, M_IVDC1,@P6\#P)2&&0Q"^JC7+W\?3UKY]\91Z/C$]V*O#XM38EC;MX$O):-D MNQ%-NY-LF7&!A+/)S(+M/YTS,/_@/B?)GAG.3'NZ+/P$W=L>I&(+QR%5F6B8 M0Q@ T,S18&(B3>>PA-:PB*ZT:HY[("GG9;F!TMZOW JA,RYQT ]EE8-&','.F7L* MC&$9"VO&#W%'$C4N8K!>9T/_"8>P8G^GLC,A[=OG7#DH25[R7[G2,YU(($AP MXGOIJ A6/U6@Z2=MG:1X@G'* MUGMI]7^U"US'MXZJTU+'YF4EC6>%F MS._FAI^+2J4=W6D#L0D^SYEQKC\*>3V^=WNGE]\Y33@\_/0(S$)8P=X@WP;> MVE;^-)^*W31L6G63#$,+[SXN4.7S\/H5\UCB% YD5V+-/+:%Y"8X)60,6@A& MJ:*1^L5!0=F7,G,,!W+LTE'<::_O!Z%[Z1P.7N8U/!70*'1=.FCI@\GZVO3[ M9_"G?Y)45L=R$S\+?G%NEO=B=Z]Y(*@M",<11>DUXM0YI()(%5"EB%)9*IG= M>-7M73Z%,^6LEEPJY>UW4[VV;(F7 '&%P*6O)SP #MSN^21Q0-)3PY$7I3? M0'-Y/[_>_>?]#DK=/YZUYI@KI54B]*A; 6%I[0QR-,!@U)D 7451)I,$")F$ MJNTJ2WG^SZ I9@0*;C?C[&J"Z>1S8]\ #=;MI6:PYZP^35%XV M<_.=/V]]VJH>7I9M+"E5-9P$RNG1IV!=E^^9B3V(09H*F,"R5N%PX02Y64UX5D+3$>=!S7H=NJ6KH+I]2,0PF315E8Z9 M6HZ5HDU+?@1B $^=+/)8I21-9;."&B6O?+*?DO&1RG[,6LZY2.2H7Q5LS+4M M?X3^C)=C\LYC\[R:H47?';]ZZ<@L'9$A488NB'F[6ZJ6=J8B9EC:5]GWD5X= MAI\=.>/)WBR--%?.U-!\!P6:'0\5MQBF:1\F'P?\/!@_>C+(L25 MZ8?#[(V!09G*+S,Q(2=_@SBZOT2V%Z$[RS4C<%1Z(#X@D"BDXY)[#Z% MV98OFTC C=,SLUB)[)\>]8[3$DU% M;N;65S#(\2,3].3IE!(ZV>+QUFC:FO M;#%HEJ/.T9(P;J"T5T],Y>S-XS,G,)T_,Q^&!5DF%NU.I5B7C)'/<4]4#*N_GX,=$Q_ZE&+H5R9V-J2K0E@E6RY-NWZ*OAF#7B('L)%"&:93HF998[4R3.>)@P>*?E9N M-]A@XU& *">"5NWRI)\S^I2GAPNWS60L%21DI=W++OM!R7.F]5;;$[Z[> =6 M(#LA3QGZ9PC4E!94'O1\\C( 684/YR9RO$+U@^'YZD#%> MUU\=Y%%?'>:3WRDPN6!*M998')SGE1F-=2,UQU,)83]6! M$ANK%1Q"Q KAW!5^O!8PG :A6XT';KSPL72K_IT."/922$?E?MAI#RI5NB)= M&'AKPMSAGO3SV>[>][.O[_;)_OD'MK_7Y*UW;SO-=\VSKWOOZ?Z7K]_VOWT6 M\\R]N??]_&MV4/_[^]?,[OU1\_P0[W_Y?+I__N].\]M7L !@_*GJQAXP^,,# M1[F0CD?$@J&(6P]L/5B/B,4>8\L^C%QI6(S@NO#0R!*9A M4Q@NHR_(?-.&:A$:>14:L\MPN5G/7$^.ZL&5(]S?YN'KY01>U@&^/1CVS=?0 M#[Y&W1LBL@:;C9V+S*M]S,>SKW@CKKP MMH<@84\&PS'EE9V,UT:0').YJBJ[K#? ][B&R1!!(YIXI9!SK 21>TM-;ZO.A$5XL./UR_Z#>TJ"CEQ:(;5 L/5(XA(::04_:1QL41C,/0X+S\13FEQG M$@]EJ$&#B+D3.FE7:&!DN#T5I+E=><:$+K-7^(-7=G!T+&0CJJD,YID_X#.^8S:WYY<[Y_WOFV?_SO=O/_QUS_W8$#-Z#W7 -?"!B^O"0SW$._NI/]]3H4UK-%!>B51=!BL'28P M2JFU*$BJO(*)+X2:7UO-%#-@G$2E#2?6&.\%FJ6?;+NK$J M.;O@8'G&?@VX2;K,Z94RQ(Y/R+S-'Y;GEPV'5 M^W?WTM^J^+R8O:)5=$VO.SX5AOV3#^U.^BF;T]C>:%@];A!.3"X#,3VMG(W\ M3$&^/TR[4\;5I"-<^$M(*2S9Z=\/AZ..Z7?.IO$P.\U\LIDD,^6)I$S7'%$! M>_8DA5CD3_+Q]%'O-)__=E)4W#"?B^;W6/\HUS_'\9U9F3E)^W&SC1#WC3_DD.543C M[(A)8%+.-()YS4ETF^,*5>UT-' A*GGBL]^CT=9WG=KH['=@1TR#,=E'G%"#S6\H:^KVT M"&=C._HIHJ#Z]J0^UJ6GSB>8WK$\Z1J(PF)2?2.1FM.X52Y\\L( F QSL$69 MYV]3%:'-O$JP-^G.<=G!LOO7&0?$7=WAUZYRH<612]&&OJ@O?/>RD9*\) M#OE>*,6A'WZT87KRE1=D=<$(KD:)E NT "2J&I*P&W)?^.0+/07,[U5/SKOJ M5D_>NNP]N,S/KO<8K&Q5V&6YZ@(=_8RQMPS.2G%*28Y3<0>8I_,J:O!USX,+03-0,I M"J$,%9T>1)^ 6DRRF;?]Y,RY.D Y 40Z-BYSQY1O6*; 5$%Y9;I(RI\=3.S4 M096;D%8:*-MAJK]07I1#A,=X-I,%5!+$2L,ES#TK+VP<=GHV10]>&$*%N^V$ M4Z-!^9Q9#3UY@3(3J8KN+M^F/9])DA/G!^,@Y>JWV4C6:08TO'RO,1-,.YF^ M- OE!=5+94$?9X@DPC7*C*#B#;"O1ZE$RTPZ44HS&X3QK^/2STE1Y$RJE.:? MYV/FTK%8#BZ6.^F5*7/Y!_A+RNPJXPQAPE(@9@PIS2MVS(\?GJ [--N^?ZI:XBRU."3BESC:,1C#_=))A!F+$%82 PB!Q)5DE5 M5AJ3&^>DTA\I<2$G2'QJP\0DYT;FV1>$*27;I4>$E#%19M\L>*N4[E\^IY'. M\5+2?PIF3RXCF(HR2S(7]ABCK(1N^E1.E$XP?1^M/"I9,&3]/ MJE(%L\FNN8[=A9IYDY)VTV)KIGV:(YQJEM9EGC3)D*@IZM.^^MR>&X)37VU0I,TB['J6]K<1+R<>(*?/%' M(3-YO^?P#-8Z/ C1.F5)1%('C[@W"IG@'2J"M(S+$+ET5QR,S/A8)Z[5N9*< M8QLS_:U;%N"';TP/TTJMEDW+TF67W']Y5T\]])."'I6[>)P)/''*9Q?[U+F7 MV[$D(4U!._G88/8QU:''I(!H8B1]$.L%WMDKHW#J!*WK$[34ZA3B7>B*OC%> M8RX&P/ @B/$Q&_ MQID;.^/,C1FO^?3PL'2;ESQT>OQ2I9?F@A)F7'O.ET=M,Q"0]O6L][PZG1R/ M;^P^G[C4>]WGRQ*GY\*3P[3,L"?@F%)\TSE!FMCQ.<38:*AL]_(TUD\/1L?? M.P(+(4/KYB2:.P%+Y)2.L;/_Q,F]>['4R.16M>9%1Z?M TF5,Q=/,B;&H7C _#.6*AF3N>FAW)[1V49 MP#2(P>2DNR25J:8,V#O)-CF,H\YDON#KL3TQP_KCJ*MQN9JT#%-]-#XO'\R> M$<^ %_>#W/ZZ&_6OS M)ZL"816%O7!![O!L1L/>^)*R%VK^2]4\-1=E.AF$/\8_7&H^/2L :=*!:YYT MS-D?[6Z>[OSC:=B/%LEXYGK(5M^2-D6(==\?NW%>(M< M]Z%@_([77OM4O57PHAYQ/>)ZQ(\_8G';:W-3Y0J. .02Q.8.XLLIK'E47-RK M>MQS.@-O:CF]L GU>,PK.AHB)L.Y2WOO&T=1?K07T>0GH3!'K%9:ZA5]=%MC_5\S_]V10_LC/ MO\O66##$:S=#943D[,J382/;/(VQB*[;3KDNUO+!EOD>9K"6@?N3@>OCH6HI M>!E2L)N%K2&^EH$:XFLI6 6(O\&==L\#S,W#/?]A=V\].?7DU)-33TX].8\^.0^A]>]N!,HR0/!7%#]_ M##.JBHJOXJQ6S5)^FK5;O67ZW_,+<[\3D^?^AIDIUZ<\C5VAF5FB&B:)1>$4 MUD0$RTE!-)51"(PC3]6%";V/ME\+*OV^KFHN?FD/CUY7^5=O?E8IN]NY+D/P M>^;G) N K6=X&US_L[-[_/7;UW>I F;K&US+6CL?TW/Y_O$;O+O3%##.G_M[ M;^C7=__^/KX&GC7Z2C_+K\>M[_OT/6E2^-Z.PZUWZ1V/VOM['WCS_#O>WWM[ MU-S[^GW_^&-LGN&S_^R]&38_X=,#9DDJK]?:NM_?SV][+%+XG MO'"8*L5LY(18$PJ!HP_!&BP%*VK:MU:TCTYH'^4L,BDB CXO$:?<(AL]085R MCDH-RTMY3?MJO7#_P8VKM5;WJ25NG*:7H3.\=H6D'&O-&(^\L$YY7U!OX&&1 M8'935Z!:9ZR4SN 3G6$-+42@ G%I N*>2F0%)4@&66CK!8E.;KPJ-K52#Z\S M[G&SK1XJU1JDUB#/38,\E%.A!H)U H+:Q5"[&"[212TE$8$$XA7FF!>:NA@L MT3)&&10)-5U<*[KXL]G&/S-EW#XH1$$5#P8)(X U!J^1(9PC(A0!<6*PS.'1 M"./S=S*L5NCFF@1Q?%Q043 7AOF5J(['B"&B][VPM]D-5XQQG?6/H%* /6L, MHYA3BC753I""%M1JQSBK7=SKHW]:KV"ZZ4PS0&QKB)F@MW M4Y'7&AM7"QOQ!!LQ)\HRZV'9M )L5!0IPX&H.QLQZ$)JM-IXQ38++6MLK+&Q MQL8%$;%,.-@F4NF@.2?.8,X<@5W$HO; (&ML7"MLG(9&8&T)8&- SE*'.#,I M"2D8J50$,TLFX\4IOBN(Q0B-J;*RQ<376;@EL+*1EWL44.6; IBZTA5=C M0"#A88"%KO;IKA4V3D, ,./62X%1E$0"(G*"+/<1%3X$6&?8 +;8>$4WL=8U M-M;86&/C INZL*J(6A3$*RX\50"0FJA =:&%I*K&QK7"QI_-UY/S+L6H&J]NZND1[Z-!,5H("A:RTTXC(0Q*E@R!14(%7 0GO+%"V HQ.\J1XE M+. !=N.JPNMJQC+7L/JHP;ZJ8,%@Q;FPG/#4ATL76$H9 E-:B!I6UPI6IP$% M3%#B*+!Y[Y5#/'J+M,<8$1:-##H$J^7C!134J%JCZ@M"U,4*2%90C#^D82:<&] ;+*-^6C MQ"+4L%K#Z@N"56%3&W$MJ$BQD99:S;4ULN#,"@=&8^V+7BM8G8EB<-P&%3AB M(@!9Q90@79 "R4)BY@A7SM/L \"JJ&&UAM4:5N_5!^"\)K(P4D7"';-*&>5< M!'2U(LBB3OA=+UB=#8 (% L>B$:^\*E,C+7(\&B1HC1P(6*@S#Y> $2-JS6N MOB!<-5X$2K0!GNJY5M0J4BC+'29<*D^+&E?7#%>GH1,TVB *%E!,":S<8H5L MP3B2N' \I218)H&PBDVA6 VL:QA8\;P[9+WN#8:#7&"A=Q+Z9@AC;82?)Z$[ M>!%=L^KGU\^OGU\_OWY^W8?JH=1KHQ<;)ZO=C^IIK,%G;/ ]9HQBDK'=^*[7 M\X/MKO\4^C_:+@P^]3J^MNN6L>MF6R])CX7CPB/-<^LEQI 67B%&I,;! ,(J MF9(I!2EY61LD MXII1I!B.B*I@"7,B%P#>*R;I]3B7QM(3Q_W4O.! M^^(#L^$ML"3!".T1HX$B;AA'.C*%F '#UVHEL'@\1O#\3:2G"V Y;GO?";<$ M3-_^,3^DV5.YN6F^Y81V\0G#AENE4MU!4B!N*4?62(6L)T/!:442$T&:J;1(V%3M"5N,K!8.!6$HLU%+:5PR*C2MRPW6*%BCX)/7 M%:E1\-Y0<'KZS+D/(F"%=,$#XH!ZR'##D8Q&.!.8Q+0L=R?I8_A6:ABL87 U MUFY%#YQK&+Q'&)R>.>L0@><5!@5#+>+!4J0T*Y#&A624J2"=2&20BX08U#MXK#DXC#H"W8^P*@@J*YT*:Q:; MA:C[V*UHQ,$#A&BM=\3!I]"!OQYN-@Y#-_1-)T<>&'_<[K8'PU1UXT=XB<$' M=2C?^NC6QPP^J+;+NW*S@(;=OK!5:B5[!R4[VVB%*,RQL@X)G\+\7?!(16[^ M?_;>O+MM',L;_BH\GNJ9JO>(;B[@5O4\.<=E)^G4E.0D=CJ/_4\."( 6$TET MBU(<^]._]P+J;3B421('#WY7=-QH@/;D@0!KZ%?4\N>8[\V\X7 M]6EQN'OB\!&J$+3,>WJ95]<DR9BWQM,3;=,6!%H9/(0SKT@/04#88?$ =S U!&(:.&5JBTHM*I^]6$'+PZ>7A\W2!.J&/N4L,6D4@+E('6K& M021,-PG=.+(M/PEP=LAS%"9H>;BM\E![TILH4]#"\6F$8UVO$'HB)J[CFMR* M?)/X)#:I&S$S":CK1@X/G$B"R/EVJ'WI=M8K;&[$QW-LXFDVH0,C%Q=8H 1[ MMGK@ARZ0>\E#JIX;LQQA>@K]DVL%= \%U#T]F#0A>A@)66RYINN@V+4)5%IJOC"I^9QP!%IJ_J34[-4Q#8L&C$96 M9-H>L]!L9ZH&*HBX:X,FI S;SKR.9[/8\DW* U_8HLZ#F"'5IJ:JGY@J3F!B7DRDWB.;T;"MLV$A9[O6?#O4#GHD4NTU-124TO- MEM4;:*GY;&%-_.\)2LZ#+T%(;<\EMFFS*#&!JL!#IYYCVK;ED# B'GCI"(@0 M:JFII::6FMM;HZ"EYD]+S7>5U$QLVTX\.S1=ET4F27R0FE%$P?848>+3V+.C M (Q-T@E\[:)O8['"$U1ZM6@3WXU8-A3&KX,LSW\SDG$V+.L4LM'#ZA.>L#+N MV8YQ)5\L+KA=Q_G+YFJ;;M^S[=?2CU"R,:N*C\N:(,6'?P,7:FU\+VW\NEF: MD5A$[AV6I_\O#YI%*W0T&(!MP/3)2$6K=B)&5'+,045<+1N M9-LQZ!.[$SC6@D;YK?W\U3ZAU$YELIF.G)T*A=U'Z[ M/";$Y&[@F82(R*0\BLPPCL$^=P2/".9@.\19C(JU47)JX;D!2_S6YE-MES]A M]^Z+L-(?H<:GTC5:H3RV0FD4]5@DC.+8<)QZUP"BWVP=KOVN!GLW!M Q3S@?BCG)4SBQI M\^28PVQ\F8&,$ 5PR[:.B7%^8DS,-B#Z0)[:(LNJ M3?)/JP:]-5IK;DQKQE;DQW$8B)#XQ(K#2' ,3W#7YY:?6/%]DH5::SZ7UFP& M+.Q Q'$B'#/Q9%D*J,TH]$.3QHZ'@0S;L6*)0A4LABRTVMQT0.)N@=U[!21: MM(E'XG(,(D"V7JF!M<,,7NQ&?M#:0+A^_LM^O@:I;X]+/FLX-.6)-AKN931T MFZYVX,8!%7YD1DD4F<1*'#,BGFVR@(;"8XX34G?O%5G25+;!0M:V*[N6IW?U M\U_V\[56:X_+K+7:HVFUIBM,$C_TB,U,%C(":HU;9F@Y'A!.[%FQ&_J>(_9> MN8&KU5KK'.'='J""93E&+))L+(Q4X9-,Z(\6CTO1SW^1SW\V#EY;K%1\63QM M+F7QPJK2'Q/^ZL[[N@-6VD8Z;NL:S#?C;'@(ZTE'4]C0XPI_ZD^I ]1UIZ@! MNNDH&Z>3ZW>P]K'()PEG\,UWN 2'<.F)QY@IFVXPF3",;M]0O.EU"GHYV_3 M\[5!I VBW3"('J'S1!M$NV00-2-G%J',X9YE.J$?F<2W+#.F26B&5F@%0>C2 MV+&PB,1VGSAVIBVBVR-O_YQ0>(VR#P+^F-]QJ04B6/&0CB_245GX)U^OE4T? MSLJF#_LWH^CZV$2+37B7A>^]^BAR0<>L+TM7=2Z, -E"(L L<=-7E[TA?C,I2,'Y24LV_< MCP3DI?'XGZ]6_DS*XG3$@:!_M\-9J1(M"LWVM+^I\SCM"[!78.NOX-T-*3J- MRW'V/>7PD'R2L6^@ZG*!KL80MU!Q5K&=Y>EQ^(N!@.+S>.+&K_ %6")36"// M?_M]Y2[.;5KQST(Y^6H;U>)F?R /BTXG6?D3I:WD)X6&@ZTW:IP;[KN=OU8K#?3=<=P;M6W&P'Y&'_G;G5APZ M:QCD9U;L67Q+5O]1 :<>/PBX@=40[[%+JIA 6V^]LUO< M\C:EK9:[/7RMS??!W M5N9;W64['V9ZCGK)DQ7%/&WK*7FV WR,L3Z;.,@VM@OJ$PG?3H6?R+;'3:X;C?J\;^>79T?O7;@ M?K"N,^?LYN.WWLTWK^>\ML].S\C99_C\J/OC?-CUYNOQ>U___-8]Q;5WG=[7 M\Z^]MQ_UWS__W+6Z-_ >-X.DFUK7LCGQQ+KZ0FR:!'XD3)SD M9Q(W24P:!X[)B&M;GNT0805[KP+/?X81%$_#/:V3..UJ/FS/OK1I*>7A/"5Q M:V6JE>F]E&D4!JZ@5DB(%Q.;D) &46#YB%GOAI'G:66Z$65J5DDL>\E21PGW-I[Y1!;*U.M3+4RUZ MUK./H6>=0L_>=.%^7Y(XC*(@!#5KQP'H6@&Z%C2LZ481LVC"PR#R<,BL'3S# MD%FM;5]VC%,KDX<")^R,/GD$##BM3S:B3ZZ^$ ;ZW^>>F40V-4E$B!F&46*Z M 75\Q_4]5T3@MW5L/]H>7:+5R=:J$PVQ]:2>2=OGMF,JQ@HCS_%"2FCLQ!&) M8NH'Q(T]1@/GWJ#O6E\\AKX@E;X(N1>Z<03Z(K:Y26(_,:.(!*;#P]!FC)+ M"?=>^>Z.)LW: E UTR]U+UVQ2^,D5A#38VU#6^EAJ\.)6FOOGM:.&(]L/Z!^ MF-B$N7$8TI"Q!)1W[ D_$%IK;T1K_^@>5EC#4Q['3K#WRM[5_%P;]78K$G2;$2UM6LL.I.BT3MT]G?H(X\]T4/5YU6WO MI%"W-P?D^,,7+"[UHABK2D5@DH!99L23Q&0^"X. @SKV(TS3.:%VEG=5Z;9' MG>@\W8O/TSW": *M4I[9@ZNG*5D1#UC@4S-P'&$2%E$S=-W8C$0H L\F@GL^ M9NHL?W%V0&O5R79FZFYI&2R L7$4P*8Q 79R*0UJFALWT:95MF@I>L/TAND- MTQNF-TQOF-ZPI]VP):.C"FN\-QV"'8J/^7TL!G+F33V"Y!]_%-M'G/W 4X];]DL:@\D^G8@_"I_ :MYB;W&,S0RD MR)PUW[;!-4XTNW/-/_OCVDFZ$&8\%O2;21-XJ]_IX(I>YWO_G'GYN=UXY]OP'_.QJ?PV#\' M&?NVG4&+@?C7Q^OSS_PR=HA_=G,!]_T&O_MTU3W]X/2.#F[./[\9GI^R'V(7)&+U%>C*=BB039WD%8 M%3$;DSZ=&(+BP#K&8($XDBS)QH9M_<. _QEF8X&CY;+IV)@@+)$Q%M\%;&%N M7 GXBN;%0*W\A8^[\JU]X/,'CF99_Z6_[P1DJT;-R"4'=__Q$I.IQ?C;&QBW M$/T4U->M"UZ+J_8SE1OS.V:('9LO,960U=NI#JD-,Z-@SNT4[0E,;HU[1BK2A%&TV$L MQO/XB"X1CBV"V'/ +R0T\B/;MD)N$]=S YO?TC7LS/OS,TX\.N_OQ1@_H!?" MKNH.3&<[?7A5>##\Y!V?GKF]X<>OO:->OWOSX?KLE^9<_ZV:W6=US>]H[_Z9\Z;KSWG[.KLI@?_^U>_=WIV MW?M\GG2OBZ(#;/AB$;4281'3L:W ),2G9ACZQ/1M087GVZ[K.PCLM+,U!QMA MI7^TK8!-B\=G%H^"<)2&@1?Y'J%4T(2SB-@6"9D;T,2ZI5A+B\>G%(\WE7CT M0LZIY<1FF$A 'DK-B,0NQDJYB&+7(33>>[5-;36[(AZWW Y_@BQJBPZPLL/_ M?"H[?''_=JKS^7ZFMAU;,;5BU[)B0CR/AI8364G@V#P13D2UJ=T"4QO6]=K[ M$G$:QUZ4F-0-0Y,$8'/')!!F(&*?Q@P.T,*FD>< XWD8![55XCS,HGZ.6A8M MZ!Y-T'EA1!EEK@UF%XD$#SW7]A,[Y)8+=ICOWFXT-QL<;L0XXS3O:_'W5.*O M=]@PI7W+3P)BNV9,'=6?-IE?:.CZ ML!VAZ]W6)$G$XS"Q ^$+07R'QQ["(7*/!R3Q V%IDWF#.J,TF7_@,WH77YR( MV]2EMDEHY)A$V)$9DM@W$Q)X8 Q$E-LV&,U>ZX(P;9P-]CS.0C T#.#Q/4L M4%D1<<5SFLXO3PINN>G\0J+-1SK:_ Q!&.';P@YB-[)\0B(1\\#BOHA=VX[\ M0&'X:M-Y(YKC9,%TIM0+& \3TV/$-PFAQ*2>FYB1Q3AU&8\BGX#I_!SYRY<7 M;]'QYBT7=;%'&/,=%EF"DM@.*161!:9RXE&+./YMB#I:U#VEJ)LWDBGSXB") M+3B*,#") W\+DR0T0SP:W[%MWP[W7KG/$25X>:+NN>WCV0[L%]Q=6'R9&V/! M1/I=]@+V*3=B.J @;')L,X3+)GUA7,*:,IX;EV.1"WF_N[0@+O8"+.ZH;D%\ ML2V(6] RI3L [R[K:X,$I<9!*5P^5L*E$"C/H!*V@+)T[]4CD5W596KHMCQ- M&C.D<02B!UVS@CKF>O1TG<'.MLCM>FPA8$Y,'-=BG!%J13'W'#M,;&X[MO#Y M;5,U7V)LX>N?7WO##T[O,USWM7O5N_F8=K_^"<_J#;MO/_SH.A_LGO.)P!J< M^=A"]VW7.3\ZLQ$+IWMSX/;>OKONXGLY$NSWYOSHDWM^VH?W/4\J4%ZL6K,] M.V2!$&;"F&L2W_+-R/4]TPDBQV=N0FGH[;TB0>NR;ML+\:ZK$EZT8.2N1PES MA2!NA-A286!;X.DZCN7'B>O.3\:P'2T8GT\PUN6\D6W'0CB.&=B.;Q)J@V!, M;,>,;9ZX<#"^Y<5[K]Q0"\8G$HRZ3D#7";1:CD>1H'X2"2=Q2>@&84#LV"+< M\Q.;>H+<;N#JNK-GE>YUK]I-]_23]R4,(N;Z$36)8X4F(2XS8]\-3.9[ 74X M PE/=<.&+B#0,G"E#'1$% 4T)B)""!Q/Q'X4$4]0X)_$#UQ/V[(;E':U+6L1 MCPDKMLS$%@FB/# S9(EEL@!,2Q)Z$6-\[Y5M:2'W\Q;K>NST)CIY4S(TT&]; MD\F7#UX&B;TBM[\<_OMV*.59Z&60'*$EF,5\VR,.Y[$?XHA? >86=4/;WWOU M_QF-+-X5S8W!$DCZXEPVL8/1XV[@[1LBB(LA4&Y^ MFH&JDZXYG0C^@A':?_0^? %3@=F$@/D=V*">XM U0\*XZ='(RP@E(1%%S4?'$2H>?CM"^'>5I/BF_4X5/H&", M7],1?))-89$\_^W.8.RZ[NDEUSUMO QRLQU%3U]L<[<*A!:,'-;E91I@7I>_ MZ1HGC46O"6)WL>BW OL';KE]6AN9S"VR#(.X#D?OW6''PC<]ZML4QZ^)F=.USW^_,DZ/SW[ M*?SMQ^NSX\N+&QI[AW]E9Z=]K^>W3#O_/3CH/?U-3D_ MZL,]/\Z.VK!"*["MA)MAA%G&(" FY8%OAH2SR T%\/V8^G$0,(\)0CR;6GY(N45!77 2J8%*:\ HM%YHEUYHS!CQ M+8^XW#9M"5Q![1 KJ2/3=I+ $PZ-$B?:>^5TPFN'E.&@/#:5L@X/V MNONZ)6V-.U/7N$01L40XQ!=AY-L$%%*4Q'X0<$Z\A/N!=QL G%9$+5)$#;3E MJR^)'1-BNX$I"+<09A1\$X&MCZ%K6Q$/0VY;Z*!$0?OF7;5=,OV$@[)SG8T[ M+!OMD$7"=_P@<4.2Q#1TJ9TX"0>VBMR S#:'-1XN**$H" M0?W0B8CKDM 64>C;C/O4B@.'\. V>!&MB-JDB$X:1CJG;A3YB6M:%+01P3^H MYX2FYS,K='T1"YKLO7([)'B.F=TO-%JD&S.W63:Z5L YXW9 THXLZ/0([$( MO<1/XB1R$FVD;Y5LK(UT87EN$+JQ&22"F40DO@D.&#,#SR8L]@@8[#X&,"P] M8%4;Z;HH<5VA?C:A@ZK=ZFE=UX<6Y15?%D]SX7N>3;$A:V757KOV^%&SXH^$ M@72O?=U^2^!!S:S:$FBG)="$;;0".XE\&INQBUZ2Q3PSM(/$Y#8GQ(FYYWKN MWBN;=/S@.5 =-L>=[1-[[);:P$Y!TX RQB%#F,Q'Y M<1PK7&'MW&Z-2JN=6^*%-"%A;#H^BTT2N,*,;-LS GK"SX=B./D]6B23JX_IUP!:-X5 M@#,2]660H1F&]&-024 (0E,!T"#L5CU=2T/,:(B91Q^MM4VP+1O1RG_/<^@= M%+2&<&GWJ*8M!*;8M@-^P,"E1Z\>?6BQ4^L<]T_@J(/\.9G0B<@WYH0UMZZM MTOHY-N>G2\)K1W\.SK]^ X_VW8_SM^^N>D>?G/.C;S]Z;S_ /;LR M--<]&@QD%^9,71U+;"_Q8Y,G+#1)X(1FC.$U8ELDCBD.K@CV7OD=?ZMF?=V' MU=HGO72J2.ND%C+*-NLDZG@^22PN\']CDL0L"FP6,NK20'BV@SII<1"%UDG/ MJ)/JE _U+!:)4)AQ%"0F8;YG4D(B,R16)(C-W-"-423>:T-%%"J^G&/I@Q-]F&;]*!X-3?.F7FA7I?F76\1%S83VD M>WIA=P^^N)1RQF)B1D$0F$1XCAG946@RQ_9%F-"(VB\F0W)1T,AN)4.B:#^P M@H?E0IQPGT3ATV0LW-!_BHQ%N!]%]\#$URO6*]8K?I051_N@GQ\G5?BR\X"M M6DNI[+8B;69[.F_V=(G1=A:#:6K<"6I%)1K0\ZF9NT 3;R%+N;(%I[GGX+O>R[V)@ M_)EFD[X8TTLQA;?=.O[1M/%TO>5;X@'I$]>Z5.M2K4NU+M6ZM(VTL:A+VU2@ MW?[Z[#*/K4NS=1F>+L/;KMJ@U@F3>Y3AA81PFXN(Q+%'',NA@1]S-W"$&_@) M3[Q'* TO1=MNE-\-/UC=TPNK=W3AGG\=],^_?B#=FUYZ_O7CM][IO],SY]U- M[_1-VKOY^&V^_.[\Z,./XZ,/UO$1'QY_?C.$>]QTG;^&O;?>W: MW<_OW-Y;67YW793?>=V;=S^^Q%X2)@D-3)M:U"21[YN446+:$?%M$5EA'%,< MSD/\+0)=V+T2/*V/M#[:-*-LLSXBQ!6$A6'"K(0X/(DM-X[=T+/"@,?,IJOU MD58ZCZ%TK(;2L;]09A'J1*$96G9D$NX3,XY#WPQ]&GI>XL:>9^^]"H+GF >G M58Y6.3\!WZ2USA-@8NV0XF$TT;SCP--_Q]_%,LGSG[@J3LN^R6-@16F$_%'0?Q6\Q9+ M@(-F2I];#A7DUBWRB@4:?^)[21T@8CN)8SIWO_7-FS^8.86%O5R-OS8%S;7R/ M@^5[W,LFPK#)OO'$4&&'8\'3R=]9GK])1W3$4CIX-\HG8WC<:-(2=+ ?H$^M MOYWSZ[//S.\-/W[M??YT<_;Y[*IWVO\*.K7?.QH,ST[[@_-3T.^G'ZZ[1P=. M[^O%=_[VWX3_ZZ_!N3/X'G_-G/.W7?O\M >Z_< ^?MNUSM^^MHX_G_>/W_Y[ MT#ME\)QW5]VC,T?:$C_8(:%Q0$@D..4DBOR8.K;O@46V@"=V@#!; MLM<*C#!#G8V!AX-=5_.*9@Y/KJETU''=^O2GQJ&K7N=--JX)3>3'HX+81A9L Z=I ,N30R1ZY"1<)YS\#2;<2 MSW#C4G&%YCD8&71$!]=YFAM98DSZPJ S+,,4RPPDF1GI8X#7S6Z2WQXXNY^: M[1-X^\&=Q]G<$U4K\M<,#;KEMVN^=/:]=2MNQVB?]N)U/4=/6ZO6LE5X7?[/ MM?DE\C_/ HFTD<,\[8^%,(;PE'YN"!"/W'@;_+ ,V+9U+M^GN2-. M;(\ZP@HLCU@L"<'Y"F([!B>,^(PX18TM.&'K$\A-3PQ#"P@$_G<&;U+[7X<* M^+\MP?R?\,#>I/';3W[W,\+UPW-.SWZ MU]L/Q6_^#<_R1N>GV8^SKP<6O%._]_7- -8#7ANL\^@>"V+$OW&COE4NV M)Y3?>@FU*E+_R'I]TNX=8>5WH,BCZMSV#=BG'&:]^=UXI(8Y*J MI62-8^ ,K1WOIQVOY[5CZ/I>Z'N!20,6F"3P$S/V VX2UX_MB(C8\1T4Z*%C M.W\\@XI\&-.U580_DR+\"6=M&Q0AR(,,WB45,LA,A_"326Y\&>F]=\Q]TX[@TQ^I M#O0^MI'](@.]@C(7_AM;U$](Z$0A]V,OMID?1L)RW#5@"CK0^SSJVYI7WU8L M8BODW P#8ILDBD,SI@(4.2?$H:YPPY ]4Z#WL1FLK1+J_CJ]J!]R-UAK?/^% M/;.#^'A+:5#6K>U*V[[*!XT.GAL&^_RC@=_3?'(T%;K^(EE)HNZ&&0ZW9B1C8/S,A)$%*"8Q_OBZJ_/.V+HIP2O0)) M^[D1"_BWD4^'\#IPL]R@C*F0V;@B+B.^-N@%_HC1B;C(QM=ZEO"3U%[J&:QZ MQ7K%.[3B[9XEW/*J6W>3HTRVK@AWI\?DOJ1+M9QX\1./H@W(#]QBFY;RXH;(;6*7?=N,--MHMM%LZXRT6)A>89S3.:9^ZE>D?];[W3"_ML>';3 M.SVX@O7].#\][Y]_?3=?KVGU;@;]KO/INOOU_&OWZP?K^"U"IOT[/4>$W:.# MJ_.O;P:]X9MA=Q#:=;WFQ4WOIOO%9S8<34!-+Z"V24*/F2%)+#-BE DG#&/' M$WNO N*UKM7BA8*_._?23#O5'[:=I.4S;"%LGLMK'F/< X(_L,. B M2N*0$%]$H>]'+/(H"47(@^B.XS'OT:^I+8?'LQS.9BT'*TY"FQ*3VC8S";6X M&866;29N)'SNL##B<7L;-;7UH*T';3UHZT%;#YO>T?L-UPY89%O4BRWBQS@U M@46N2Y@(+9=9EHXPM,).^#9C)\1,^& "S("&TB/*F)\/JZF'Q.NC?LYHM(/,(< M$IE1*"R3N)YOAFZ(\$^$6#3D+(K9WJL@U%F(EA@)SYP?;]'&M&HMRVMPM +7 M"KQ=._HL"OS.(WKOI-MW#1#J&76[/:/;/2L)J$,MTTVB&!&AJ!GY3F0&/DDL MX4NT*-#M'2^*M'9OAW;7(0 = M 6A+8@6K2C[;(@RE+BVH!X.\[R7-L,#[89 MR(S-0!-!0Q%:)A.1:Q+*?3,2GHU3AFUB6W8@?&OO5=AQPVV:&+1S-L,M/0CM MQ/G0EV[\4DTW^E)--_I233?ZTC9?N@3-^!Y MGNKX8SE'QJQ=?67&NE2KUBO M>(=6K!%;-6+K'0(9SX&I<"28&,82Q =!6^U(@[9N[:5:5&C05@W:NJ6[V*:E M:#2C9]AE#=JJV4:SC09MUZM"[U MX[ +]SJ[.?@!Z\/!Y#:LS>N][7WMG;*KK@._<]X,>C>O%^M2WYY=GQ_]];5[ M]-HZ__S..C_Z='5\^LTZ<[IV[^;@YOR4P5K@]_]N@F5^@^_.O@@XB<1Q7#-Q M$]LD-G%,RI+ =$,GL0-*2(!@F?96M:FV79FTJQ%5ZP^M/UJA/\)8V"3Q?,N/ M&4E1AK_=$._7'6T!\77_R0T] -0].S0V(2[G(S#'EHNDG( MB15SRZ-D[U6@M8?6'EI[M)W8MUE[!(R'CN-9%@\3XH+XH4& :&Q^['HD"1.M M/5JA/;Y5VN/XZ.!+"&0,[J)G6K8K3!):Q(RIG9APCAX%8X#:GKWWRM?.AU8? M6GVTGMBW67TD/G<"D0CB)J@^HC!BU!&Q(V@417[(M/IHA?JH0-:\WNG%CR\N MY3$<5V#ZB4]-$B2V2=V FXD/9^>'5L2<>.^5XVG_0RL0K4!:3^PO4X%HD*^6 MZ!:[H5NL+[%MN0$3D0F'YYC$(\2, L\RJ6-',2>6XPL; 3M"R]?:16L7K5W: M3NQ:NV@ J&?5)Q4 5._F@_V%V\+B)/#,P+(2DUC",^.$NV:8>*%G$>J%OKOW M*NI8OJOUR08AGOIJ<1XL=G';$OF?Y^IGV\FE-&CI5@A$O6%ZP_2&Z0W3&Z8W M3(->Z4LU6)J^5-.-OK3EEVJZT9<^F&YFP1F+2%!O.A3CE*E_8V0P'4VI# T] M'GRCBNN)V$[BV(V)8#YQ"(VL*/ C8N%DVI@[X1?;B]R]5TW4QS7WO,.7]VQ) MG8T#W3E\= M ET21+,Q=VY&1XEXV$8;M[1O_9^8(9N.R+!+4%DX8V!$CC+)0 M,"]R?)N$(;6)97\YDL#\MF6;-4+_;-SU9!KGXC]3.+/7W^&/_!1N_N<@8]\V M'6@]_793!EK//[_[G5UUOU[ M>RJ>_.-=$_/X?Z?W-[--^?LZ[^_ M=;]^^\[?_IOP?_TU.'<&W^.O\IG],^?35>_KP?7QT3<+ Z7'IQ<_>L._OO5. MF7L,]^A]AF?^.R1X'UC_3??HW4WOZ/7-%]^A492XGNEQGYC$Y:$9)=PQ.>,B M""(AA"-4J!P80O ##'1[(>U0=@J!,P%KFN2;ES'*A.Z=:'/H11-\<:\L&_IQ-PXMA=F.6 ]5/Q76 " MVL@2 QXJ\@F(-@/6+,;&^P&=8"+".!6L/X)E7EP;IV-80@)?(@;(WRD3HUP8 M!Q=CH>ZR*)ZV9>\:T>V9G;(]W*EW(^/@-*&%3M'3>H,:FW9U)N M3[V7-,\SEM()7'J53OK&I"^,7O:=@L.=&X<9%Z^_9X,&F$H^O7SN7?#WO;ML MPUR0 (Y.A>H#@J'ZZ66[C["FTGWC,QS+6!CP]W0R@(.99$6+N#!^N<^ %^:X MML>8PPDGB17AM! 2.D'@,RH8(\6 %^):,_D][Q[YO3_3 2SP$)Z*ZZFS?'F5 MVO.UQK&_>")T(\I<,XQX8(+]$YLQ>T7V5PUW!X(;X&$C MAZ:CM<9#R(E#06.XL>^20 AJB3#Q!+-L?$I8&@^D-![DZ3?.&PB8_0)J -DW$V+(\;5W,X!3$"RWA/KY%V3\5XF+_X$^_^^&);$7 8 MC4SN0@['Q+"G8#MO?*M>:M (5B!MJ.SR@_%\EI!OC^KV]:: M])=9GN*'OX\%Z% 0*P7*N6V!WBW$$G'V T]IOF6_I'&>#:83\4>1$+::MUAB ME\R I+16FRJ[P[7G]K+QY]U=FBBH')K^N$ZK7P AC 7]9M($MN)W.KB" ]_[ MY\R.S1W!PLZN=H 6#)N&'6,[M5U3G%K89M-&'<9JFVW]J_GJU5HR/"#TW(<- M#PCWHW#-UVM_N_[&P;[EW/7'3X#M\R!L*+3I'A7FYSD@D]Z=ONXJ->[LWZ$& M46_FNLWL'O0.WK[NONZ=_L^)=<[Z!V^._C;.#SN';T[+:_Y^/KDT]^G\I+C]Z\_'N 7)XN5/' *H)+0R_B7!L?Q64V!N-J9+P!\U=QJ&V9 M'ZI[-]9UA]7,K@ _N>O>WF];P5:7J[L6= PN(KYEB=2OWJ&$ZZ]W =X=C^]@ M!,;@8.Z]#7CE_[W[33L&A26D@V:XX.3UH;R;B,>PN=>%K L[,AIA_(J7_/=_ MA8YC_3&S OF9_<=O^\;I'0\J:JCVXHF-N#K+L&U)QXR@*%PD?.A1TA-_" M_IT(277%TNS7I4D-GT_'L.-PL>(IQ/IQ@-A&(-T*$EIDG4,\>,25E.C7S'U-X/DLO86WSWZ3@,(SX_*<,)+*PCGZ3# MYHV!TJN[J AO]15N9PXG-4 F^'$)_)?+0X*??*?C5!W9OG&"&[*&!'%G\VG\ M%=Y?AF[2_!N<( @^T+] OI+:)$8Q"@LC 4\Z&Z/DH!-#OIC!*!X ?([,4DJ! M4BK!ZQ1$7=S/$"K #(_B:2*=0E@*+'< O(3^NI%,)].QJ.Y4O!H<-[Q8.KP< M%">?KW^O?>/-JJ7"?7 SQRG0O,"%R%NIU0AX[SMPQ:2?P8T**:EDUGL0",:[ M=QWC':S L ]^+P_N(^QHN9CJ6)/U\MVH1+NZ[9WONB YI5" ]\G&\"^I$U#F MIZ7,+E[Y[F^P=X^U+^JSL;Q2\OBG3R.CE2T.Z"($.14A)7M0H@+"5\]XU_95=P^;AC7/5!&6'$ M&^02;$_!<]-+KIZ&0F\=JV+=^5 8EQGPI5'H#<4N,HS>I]^15 VF&A8,*8ZD M@H8MX)F\6P8,Q<2E?"[^'"Q$O'0,;YB.%6?12V R)EW1 ;W:-\ZR:6$>=93% M $N$!R)/@ 2_QFV\?>EY?5*E_F@>%AU=J\-J[':QPON>X8.SNI:U=P?'?>,F M]/HTU)^E*CX&@L,=WKTLDGK1STK^9I*O"FY4.E$ ,UZ.P#-I(>1"VE.%98(Z#XI$G ?ZUNBE06WRB>@)2? +, U M.=R022J5CS 9.!$3Y;$HY08J%==VI7(E>$:*!^"F(%/J8"D\44H)4$@E0\=" MC,K\;C;-@?1!"\+/Y')3-*R4[81<+9.Q(S!E+:J#K\2WADTO8@PF8R3*Y]B.5G_$I*X0@/.H2^'$D MQGD_O50VMMS:(LX.N[?#Y(3">CF1)ZL.LJ2$(>5*0$Y01\$-TZKG.2^?W]!+I3VP M-7E1W-EMS8LJJE!JJ. D<$V!H($VI(M3IT,NBU( J4V!H<#B!P:K18CD(" < M,4DQW:$(8T+1D#B&KY; B P^S/RP$YYA>IAPD#ACQ2LR LW&A/+D9B52*ST$:C_%EX"W*39"^ M"! HVI)V\,>L1S@IK/"\=/EFEY--)_ O\ %&TAJIA1<\$DR/5'X*5@5/61UN M&(%@,> =BQC$PD*0\V)1'0YN@KP_KK]0%/(%)OBJ:# W5RQ&_8I)E>8 #T>8 M(L$M1IZ#R^#)^\8[^(X7X1&,\<#EL^\&R[H"0='1+-IB%I4L:9R!"DV9T8<'FY,^O/U%'X[>R(%^A8SR( 4.:X1_%Z&!757-*"3!+!MG%#8(U:S:-=SVVAX""?)=R0_0OXQ.Z. : M3PR>/L48QU121+'OL+987*#I!\(5Y!Y:6E-Y"RYR8 %)/!C"RW*,-.03E <8 MP_LNBN/#^@BFF%X>),HIVI PRJB2MB;<:%39L]DE!E!NU"7R -52?-=Q3Y07,\L'",=EZIT3:UVD&E^3=JHJE M,-%*ABO[@& MO-0X&X#E-?,Q_"H=J3K/E.7RW[,6\;S2DAEJ96-5%W9FQ'33=BZT9"'["QHT M5A'Y@DW>47]M&G2-NS>^G7DG4!WX=>64+JP*WVOFHL;/E>M?KQ!V#C1K:E:L MAEYWT^BMK-I\LM*%0.4'KD*J]JV0YD6*3ZK",A(!!LC.*K+/>,;I1+D$,_%2 MKL506\30,CU64+6*1A?1S\L^!9G!Q%3N IK.XV]B4D;4QV(H"S)H%72K"A>2 MC$USQ615\+K\69$-5G:X"H!=#+(86&8E3^B:Y?4UR\[JFN5VE!]O@>":I?5" M3LM 5)F';NKLF;Q-CJE!5>B ;),N>"^5&;A"=E>RBTS&0\#2 :?\(5V3S0J^ M[6L-W $ZK(ZB+)E4>>'J+-Y+JC,.WAJ_SAU3L\9R&_LZ=^GPRHA8=0I8IP2, M5M0!5-D\+>Q;(^R7^.I5D5@J!AR#-/TI/-SH"SJ8]!D=SS?B[8Y;=Y ;XCO6 M"M66HL+'OC6;TX8QO5U1C2\IFBU3/?[EBEG)9D;539 MC*HNDA&"6F%.RY@:V+"@WN9*D>1"T)NIX9. M4C*F%V,JZV9EK\#%.&73 >Q6&8O!!\[$ 3N+=5#+MZ^Y.Y5;5OQJ/LU?9U&- M7_=Z;T_V?E/&:S: 6XPIUA;TL?X8_ G5T_'KWOO#C__\#_P!E^(3L$8@G8RS M1ER+I_1B!!9+RF8RMEC'2,<8!%.EDD7R UZQ[$-8:=$4IC)N4R%HX6-9S@4> MYD>,LO=;76N5I&.90,&=*NPNE-:*-DK_=TYJ M@Y0^)? /$CI_&$>] UC5!>S0/83!+3@ZK>T_NC465+-V+"ZF91X5.5RKMU;Z M,I6LH%@5G&.=5*HA3V;1 +Z4D+UW@1FJU*'6L0IV5B%'B4'W:]&!4A$BQ MW #[Q.">(/R&QA6MDX>7F2R[EBE#02=E4NRR+T;7 V#'; 2:A*+\^=]/P,F8 M@D6M##>'#V10%E.8L'#9;E!'R'F:RWY?_(6*3,E4I>+\HLMAA >?JR_RO%@& MG-$(9 ]+>;$(.L!>(Z%DTN1ZG.7R7^CB%WE/*Z;;SNVW' M83M;MZ=EWUFA(-;LCOB!D6C978)M=9=E!BV+91\-O)#X 3H\QRJ34JLT^$'5 MZ#7+?\L]ENOX"XP:M8P"@Z<\6SJ;DZC4U#T.DRK>J,ZI(Q\=V%;84=MS.18, MV%XE"^)3%#G(Y6E ME$"K- MJM:OBR:5BKX;)1]RS76]6;E496-TT?3H+)Y<86&L6O.* M<$GA@Y_2;X+35<[[23\%<^U?TGEX"S87+O=4+ET&'-$VZ:#AVHQH$1:[FI:6 M8]%Y!KLHJ+2Q>6FS->U@:<4WQ0<8[%F>#241PB9>B/HO"VT':ZDEB_G-& 6YS,='=^_[51B[9E^U]>9V WA*_X^D2T+(?.C.*/L\T MKP [RW:$JKDB+[UVF:43_-Y)Z1;E!6^)CJF7DH2^) ZF&LY7A[^*?ZX.>C5^ M^L2!K\[:R-?G>C<>&.OJO3U1S>!%P HO4K1:QJP*Y+U5@:N%2JT5(:SME;'W M53!+%>SVOO[=FA61"E5D4$50K\"M1+\$83E3L4*(5; <"K.A;+E53:A"DOX_ MI0&LZ'C.:>?CZ47#LY'<4.!J*/]:J[C-A]:698[@S% O*1%>'_SRT-K<*:N3 ME:@(12!:Y9T*#ZSXGBI@"%B$3$T5!,5G?&+TU\=%);_LBI5X)U@Y<#5'1_!O M7#(7EX/L6A6B+'DK;,53SS'R2\&P,Q+S EAY#%N!\E+!$50BN B98^.S,#&& M+EEG[>O7!;(8N,%L XAH+)N=T#@=P%\5DLEP.LK 6P6O<7+],W'%_O6E&,_$ MH(8872P\Z7^]/ZA<^5^E )"@'V-UJG#W]__[::MBD'0TRJ82LH26%L],\6T1 M*$.MMYAKN26(U5D=DL0HL"+];*PZ4#B\$98#RQ:L:@>6A'/N%*;$D-QT(,." MX=Q[EN3=![K@66E2*6(ID'N*7E3Y&>@I4[';^SZ&.VPJ?V4BY/M A8*4420W MHW[+ G6 2HL*;4)5E7^ LA]$'95K1+59YK<6UIE=FBAQJK8?">>#:ZT6@M$\ MF916&>AK X3^%%@<39V9Y2PDT\*UL=)8, K;G\68R"IZ("_I-4@O).1&).T7 M>]\RY@"*?4OAV,HB0X6E-@MG2QL(Y$W,*A0NTV)+X;(5\=4B#UA@8DOH-:#+ M>G,^[9_L&V]*6U27E#ZPI-35):4_O8E'J,<.*L&FTN2->KHW1[4RD5(IG4BI MA#[F0':RIA+63>*E%%47"J,"V5)Q(%J=4E\V'(]*6[WK'54/0*E9LE2).%! M!)82$4L3I1?:!/C#DB0I)0NI$ZM6">P/I#D0L_3]4"*NE4:%*?QI)!7@R409 MKT^5P.D@>MV 8^%'QQAGUW"?:S,&!TU6G("0-Y4N4Z!,A5HKUQCI8H.L$)>R? 21ZM8?/E&*NV 2"=\1C@J3#&678RD4_^+VQ"VLO1" MHK)7FZM4V'\4I!,^"K=TW_AT63\*SZK>O;7;37/TTKELAX?57V)80-I;91Z@ M )9;F7E:NV&=FL 4@%;Q/7Y0D'_QB3Q74/02/5.26*>ZBVE9,YJV >:B@G\E M&Q4;! P$#UW8H5WU4Y?9>[G W-P$NWSOF.@ZN'/.\G(ZSJ=4U>!4H$LR_+Z& MS)"$ZN*/+W- -OJ\ZW\/8'NVB#-^T!P MAV4$\%"&48! NH@Y S*D-YV,56]KG>Q!C)KE.?9;2&N.OI?GX1^-9E=EZQL1 MHG5I\RHBT,A[H[Z_G2O+$@"SDL3K\OY8"OX8:?C=E9J?--1'>^-H<_7"!4]+ MN^DRO1327T9+60JJ]5&U3@/S1[;++RVBD1%6A6>L$ !5G@G_/J3?1-,9GH./ MDS&SZ7;L++6]D0[-6/(8 M%SD;IY5+,E-Z4I::@!Q00M.)(" MAB$;[95N24\-#\C .RZG#AQ6TQ .F_,'WE1 \"<+F//\5IAG8SF>[XNJF/JD ML*$_5LC[A\?_?G=DVM'6O_GZ7.4\)+TDS3E4^L4X18E\76X2B 78B&'*E!VY M\#%H9IG9P2R%%#)-=-7+:8PI#Q4<4C8J:%/9 ,+Z6"V*@Q6HW#KY6KCV8; SHR?)G6,E&M7J*YP_<70L$# MCD=-3NT4.06U4Q/0]J/2,L.W3">X[3(C)$-=Q:.K198T5R]ID(&LQI.XD&88 M+*K";Y7=92!+JT_*HID'B0N__>+B5!555>ZU@JQI.HDE%%L#35NA)LX:QUBB M/;ANM!]4R&YU-4Z#S6I(?R6O%(U+"V2T! ].IB.SBR+#7"VI"&L7B/>8U@:+ M;#R]K"RQ!HN5L',SOZV6AB2H9(Z\JLPTUR^VZJ7VC3?*C!A*5/^Y'Y>=:?50 MCN7UU[_N??QO.KS\XVCOM[J*K+!BZSV.1?E^*&QGQ;QJ'A9;K53\;RM* VI;&9)N*?4_Z8(<;0UA@/R_F""GS4\T/ M0A-TN=!4JU86S !QEU=O3!7S1A\*\9E^R $O<""_6/M^%1VG^5P4N92!Q;8V M-E5(:JMS^/40"$0J3C.>5S-YIZ.2TE$C(%PI[*W$9S6?%2PB4KMKW@ MK#K2AOS>T)JU+BAP2*1SFM,!ZMVYC2P/1DTX&I4UC3-<>S>AZ3@RWK%=5M:[ M4658=&847M)06_5^7F"@;R21R08E2ZK/2LU;G8-JQ1B9=>E'#?^!^KG\07FJ M'6F#R>$I9:WH$$?5C#$8F.73<=6__5'P*W0<#V4US2$=I*"&1RE%3[+,\TAL M.)HWQ S^ MK)S01SE07BXJ"U6)GUIB%;& 0B=,T*!7L-S5Q&^##F$;)GG9\3]">VY0!1%0 M2J+'K#2GZAMO:IX97P0>#%O!.Y7%5K,2:BQ5VX\%&W(T5Q$Z*4OD5 Y; NVB M8:CB\GPL(8\YWZ-!"J M?,6I@?=3;VL;+IR:HZ5G!.13?,B[*!*2599 M-QV0T3* *H>&%G/3]HWFP+2?#G?=>^MOB8RU;J#5RM+]%;&QC[74.:ZESJ[/ MN_I8.A)5%E$4]2PIK'$O9++_87L/M6%>( [[HM.@H5P]4 MNK6PJ@OS6;JC2G5D28*0-?%U.:=%_> VSVC?>#]WR_5O4;\^/.D79S^J7@:W MP]NWZ]V0[QO.UB"M?-TJ/;R6"/XKD?]Y1I1'B52:HO,&6W.G-6Z84-$EK:=^ M%C9)823)LXW'5/K:949J9W,T'V\A_8I12EJV[LC)2.E1@XT5I0=W9NQ9HI*Y MQ4*XR#M5F&]J ,1$@_%M'(RO+JPL?>RJ"E24QU;DD>M#FT\W=Y9*:R &(#8Y M2SLIYIUC"V5]^UHP2^)866;T @)KNRJI2A4,:\IET[*<=B1WQ+/^L5X:J1ER MM-@TXOVC%#XYMF2HG5-#*1LV1=7L5=H3P_2'"L' !TDZJ=8@"^X:04;9[YS, MF-9E1 EGQ^0*,D]F0 :%1YZ.N8F$#[]+?U03<,9J^I/\43/454WL5'DA# '( MYFD9/N[,QYI4(@XC87U91(=WDQ9-_0Z8GZ %W%T9]FY473>GRPU!&2"Y-0+O M*WR5V4GLR_UPI'Z97:C2\3'-TQV>R;E2WQ8AWCE]VZA.E]$,-_A'1]G4]ETU M\2SMWT?CUK-8A9K((L$A\SQCJ3RJ M]ODB,15#*JV7UT6(^CZ"[DF@YAM\89 M$/&O>X?=PP(+$8@&VY6R\745].[(K"NL%,F784RL4\W70(CE :9E9(-;\8.= M%8'&"<[&Q'8+!2JII =M-,-\%RL(J:%O)"&5=!2UA(RPG&NJYFY+:T'E26=) M:^;8YP/J)6TTK :EG5\0??3@O0=9GM]BFF,A,ECB04T0,W//J3$J[X.5:M:^ M[:(&D))9%2;P%$.:H'GZ",^K1I05U"&3MW-W:#B\MSW*BM8]:MU[8<\)AI2; MI#:ZVW[(GO%Y:Z LR*@M3SE9NJ1M*>44+Q0$60^;F\G6/7%D8E=)^1 +)E5Q M#?P%!WU]IP.9,)D-KKC[SDQP)0SVW:9A#<Q4). M4Z[+A505FDSQS1IE!;YEB2. K]M9?A0RPUY;@?"5;"6?EB,@L]%%UIC#*.^- M];C8D\?H)893%;. _3@=%PQ3IB_+"XHI;RI;)D$')?Y KI *)<2R[10[L;/L M(%OO1V(%S"D%*4?+@C(X6,+< 3EB[KKH$Z*CH%L81Y>#M31L7R<+P$W$Y60^M?8)B M&W;E $Z&E]#:R]9]!8\414J'C^E5I98*]L?CX2*>[RK*&FMP+25+I"3 '*J\ M3W[S!$=X B0.'MZ;#4MLMO4NG6>ZJ0J:R_J$:K%KTKZHT=N6K=C"-779: MY!U%C*/,D/N 6\Y%0K&\2LJ;7';V+I?96%-?Y<2EVZ\H1?!UQX\"1:C+U5!) M<)7KI@'EDL-2:"EP=9L-A6K2DE'X,O*G"U6Q+ ;I.8=\M MA>VU/H6]A=KJ3S!3KPJ$GJS(>9;B=7D<*+Y>@CRZOGB.>CT^$,_&) ML(QS60W;-[E[[/ZAP0J=96HAS32R3.W,@*O(I?+I"[MX&]+@J]#'U(P7Y=B5 M\7LYCP4'L90S6=0\%AG],&<2!,L /E5E?Z>=I[Q8Z[&SFY9;\X5TC,RM3B0R\$0GI(UEF-J>X-J6XJQM^SU2770?NI 7@E": M=]?JL2=.4=M?4PB[IIG8D"MC_[)GQ94X44A-ZLVVR3,=I9:8DNT("I$L%-2EA- 4WCP]WW MVG#F]^W%>7ORO\;[$O7LM,9@/ 77-T\0'^'P#D/H=I5'&J#N9%G&4H^"L>"=8Q MO&^ I9:I_;PL/Z-U7P2P)HYR0@V ATD5@L&R\:H(K;=+(+_;<-YW9MT:^'<1 M\K? 1"PPSXMR:8DM 2?^/_G\T*,BYH >#X[]>@$QW,]-M,61,;TTP07$^;G@ M%$XOB](6\4.P:1/[G#9@?6MEI[!4*ESX"I !#Q&Q)(L?HW=<9 /EKTK@W@.P MVP;XD2_K:VI<=,G#I8 N<6(T)[:1$U&.XOB8ZBB5@R#!^8LH3M-_G,Q-"2P/ MN89>:0P64'6DPE*="'[<$H:E554\/B+(@:" M,7)OI@[6;0",RI+J A:IK@*%EZ^ Q/,IPS&)R70P,_*BH-Y"M?#&RU>021(Q MN"KJ:[R,FA"!H='JB5B.72 =I1)XI*,FUPR*R]E$!'[&)9U22]H&L6Y2-;S,J9 O:]&.XW* MT5TO@"&V@!_NZJ9)&=F@D-%R?.R9;OL[9P#D':HZ?QQP-,KJSN#R=C%.L&,* MA[:LJIV]135_H.H;V.504%>,V;>UP:"7%_TYF%Y,\PF>O:?C/RV<%'/_6(^B M&1'$PCK+^$,,^\JN]WZI)&:HQ1YW9#@9OMN'X MEBGT!@M6;%DAUHB!;!!5(TP5[J\%4(IIF?GQ;3\6;#,+LE MEK;!YTH=*MP=,FH++J5D8(HQ_I<"IG@R&FY.Q)R2!_/4]5]>^+ M^1P+2#+L!E7S P[>O]LKIPKGS12-#,@H_5:$9'!DVMC >05S>9Z9&$[S)]KH M:Z71IU!%X.1K"L.X=Q74QF-34PK49!:\LC%!;P:OOWGHLC.YF% PFS:8YE)N MRP=44?3=S>DM&T0_&X, 43O?+K];MN0VL$L="\,^EE$^P319B>J@#Z(U3&F7/;7PD%)/JG2?)5)7CIKQ3G6(24 :#HE%R7]\>IWV5<^9Y8_:[L@"7 M/VD^&_"+X^$F@[!7#M?M]F==GCY;(E3)QKNVL"U_P>7I@&(V+%^36RA PF;L MXE$ZF+5M=SJM\':0P6[ YE6GUC&.+]<4D^*GMPZ,WF&%?\PF61%;6 )G)-OL M&UT=<[-H3S*6BDGQ'0HGV=F)7-A3'\(OA7&R?[ O':JA!$WY-LJNI(3!&PMF M_#WA^V#1KVX>47B4'2//!@C86_IVE],QCENH9O#!NB\:(7D)UY/FE].)G!># M 0C\B@UP=E#%LHVXS)KN%?4&C2GHAT?_S_1M+-.M)\#-SV->&'=Q&\"F^#-ABAS,EV*V(^( *[ZHR4-& MI&=C$XOE!_(]P0=&@+BJU*!Q7;,J =EH.JB*@LHG20/@SF]?C!/">:'C].)" MC.NA)>4 HGJOB_>B>7V"\U')L.*X6]YT]7,77K_YHC- ML4;+ZSHC8C'E>^B M#**2S,K'EZMLX#F/L&]GO/@8A3B97 . @1F.7&Y^JYQ1Q7%H#AL[&)0XT2K@B[U M1O(@N+A,DO^L]P!Y_T0BCR^(.%6>#A8\#&&6)5CF$ MT'B#8_>DE3R>7A@'C3XRV'65>G]S=%!%""?2;FYX01+LL(F%E8Z^(]E=E(-P M<7 OQWLWBS!_W3/>]7!F*9YK)8>*J:P%2%QS4!MP&Q-EFU@A4-2$J$*)Q,J/ MNY2 BTPHO K4*W!24XX M$4>\]H EWX*%HZ0./9J(T:R5%,BU>42]'!& JXU M:):Z3#CK-2Y&*1M5.T.GGF/;*8)@UV8,A"K;^4!5FLI3E/*T]&9!E=5U>C7L?6$=2:%>K+8I8QO8[*5:*-E[[1 ?FM_.=,:G(H6* M&R8!%:L=6[O%-,^G0U'6,",:29[&)4:! FB4[C #AI#Q[7MM4JB 'E9[7$5 MJ;VM0;P!Z[74WU",K+C,^#7];6&[Y%2/[SC#NE3#C03$+Z'7A.__-84;R/KG M(KB[]#>.9RU.@Z(7%SA-051B2)5%=?W MK30UQG.4S0@KA"4"K8R;H><.0H2"KL/4*,6)CIAMJ@:,JMI6S@>BO!^' YG( MV NB /)L"BLRU8>RX+M>&3*8\E=V6V&@Z^3G[.8%D!0.@FC M?X[UQZU7R^OL/WY#%[>*L!5<>NO2BC':U0!K>?HX?!P(1F>VVA4AK@LSUO6B MK3[L*IP,5X"T2?-^@6@[16RQ0]D5 M32%5QJF-X4W"Y):O50;&QN!QU72=]; MB7/6.FOX\K-.C],4G!A<*HJS5$-],1MZIH>__/VB^?^YOU.AUP;L=87$3&M714YNON^NF+&;JGTPT,D/;)WH_Q$ MQ2W*""5%9'Y>!Q^5T1?85M@Q)K#EHICZ<4'!;\I,C)[BD &T0]-4Q2R R+^)2?(JK[A<'EZ['TVGLP2"SKFQ:=H>QC$<[=F.V&J> :;\VBE^9; M94BJU,.2&Q9Y[;J+&K<8=L2U# YRLBIYEH,?<66\W 4PU[S%=)(*!L'RX=IQ MCKI\^1WF00N6P0O@44F14A5@KPN6A'7@?C[9L 1@KYCG(PW/XF3FHELX,<2X MS-*BY "3"+(\?"YB7R&2E%'].N1>(A'OM(EZ_S;#'19H7;JRO.\A_9C-R,;. M(?)O56M)%3:2&J@ZB_>RC-HX>&O\.G=,Y0^*PMJZ)D8UPE5W*'KAYC06)C/& MJ9B@_-R5\U;)W"TX]+M"JRSODVLTQS64O^;>S3:&717!V\J2*!CN?S2K;0.K M@92L.$C6=,S,F5>OZUA%F%#],Y_@Y7"_*IFG[,Y1'0.264 ,Z*R"/&KJWV5: M^[T-=.T=LTO,2!=$T[=$9(K- &1?"Z,_/ATFV$ MSS*6%=/3AV+2SWB!Z][\:9XEDRL%<721C6&KABK?7<:$._ *=-CTJE3HK%QJ MC@&S"0ZU4QC4++VD95ISYMW! X%5Y> 4R>H1E85M]GT'&FI'"FJ]Y5WETKPK8H\:JI81*ND]\K0 M>/,5;'D?/$REZ2R#H_'"FZ5.G4I8X@BLH*R)F'+]"7C+[<\D101^-; M'B@%_VS99IF&4_!\4ZSI2W,VR&318Q.=!9Y2C/TIL/NR2A+^F-6#*EH&C)!2 M4$Y##VNZLRMQ_@M-.>6*6_YTQK(L>[@Q"RP&A[;#"?JEMVV%#8L M4V8%ZTBZ>AR.D=D<'&M>]098+Q\G@%:2\J<8# MUEE@O+!J_U<9WC*_FTTG935MB4L!GIL\^U++U=+&6VQ$WB?-LKE'Q"BM"H2U^[91]VV'\XIEH419 M%:<:^K#]\18/DJ;2C5.I<2+P#$"L(A+MWLDTSD'FHN1Y_1WEW%ZI2O$: M:01_&M$IE_U(AQD2<5X4(F<#67W(C3?I".0R2EO9L%1BWA5=4_)V<-P?E.D\ MN :1>XFR'@3A&W0I;,O\(,6==!6YF-!TL&9RYP[4+*RJN7IYY0JHR"JQ8'2\YFST_ZZ#7^2V9+WXJ1P(;^4]G<+]MPWHW8?@<>?]6'IUZ;V16: M$]@]E?*TJ"-XR5PH?-;M23 7$"/XB"DL4C@+51[]7Q[ M?V,4QKSQT\";R0OH_@:02:-13V'X+C.'[HZZ_;[#8;BW08 M3\=YU8ZXOME 9;":-:A+NM/P $H35)KD10ZK;#]SFF.X9SX7BG_OWNIB.TDCMV8 M".83A]#(B@(_(E82>33F3OC%MMP]7?N^:NM76 $?13X=J(+AX\LBX;&S [M/ M9=DL%I])CUGR;M['4C2%KH5YC4)$8[!B6MF6O?K[M3]>_Z6U'_G> W]L[:]9D[7OD34W M7OM;O>1V+#FZ^X^Q6 @X\O_NN7OEA24S@.TI]*75I?^4[#]>]9M+S R/+J1J M<"Y__%'^NY!H^-$=U<.B.3,7!U&WK)X@):(-4JS\0$E$>U$_W:)![JR)9A78 M'5]+1FY499%2 ?/['VWI7D9++(^GWLK3-2[9R@U^:K:Y_YE(9?PS)Z*)Z">( MZ+"/V/H;(Q=]:6OTS$_SX?9HF4UJ[,(_D5'TRXDA'2NC?,%MDQX8^+O#+C\J M,3["!FJ">#J"L*/G)@A]YIL]\U^T!-#44%'#/[0MV2*K[[\8$R))=M7.*VK( M\M\?(H+NMS=/*W2>Y>#TYNC->5F;TTXYO_%+GT+1)/(_#Z*Z< LT30'D6Y;% MS.N;#>U\S]J],)P_"WMNQ/^TBGG8S]=([-;E7D M_.KZO^F@;:M\Z8='<)Q@"RCNXRTMN"N)T7GL;;V+U%W!R*U34U''"Y[ P7S8 MIK65]'Y"53U'6%43^%HGRXL\3>":P'>5P.U.%&@"WVX"?W3+;[><#_VZ2S2\9_"[7B"+6TKC;8\?*9Y MX\&\X76\T-6\H7E#\\9"U#FRW0VF5#13M-8%VOE\BTZWM,P'NEM< )$'MX[8 M#C,9>^M\#%.Q& Z^O( MH4MCG %O@;EPW24YCBS+/VN\QD/-,:B,-+AWJV.B&D"7TO@Q'Z"UBI-X)K MVW%V7D T>6\U>>N,QMK3TZY&NUR-N[G?:M#HUC8.LC7EL^U(;.Q44XCC=$BT M\:S'2^T-V;F(\6[QAM4)'4?SAN8-S1N+P"G^YH%3-&NTUC?:]3Q,J'VC5OE& M3Q N:!&U_9WEY<#X:OI[.](N.Z74?@W X MTC_Q.!OLT6SR8+>"?;J390K.% M9HLF6S@=;Z,@]9HM6NO^['IJZ%<2Z6:7=GE NSUV]!URC\@G1CIBV5#CU3\L MH.WK\O_MCLII\EY'WJXN_M?DO;/D[6X\WZ*I6Z=4GA*[5WL4K?(H=CNGODQ".[$H\>F7DX5[1.ELKJK%@DV5@4Z0EC0G^(7(=K?DK*ZN+LGZAC M\\GCUK'IPNRV1!$U6_Q$'9OM/NX(),T6FBVVGBV(LZ^?20_=0(4]L=RM3$O:[B1Q.W)NY=)>XG -;0 MQ*V34&TY/5^CI[7+K]CM_IB>F!B#+%_P(IYMQ^X7$FO7YOVR%;&OUFEP3#-Y MC@X<[E+@4,L++2^>-/_VN+7"6EYH>:'EQ:[*"TQ,:GFQ4_)")R9U8G+S 82^ M.D@/#G;3P;/'6TI#6KD@K7@VC0="BJLVK;)%2]$;IC>LY4MIIW3=^*52O/]S M0H'\X'____;>O+N-W-@;_BHXSB2QW].BN8JDG3OG:&1YHL1;)$WFOG_= W:# M).)F-Z<7R= ';^3"7"'6_(ENM"R+P-QHIFNT20W_$K< MBB M)(7,SY'X3P8>.#WO&CWHIC#ITRK,N. K+9G?US1BD9XCK/ID&LE8L&D4 M>JF;F"=T"TBTXI+S_*68#4/?#^_B=QM1ZZ31J#4[!5G,;TB9HZ'^4_NAK>I3 M]2]_ZC6;IYG/7]VAEDC?K765C'Z;6WXW#&*)M\&$0Q9S7] _@$<2(0/FA)WYD9$FGSTV54])"]Y)ESH@ M'ZI]7+>-:YI.J[RDKWYF QF:56$P3N&K>WR^RR2N/9%H6EE\)EF\ND_MRL#U M4T\P,&@(H.&P1+CC (8\FC$.N_-8+;[X :_%\E8F,S84*(^90H?AWL+'L?X= M9B;B!*P\\,X,N\)WPQGW$XF/PVDB)_*_A'U.+<=N)$0 (Z?O-V.P>4O96>"L M?O4YZV8LM,7#R9,3Q.(QV#^6P!,^@9$JG1F"D=W*I"JD>?@Z#7CJR42@9X84 MC-6_*!#&\>]88&U\/HW%._./!?^]R"6X#L;ME &M M /7[_DYZR?A=OU>K]_L4+-41!CT>];A14X'4N7"E>MANU?KUQNKG:S]>_[!> MZY]VMORX7ELSIGJMTU[3\-IO[9"K,>3^YA\?S";PD%Z])QZYH8G9:="A_ZB M_+T#WEEXOC]G-;O/$)V_&8/OP2;0RSAF JR&QSZ316TUG+T%[2T3'183G8]Y M,%J-9%UUE69?W4&6ZNY%=CG_]_; _Z\O W:3;00VD(/G5RF/J?.NG+YIUIOU M;=(!'L.33T! RQ"[8XA&_[D9PJ[Y?M=\(17-:H 7S TVP^A _<0CKV::.PFT M14TVZ?C9 "6<1KV^;^1&FWAL"Q6LSC@8G=%U^KV>U1E69UB=4566KYS.>-UT M>D]\>[#5%R^SN&EG(8D]H?>?VLJG0XU+[.O\:B^<>E^.Y(X0'>^E\3&AA/6= M3O?IM^-/0L*JLN7VMG$/!SM6%!ZPR^STGQ[NU(J"%86#$X6&T^]:43A>4=CG M >_!N:'-4[M=.M#MTF."$;T#8,V;,.%^5NA;S6-<_3"O+"SB&MCXZ]8AQ(WI M6E4?H^V<[F#KN4<25X]WJQG&M7K)ZJ4*ZZ6.T^GMX&8(JY>L7K)ZZ6"$IG)Z MZ76_4=F[-:U"JG*\YOC!/.V)=A5PX=8AP1P [HO!A&/);(I"X<_8T$_=).6) M8 B*P_Y(>01B P\&/)8Q\U+!DI!P6&YY)/E ^HC#(P,"=W'3&*1)1/%?&0PN M'7)H*@(Q8K$[%EZ*>%MXL(U?(_0./-"8,H4/71@G@6XET+P?U]@EC .$$4%@ M''8GV)C?(D;0A$!D")DK@+==/N4N#@5&E_C!$+RX.WHQF;1L ]A&F%+(&<(G[@K 4T3GSLA2P($^C;ES!6)5L4 M(X6!9CW.CQ9ZCQ-H$#M\C6S@AZ,WB.QT"\.(V41PA,$:I@A]1^) &%G)F"?Y M1*$_#^D'M)Y&PI-NPI#1D?4)60_7;)B2$.IEV@Y1ZP 8MQR4!DYU(\%CM?(_ MU6M]1"+SD8)2*9ED#=@'PZ)J K $#>4991OSB2$C-H)UM@Z0'=@[@OD8M: N5%R2E'PX',8BP=%Q'%/^R7TX7C6&4&'K.KGC<::?UBZ9@;U]MD4J M4ZOZ*'JO?L:US\QD)LN>F)!U /$:1)R81R_"&@&;AC%9T'<@MR#,MP9YK%&' MGG2O[::!ZEOZ)1_ #BA-Q'OM>->+3;Q:%.>2VUUQ 6[URY0K_G<CTO*66H7@6% O\Z ?<&'"5S\'"Q\80AE9,LO(D[\O_RIV6J]9W\7X-2-V;5+ M/EJ-?=1[@PUX&5\[__KORP\GC3[BW7KH^^M-B]HJ^."11O>::8+.+#O X(:< M9M+%%4*V+PQM7> ;#LU?_85/IN\_Y$"JT!O:^Z&("B*VJ5=W!*CIYV&LF/&K M B(%6WP!_CFBH:H+<353\*W. ML#IC5V1K.ZV^U1E69UB=45F6KYS.>-UP>IUZ5>L K;XXH#*_(X.U;3=M$>#! MQB=T^<.1QB=6I7[O",!V"36/"IRP[O1/NT_O-V]'M:KRW"-,W0Z$T7+X0]:N MY]0;IY;!+8,?*X,WG7YG!Y$/R^#/R.!/[O$=%R9)JVMW(X>Z&SGNT]+K^^MW M=K4Q>5BHZ="L6L_I]_K[CN=7G?LJ'H*S#+Z6P=N-I[\6P#*X9?"*K%VGV[;L M?=#L;9$2UZZ>W90<[*;D$7OZP[G* J$)XA7("KN-%&V39K$>]_9%96 \+/3V M6(I6U'UH-IUV?^\G4T]#W.KQ:S7CH58+62U4+8HVZTZOV;1:R&HAJX6L%MK? M%:*G.[A"U"JA"BLA>S2\81C=!F'V?UG%1[175V4$ M6[$:I!.O1KB5B=2W(^ ]",NF\/![!PYG_1X$@[H ?[H2%]7\,"(I@+^&4L&_ MEA\HBNOY*E:28N.NO+A@>)VVB%;=-0#?=5"GAX56J6%/+5,9"%/ MC_)5BV-J<4P/2(E8'%/+$!;'](6ON<4QM=Q@<4RKZ?P=>;G=-PM*6JWTC)<# M%M9Q&O7ZO@M:'D# T\HQ7C6K7?:O,ZS"V"+GJ.+:HNOT>[W*:@NK*JRJL*JB M(C1[W71ZO5X544@KOQVHIIK8W5;N)4&0MDXM!&FU0@O'C2NZX;TG&3$M)MVZ M8X'=W.#Q&$RZHW)R+>CBGM=N1]=-6 :W#%Z-M=O!W0@64?09F=N6C:UG;WO# M0=6V%X_8D1\")L^W)74OU3N_M '&XPLPPF:LLW<>LL>6QZ/FMC3L>7AA0Z:?1LZJ%;H8+. VD1ZGB\. M/G2@D3%>_WEUO=NS1K8+>G@.^FN#Q(/*F;7.#G)\=T'/JO+J)IKQ!1SW')=0 MM*L$/FB%8B>^WM-AF3Z!OGHN&2 M\,GH2@@'/G']%/D/G$GX6')?P=S%Z73J2P%O$$:>PX;BP$'A\+ M[ID+)N(X="5AL-U)&,\2.+B'P^0=R!*Q9:YYS.Y$)%BG_F=& ',"_F\U@ ]# M3 6'%I5'\" )6;N3?>F&423B:1C0:BD(.WR&=??, V: UVEU%=8=/#&DG\@? MJ\F^B+VY=T)3QP] VBS= _^A -UX,7_%R9'QW-4JS$ISMPOA(DJE.Y2(@KRG M$3(78B%F^@(XY3_")0D&CO5]_%_WH?"8-78SAK=T1Z"7@)@PZ>(87LLW3$RF M?C@3XB02/E,P"(2??9E-\W6NQN(D=+^? M#+A"A9S@"R01;QQX"[I'$0E3:-?W0YF"&"J_P ].Q9!MJ@U M]G(Y'6@0"5KUP8S]U*K50>WY/JR)PX#36]T_.QNKX)(&QB]B/A%S&MZ]UAO=C$J\4QET+(%6?8=KU,N>)_QU&^71Z)DP&PS/<3/H19O>/^'9_% MK]Z6)C]'S04BK5ZOEX&TG=V\_&OAYN6STLW+V[L"FC"]*A!F/,C$6%;F EOXNDT/@@ ME3Y]X9.RUK\N&'.BWR2$7?Q_U0^ZTZVAOH^-B M"L/ <_Q4,J9S'EQF<4%8AK%(<+)^>/= JWN?YJT$;SQ4\UZB*1:@1BX#6$!U MM\%7T@U:W]Y'#HN^YA:/W7*#Q6,_>#_QR*';LZBQI*AQ]: /E@I[M6A8 MQ3K%Q?SKRJ6O-T]/*UO3? CIZ]6L5[0:PVJ,G6F,U@[ _:S&L!K#:HPCU1BM M'93(687Q,B$1C@O)O=&Q(8E##4D<-^2[2EK367P."\0"(&-&1XL5O.[4KW=J M@8(/%2C8UC9.U6WW+VH7*V17>_A[<;%J+M8#<=1PX$?Q,F MW-?%=%4]"S5/=%=SB#XVA+D%*.EF%*VHL]#H5??JZP=1MGK,6LW(IU5!5@55 MBZ*->G63.*P*LBJH&%SA78C"/#MAAB2Y-W1*7=1&B2-DM F-= M@"G2N$(^XA;&A,7)8P5E2/] 7,A;[@.I8PVZ)7@40$<:90AL Q\)A=:)V!M3T"#C]6Q3>RA@IBX"\&D;KAO]X!&CQ4FBM M*@O"[P@O[(:C@-A.8;HA&1+^ Y&)-7V0$PMZ&__OI];#]3A]J/@?X;0%PA<+ M?T;@Q24PN<(@C(S>\8QKT0]'EN5^02_#)"+L,40Y0/S& M-,)L-5 ?0T&XSM@=!_DR8,YL('P)A@?:CD?A%*!1ZK>3+S(\6$ M?#&4$3#<'RFH=X3^'RIQ0IGXJ5OKYM"/$6)HQD(A+G+BSJ(I::$Q8@,>2U=! M;DK$ /98/ :KA6(H8V/#8I*T<@N=W!C=UU6]OZZK=?-J]!?U03!/C\>!6D(_ M9<-)E,Q-LH%4S=W'$+Y44-$Y%#A!EA9,Z_P%$??:XI6X[O?>UV !H-<#0#<. M! #Z/CJ:%*&GI]SJZQQ2/R$A_JI8'@TG,.ZU&!%K;K3AWMVP5RSX:_) -."1 M S+JBFF"TH[\"LM< $$Z0C_V2BL<6*98+=-CO8$J@,&"C-7J6LX>C ;;K_7: MS5V P79K_?:V>*'WH92VMOWVR$;'1^+36;QP6C0^/*\!=/FT= MU(C;M79K6[5IN6)3&M?KFX[X ,"-6Q6 #-,='#YJ6"71C^VKQXLJW6Q8Z;6P MTWLL3:F"$#0Z^Q>"IT>9V ?P](9 R-7DU&=@T%U MEKN?6;4YKVSY('Y&/N\ MN>*H^/.;B(9A-*$SZ(O@O[-)(5'AH!EK%VK1C6;%C^L&;# M M-F2WT_3@TY9R??MN;ZUX".$V M3@(_.+S/Q]SFL0ZWF.AVG.[^KP>NN.!6_)9?R]ZK MEZ[E=/NGEKTM>Q\G>_>=3G<'R2:6O2U[5V'IFDZ]W[?L;=G[.-F[X[2M\C9>^&9>Z=G$-;OMYS:D7#Z=;K3YI= M<51<;57VX;)VJV'Y>G^GK]MG(9S6NIT#.( E[%]SVKH "_ULI%L):&+SH[8G M634U6J/N]'9Q/+T;ZE6.XZJ94K5_16%UQ3;<7GUUL:/3_IW1KW)L9Q6&51@O M26$TVL[I+A(HK,9XZ1K#JHLCW(O4>]W*Z@JK**RBL(JB"B3;45J/U1-63U@] M<41ZHM%Q.KV6511645A%42E6KYJBZ-IMQY%IB:=*9SCJJG*+VK6+_#-K^ZSM M.R#;MX-T/6OYK.6K.-,_<2+?$9N]>Q+YQFITO M;O4VG'MY*[?Q#O">>B9?!N)$+T2C29OT*UU\Q(91.&')6+!O(AJ&$;3L"G81 M_'>&O<5B1,"0,G CP6/AL<&,_52O]1B,R9=AX+ P8KT_.RP)V4^->JUO'C!H MBYI-QI$0; (C&L=, +T\]IG )UL-AS7KS;H#7#.9\@@>Z$8:#VVDT:^Q&WC- M#!/^8:JKF(S9-)*P.$!$YL$/T$DDW' 4R 2["(&0N6D,5A/XUA,39&;4K(.(DRK5'\>UEV/L M0&4*G_TB0_@CXE,!S._FYLX317/7J'5+YJ[5T/:NE=O!K'Q.QY/PP]JD-!Q%V15@V3#76QAK5L9]P-)#';^3 M"=AEM[17+=0Z*G>CQ%90_3U#%7/R8XK+%2,%K)48KZ:&GKT]:3A4%R#V? M>X-\>YXFH:&8\NWI%[V9 BKX?!J+=^8?"]N'(O5QQIZ,ISZ?O9,!S8SZ?7\G MO60,% '*UM4AECX*T0/2SVOJV=Q1DG[8JC7K[37/UWZ\[F&WUF\WMOP6O.EU M#SNM;;]=V^MIK=WM']2(.[5NNW=0(SY$KFCTN@)6 MK=_?5FWNB\;UQF'Q<;O6JF]J?>Y)!*A$=/%Q $/WCA@\T$1$ZZ.XNH,-RML? MD0;2?0XPHC6[C0V2GHP[%82!N"<4;%_=^ZM5D-YFPTKODTGO^9@'H]4W-E6( M]9[QU0,P88W._H5@0WB6!TA ;P\2@$&U(^/_79TZ;[O8EGMWR+V-ON7>)U>O M?+ENN>B.N6'L\] ]\=@.-8@=#'> M=9#ED)?"(03C_MP<81?=F@VK%*K+']9L6 ZQ9L,N^MRB+R"66!7P@KEA*\0A M*_Z'N^!6_"TW/.<5:CNX07 Y^?9R?QKEGX?#^:J7W5[99Z\[V8)H1WK=2=/I MM!O[OM7WA=YVLL/+4:W"L IC5_S>:S::[ZW*L"K#JHQJ,GS55(;U,:S"L JC MP@Q?-871=EI]JS"LPK *HZ(,7S6%83-YQ>YVFOG;'*8K_*(NO_D3?/[& =#^5:FG;32L3S)4Y9RVDMY^%93KL[ MM_;3VD\K&@>:@KC[;&6"E2U2M#JPTW4-.[T<.G@3;/X=#7T#I/[Z*J3^UW27 M(L+T*T3?)]9G]S+,$=U+V7%.^Z=/KKZ>A((5U5?;F_)](-Q90=@XGMQO=JP@ M6$%XZ8+0J#NGS:<_6;&28"7AP"2A[;3;32L(5A!>NB"TG%:C:P7!"L)+%X2N MT^WTK2!807CI@M" O]I6$*P@O'1!:/:L%!PAW(P5@,TMP6G=RH"U!"]>$-I6 M"BIU[+^+Q)G*'_1?"Q]^'3EL) (1<9\._+DWD8&,$[P@]U;8,_\G2+@Y,-W4 M=%KMIS_Q\I>W=V<'!NF=LR=R66KNF<-IX^ZF79V[)W)9:NV7[Z(V[+W):Y*[%T MC:?/;#TNWJY<@;]EZTTR]*S*MBK[2'F[87E[SV?*6R5@3*3G^6)#@5A.S+W< M;4.W [)8C+!2'"@8)S$=)X=3@2?)P8B)'U,1Q(O7CNZI6'\E"L(B[2O%MD^) M2O.HE)'["5A1Q5AW.KV*56IM2LO*<>,AI*=9!6,5S/.B9'0:%4/)L/KER--? MCPDFJW'JU/L5RX\]9,RL0Y A:Z.MC7[F34"_5;&:1&NDK8*IRI):!?-H%(R> MU2\O2+_83M\8 ;X M=:LRHE%Q :@X3(FUJM:J/C/&BSU>M[;5VM8UZ"\5BPQ57 H.$OVE0KEYYV$T M#2.>")67M_MTWH*^;8&^]<)TX(L5QG\SW;+O3&-+&IN$O54J4+]N2WIWY>-8 MR;>DJ2AIK%)Q;$PRK%XY1\V[]EC0KU7Y6ZMD/=.W\0TTBXDB$I2[ MK8/5GX>U(W_Q0FE'8T=C1U/)O?R&<8?#1J5Y"!K-BPX6V?Z?+XMD=4Z:?J*[ MFHM]OJP$R@<>ZCP!3:OIK#>;3KN_]T2")R-OY7CVI1RWV?X/J?_]VR)KCG:B M+X_!(M6=7G/OJ-!/2>'*<:XU2K9_V[_M?SX"]#;AH,5^UE>;PG_,."8\&LG M9,R0,JODM:W--=>V,J8O;BWJX><:^S(MOS#R5S]?B5CPR!U32,D3M\(/IP1[ M;()*]&"#VW7S#\0/UT\] :VM23=AX9 -9< #5S!?5Z8AK'$;]Y% MPJ>^WM])+QFK.W/U=-K-6KESK>#]5Q^K)6PWRY0K_G<_#2+X;DFO\W24@0:8:=1Z*6N M@@3'OR.0ER 5#HN%8*^R^Z7W.BOJ^)U,@(/=#15 ZBKBBB'05R-J:P? M^*O5"F,=Z_6KSWKWZ60F Y:,!?LFHF$834B'7@3_G>$8#&J]#-P(U:K'!C/V M4Z/68C!2'];68<#8S=Z?'9:$[*=.K6L>F%:',@+N_B/E$6@)9(MF'39(P/.3 M*8^@/?ALQ6N-?HW=C$76-[OC,JU9HDI&DW-%,V< M6RK%%-PE7L CKZ'0GDF8)K$$9P,H?"M=$3M%3AER5_K@ .AW8'K2C?5[=XM#RVA=IZ"+O5 M:XVRXFIK=JOG?%@I=IMG#V>E*5M@G),!3;O(/DO81GK_\TJ*06,X&+0&;>&> MMIMMWJ_WNZ?]=GW8[_"!U^S]7Z-^^FK]5KO1JG4JQ%[=Y>SU2?Z12D\F,Z+6 M.9^BM\M L85IY!;2((Y,JO)IRYB8=@)(\@*T&@@6CV,P19&$2!JH5&BGWXU -%ZE2(,$@C*+PCJ53T@Z-3JV>J0>< M2D3-G8,:D G[J'R%F6K111T%4X)5@WVSZA9GE<;X)PY/!K ^ M_B!<,1F(J/BHT6>O:9%"8%+@K#?O5A*\J/&;.;UU;.Q4D9PBLW-?4%B7ITEH M/E%A7?I%'U$!V7T^C<4[\X^%R'%QN9'$GHRG/I^]DP$1E_K5D:=^K]9KJ>"3 MSA74X]&!J9IZ-G=8IQZ>MFKU7F_U\[4?@XNQ[F&GU=_RV[6]-MJU;J-S>$-> MTW+IXR,JX.PM<55V#F-Y&8 M,.)]<.G[.UE>':)_^@6>/S]YC@4F=<^,IK<+ M?'0+;.PV,R:[(FAP>&3Y&,3]ZF7+GZ]RNZJ6@U*-Q+C-\][VLII537RK>%UY MK^NTFM5-M7Y@WMJ!59I;I6&5QB$JC7[=:>_@RLH7KC1VX=L-Z?]MXML=G/OV M>SDL:BW3DZK81<)L#K%0/2W:=)J]^M-KT<<0J7K\\PCO MRDJWE>[]27?/Z35VL+$Z>NE>G_2_[B"P8JD)*\X"+P.&BT(GVTE(YZWBAXP3 MYL]%]SZ)5J6]TW)_G"4J< MNR$+3Z!]3+@ /JDQ6-]FO7%**X8Y.;[ HW*5011PGTW'/,]I2B)@I:'*)SH/ M/7%Q&_H@R5ER]6$5M( T=]OO]UC1LJD,LD2XXP!Z&Q%/?A:1^UTS,ZZ*^MNN MQ_.MQYE1V,L8:8F@_"NI"HCX0I,*?$I)U D<'GDY#Z MQUQ%H9.KM2)9_ 3G8]EL'V)/>MK884>;"UP2,A>_7O_SKS&+4]<5<3Q,?<:G M4Q_F7>1#^!N3EKQ"H\1^69;9-$R U9"#"@QHNB2PZ/=\Z =T3 3Z>"&!S(B@YE4V- !8L6):"CMF8 MH%C&*72.6>!^,G;!D-78MS2*4PX+KM/0,]>:9%RK%0^3S-,IJ(Q@FM,M9W4EA@.E9O//)5&:_+LK6#OT0'Z7>_TP#HDOJH_R*Q'4#0@/[6+ MJYO2G@W?QAJ &+T4+$U9=*!B 9;'6^I'E7=D<[V5&\TY):?$I6(@744T#$-T>CQX%1/72: &L!D0Y)?!"N/& M'/5E(GT8KPH&I%%$CI@JWU:;_'+!H';B:4PK7H-US"I]L%5=_*U> ]+'N(&( MB+U@^,,4MQ&:]RRVP=;8!JV#PS8X#.%K%"XRS6Y$@\LB4'N_RYF11U=C+7I'8V.M,WI>*K'L8[)7CW9PKIE3JU2 MTU-30C3 =LGLM!U& ^T)QI^4RQJX#Q&J8BTUKDJ0'8$')D!56$!:Z<$K<. M9N"A^$NU+[6I' F*W$"/Y8@@U5+-&Q>J" TD:GH#\Z$U_/S,;L7J2')64(Q\ M+3WEX&73=Y30^*J\)RT6#%/AJ%.(<6-$?D4OBHKJ52 #53UFI4:+=$5_* ]P M@[M"[Y'7.4V>@%R&*W+SC6[>%$:%P?"X )Q"J_4VC!Y*335A']87]4NJ&U73 M73E1=#\HX@>N:S@3XH0LK/!*E8Y8Z%T(T3BDPP+R>?,)H->=3J>PP:)Y+F./ M( Q.H)$(YK5Z.K3&1^OQ@;/_CQ0V%\UZH[L8HB+OO5QIZ6@_F;8(L0K;4NV@ M)P8)+9T?PH"46T<1$5CZ)66=]<+6A78VN#)@/\BE5%UJ((A9H:UX26/JP+*T M%U+ $]DA619VUE@4L=Z]4:V<:@J['7"UA^G5_XS_L^XKVB7]@\,&(EH=WOLH MAS",,^ BCSAI.4%IJT%T0N)E>R4PJP-3VRD27=^N"5.(E.=%]<3PPD7_5>*R M#l_GQRB?5$T\DN>S2#[)H9Y)ZJ^>QK7\L>$T,D\;)'LBDX3:0+X0'AD> M5>W?+87V%9P8U6!B^2U5W$XC,9'I)-M1A)$';]&.-HW4&AEC1L._%M-$56BL MG -*_2:SN!O#9X,9/?,B?F?VH7KOF7,ZX@J Z(M FXM\#*VZJ@2B7A" 4A(SKH4V8.NVVUCP,R?H!!9EOL>:J@5E:\1> M+ R^9"*>YAL?924ZX5/:/7AF3T$\C(=TY9)[\Q7"CTS2B?(;?+3+0/$K@8$$ M%2'2"=RD-*@\-PS*H: 9$ 832J= M8A"FB4Y:")*(*SXN*%T%+_<%/'76@,5[=1Y.0"7F.13GYJC)!;?G50ZHDBC7 MY;> RU1@\*+GCK5@G]11C7Y0Q^S%;A.X ?5L%H"4GLJ_^%?"AL%9/-**%/1W"ORS:Y_P:*>J .-;Y3STN#TU8F(87N@.#O!F*RBP_F'_STY;33:F2XIG)^" MH<]P-+[]\S>#N@.R4CJ25:W!?TX+9ZT$(.R]] -!$I&N5Q ME4BPEML-4HR:H(:/*7BW@4*>C8%:#N)I^-X=:&7')+:=#&!71OX,A^"(;YNM(]*M[#@6I$ 3 M$?@?.EV ]OI*9CI70WDNY3UJ@\[B"Y[8;N<(3O!RWBRID(_,$(8(G (:D8E:RHLE*#KCL<,(! QY;T0 M-M.>!SMD%0/&_:NZW.!$_>C@1/.1H5BI",PQ>QT94D!FJ8?25ZD MB+:#OJ/+XK'P$85XI&'U2%BT"Y?Y9]VP0?+C"-YG;1V\T MWK_)Y?3ZXMS1O*XE3EF)6%"<-@?BPM"E&(H(F4#_0'M3VNM)Q1%W/(HX1=E, M;"US>4U@, UHP55?$G2)AS!Z&.\5+I\4DQKHD!IH NQCTG+[2[?KIG_TMU2G MDTB7,>@TTSN'(.^_3IG+W6Q%//,CI-"RY<1A\)2I16RL.R1=K2 MZR9;3KW=<[J].JPN4%$8?E];TF\9*^ZJQ MTLP 8?-'^2!@Y$%>%#P5#M@5&JD0&R[ *>;2.=^B0P-%*=0.@MZ<_M3NYQB? M-7;$$JG 6;*M\SR?H3"!4+FPMRHERZ_.O;OAWX7'YZ6KG/1SHKQZ#"^#>,&K MI*D7G/QBVJ L#O4^.Z?'4+16A&N^PK_(8'=!V$\R)V"9/4-G0?GP%),917Q2 M,EC-(B(U&;E[78D% ^B0-"1X+) 0WJ!3C&?6ZT4[2A8'K(:?>26*XK[@"H2O MM TQ(0/8Q=/=!)G'KS)%<0WT*T<37#D@A90.3+ J MQ&/UP8!NGK+HT:W4F\""PC:'= @]"FP O18*J*CB+0C"A [S75A=Y=)-,;J* M!_M.(>!+IR5IP7C&T(L!/E5A5SUG$[[1%%KVKIEZ4#Z?=B@IH1B#I=&C7POF M&:P)A49$%." #+$='?)1E$K ;@8*_E2%MU%)1\J(T&9;=YT-TO!%G0,MDO(/S?!9ZMW(1T$J%#=]Z2ZKPI[',#C+A0AL] "(PP MJSJ98EX%'F@CJR!;ZT(6G7^3'^,7^/'OX1W2-BO!R2OP-''SVAD*VV,J9XA; M#$3QSH:DHTZQ^".%3WW8U(.!C=*IHBE0L<"+YO2G]&TV-%PK)9SSL,=Z8JLF M56,?,1X@(JSD<>8_UED;AL-7^D&O7UW]A4^F[S^\>I.G?"S+7='S0ZU4UG,* M11%=E&C5B$5=5_"?0$H&A^YA3_D1$E["9P=B%$.^!AEH6JT=(64Y&T/[C$0NFQ:#[0 6 >QW1J70I\&U4P7$%V+5F9:2E<^D[F M)5>:Q:P4\A.=>4+F5Q65[O4J22UMHXVAY$U!0L :\F?SZ,98A MP]Q<ACE&\GB M@07MG]$>DZ!Y7H2RDGLQ9:G)?;X8&41-?LY _$ZK=)?GE9NZ/^Z!X<*@".V_ M@:G'&DA?H\0;_'OR80HS'@A5_I_&:S2'LU0OE3P>G*TI=2@[=DN<-B=??+HD M8SF3%$O=UYY2ZPR*6PXJ-XVU-Z_.A5;/:$HW^T'7W&.7(,&L<59C5_ I'JEC M9?Y#CYF/-KYTMBI]PS%'LJMQY"D U"WND I&FS-4%=6G/&P\/E#:3* R*33DI3=?G$BT/G6,AK<%; M.-HCHOFR)Q4;S7:ZBLW)FRAK?&=#3!I=Y*;W0YGE4W>6X$*%P2BDE2XTC6)% M>#-+[I19>LN%9O<[E,6]M=5A5H[\ M,5*C;[JBG28F.V=W"A5O$UHF9&K@=_/[98K4JZ,LDS^IQ&I3P*,Q;EK=UPOL!%G685*CY-!HE)2UG,9\DY51)[FG!JM@4L M=4%5JK"">K.69:FC\TME;FK?8\YEL5P UBN9E8[.2TJ;SHG'H>^I(!UN[) % M*.O4)U:C#O$PD2BDZBFR['BB:+;>Y41B=4ZO9&50CM\O392EU:(;H^9#:;@1 M2>?BSKF;IH/!!L"'AEE@XX4UQ>T'[BMSKAOR6V!,W4"JUX)J.\SDA^!'+FU= M-4G!;OV*N:RL^%86RL)MI!,[P(IER'T"WZN+NJ:HTPF'$7321M8 MV)MS.BJD [_L1'E.]1C)R+@V+'.;DV4AWTG:?6$>EQ[A9"H226N(YR4Q&>8L M-!#+42!A^AQCL^8>,*(F;QU?"LA[(CX.C M^V7L/M%RT!XFN(RH5E1Q=B%*&IGL0*T:S UUI?JS''B -B<10?04CC5PLEJ) MZJSV"%RO $U2"4N*8Z&(R"Y>Q+TK ' L3I><\+?-JMH'+M>"<#.5X M1E3+BS9'E..'R+Q*^6KE6!)->WZ\Y?EQIY+GQ^NO>*N$5TP=/^"F>KK2Y2.& M%3:YV*X24WSTQ8&ZFIP*6-.[MH]%8Z-K;W\C)II.K].P:L)>U%D%=TV!P#Z!N[;#"_ZR_IM/O:Z;7->V M8HS5TRO=TZ?5*D=_NYUE[4-A[7;[:?WJHV=M&\5XG%G,TZ^J&\5X*MWQ,._Q MX'1'PZDW^GMTMZO.^]7<>UOFWG O6>\U+7/OVS1NN6,\58EC52I)CI.J]NS:N)9W#B=NMV"P58K@>O%#:S =="VQ@I>H>2J,N;*#NQIB$FR M\Y9R]Y=5$!4;:IV6"[0;+;II[ZCJ4U2IVMEL,>1W9#7LY_=E;!%4^T^- M6CO#)$$LX>'FT&0*#R>#(B,*\_:9SH2GG$J*)] MJ#NFV^;H1T],(^'FMU'\5,^GX;"KK[\QA7.#*%\)HB.!H.E*1HVVI;_JEB!: MJ(Q7@]I29680YUTT:\T<5?G,*]3O&T(/9KK8/YZC.8["P#_Q#+V?Z-\L8C6? M/^#K#*>'!X5;<&&P]1!@;3RZ,^J[!1O%VGB>1R$99V)9<.>C M&F42H3[)H:(0<<-\,N4S_3Z)5.F;9DDD%P1_33WQR_0&+K.\F!?F#2Q+"%** M9UX&BW;U(087.?EC=I3]PCAYV1F^\6OK6S)N\<)GL:@6FF-+:([3U= <."_I_<\K*0:-X6#0&K2% M>]INMGF_WN^>]MOU8;_#!UZS]W^->O]5Q0 ]E&FI"O6[*R0VS&\S_9K?9KHI M=D?9<#:6A)"KQFYE. \-H$%X'M!*K+#E](HC5$AS8>72/N0#V_=Q2 M690/NJBGOB7,1PM4=;^]&\R,5F]-P_=\NZ.&UX-QU!\ QF&';(=<\2$W3Y\& M6*9:!SEV- L)F5V+%;/QP?4WCXH7W2L?Q@^2'/[1TE[Y=QQ [\]UT4+%8H2UJ=] J=41,N">+OQGL_ M;@RFEU:-\41@0@=0D-%?7GU42>)5C^FJ63=N]875%U9?5)'IK+ZP^N)EZ8N_ M_*G7;#3?6ZUAM8;5&E5E>:LUK-9X,5K#JHSC@Y6HNKXX1&6QB]CS#O!JLI3T MZN58JPSAO*:>8M)Q*7/:4#Q.I\\]_E/*L;YW DOPVQ!0$K-ATFF6^K^CH+I% M'=ZS7FBUG&ZG]?1Z]>C!ARV''PJ'.YUZVS*X9?!C9?">T^GN(&IO&=PR>#76 MKN^T>AW+X);!CY7!&TVG:3F\(C#GCXB-]@X@?V[K8H8CSRNLU%C,\E1CE:H3 MVBZMSF 4!O^W_JX:V.Z5M2(8B3KM%G9$X(M2%P]WK5'CE8O55QHJJ>7 MG$YC!P%VJY:L6K)JZ6"$IG)J:4=18ZN6K%JR:NE@A*9R:FE'L7ZKEJQ:LFKI M8(2F&'CN7R"^0 MO,880B.O&!8?A+<"Q =&EA@(=KR!98*70D2"LPF702(4$(6Y" ;ZAT<^$W'" M$Z' U6OLL^XA:WO,H6EL=R!$ %]XJ:ON:IFC5(RRBZ.*X#/NQ_J&F!Q*/@FA M"7V#"K2PG)2F%1C)9< ^BD&4\FAF;LH1:C0$P4(H]M F<-4%+N:8G<& /4)_ MAY\1M/X3C>.@VQVL6O][WZ-?82&4(KU53ZO*=@'0M0>1K MH'_HGQ::FM_NNJ:J8*93Q\LNWUB!HOZ5[LHJ4/=8+WCX70N(NAS,+;!3X;X$ MT,937UW0 OW<2E )/(KPTB3U:DFZ%*L!T_K07!JI2UX&:0Q]Q_%:!@>=E":+ M(W'*G/]J+<^_6N!V_&,[CFE+?>$.760WIFA>\8D/UJ.!EU?2,D ML%&)1$G0M6D\CUW_ -3Z8\"H;W=KC69W5_#;V\+0K^VUV03':6>P^KL;\J94 MWD$NT[Z@?/>!L#9OE-C9*!+J\IJ;V50\-P[?EFF2^T3;.[05SQ?X UBE:BYP MA;;7E1K+Q@EN5@SN!4147I'9:&HP_EVGR>X3HW0Y[0\"/[Y:-L;"M3Y,5^YE M*-OG EOS5GGS9B7P,"6P8H4G!R"?GWF0#O%J0?!5*%:FPV:9$T\AXRPL9&(] MRIMA&(C"0,X'X8K) #9ZS7JS6;4C;/>)BMV>6+':P?U[Q4B MX@=Q*_QP2FX4.EZ3S!'#TW=]9!GGCMA65]8<)H; $;E5UV*:&,^X8=%@GA,L MP[I6>PJC6$R1-<3K./6>A3VKAH.QF4./&9Z+2:I5)R'AB2SF)54V-O/X_@]S MG2HUEIWCF]@U.O2XQNJCC+6%#C8>L@5X^684K:RCTV\U]AU)>1K:5H]=-Z[) M>6#&]P.*=XXE:_X\$IY,V$=5!#$[UISYRX#](PT$AB&Z5&)2KBYAKB*#K@69 ML=>F6*-,GJR2!#/194S50.&02D28'\( LP]O\*+B>#YMV?ZA_Q3JJ+A+!*WH7]+)4@P14HA5^,S7UYE+WS2+Z@)S ^B MDX]!G7#"RG'75:GQJGB'?RI5=<561..,4988CR\K;&O ?OJ)B&^HH;9#*&#\<@.J-Q/E:<(+OED:15B?#8 M&1?$@_74M/ET^A!(\E>2WBG@^]L5Y]T -KF:QJ5 M:C]RPL^Q.16=Q,)-(U5MQT&P18#\'J>#..%!(KF/^0B^C]3%4I2IB&(JPYE& M6)$(;:A=;C+FJE8%5\_'6I>T\%*-"@OG>]=U*C'T&Z0D)JA2TAA\ JS'&3XUP@>* *B[L9UP M,B4% OP,*_FPHN3^+(!JE^E9[(X!;&JVNI7)(O8@VJ MK )FX'$L\!&T1'\;TJG?V5CX'DKO,(R ,14W24^")*,N.@,[)WU483!A%^8. M'&;H&XL"S4"U0SM35&-)@?CXF?@A(E=2(>@$%H&.:F H#32.-.,.0T5DYO" MRKEU(7R#AKK= =Z#=<+YJ\I(+9C,'R MZ6.%Z%+;=']!' ZB[%*42N(VK8A#ZTJLB7-^@O*XE0IW&BI6?43G7 MG]]KY=9NUKK:QUWV)1] YVDBWNM-1;W8Q*M%]5Y*'*RX0F]WRY0K_A?G);W_ M>27%H#$<#%J#MG!/V\TV[]?[W=-^NS[L=_C :_;^K]%HOC)?C:-\'S@2)P,0 M\>\G? BT>,?].SZ+7[TMD6QN#1Y.VDWV-IM^MUDY8B46=%6Q\'!X\@OW2?*O MQV"OV%FQ.O98'9.S54 %I!4]Z9%K3CXZVL,0J#305(J)2L4:8@=Q#SP!BH;V M4>P2M SXV:W7_,WK]AOLZ$J,4EW>>GWR3WP==/DD]4>DH<#?(1_]XGR)7MI4 MHCJOCH$=S\'+Q_ -.U/;*53WWT"5N\:J7N.[6_ M=L:X!OF4U>ODH8&W&>OG^.LH#+T["3ZUA-62$2Z@VFT8\B(7;DQ:W.!Y*7G: MW NGAFT*6O7YU=__;J#64CGS1:#ON8L=0E.-A1JGCJ MQ/BEG]3X7]^$4^FR5O/TS3OV67!TH8G+\]V]?A.)N:Q)%8Z"SL%-K5&H[*3> M=N -&"%%>[#37PUY\%U5WFQZ[M2AYVN)+O5P9ACJ!@,)2-?LP\N,KF!UQA)X MBX@D8J#J .V"\,.[U= 'QQB%?? *'ZL9^!JP?_" T("*G@F)CO"T @YO86.- M*AD%";AU#X*"V"@CQD%1@K:6 J,C213&6":"\1$^A5%R=ZP41ZPE/%?0\&.N M7; 1X9.,3$(4EJQ+O9N?J#'2CIY/0+,"17&W%X, *;-FA"U505K.7L$^&2&: M\M*5@K)[I7JLL=]T7$K&ZA=%ZT@88TDX*$:7J0" ' H*LRYKEY7LM@E14# @ MQ/AP&*D5S%LD8">PWN$=^9AS2EE1+W\,[BC1@W;&)3I@-%3&)IPS-P9'VU[=3M3>34L6L#>%UV*4"QG /TFX2NV"1PN]$;(=S8+\U\"$FA<4 M%&X:P0W#V7CYD4[LAE/4&ESO*%5P335,7B\23JL&1(O38;L;"D*:CB-U6J3] M+*%<-(QL@O)DM]Q/179:HH@!3K:H;;^!/P(Q/%^A^DG%'Q-A[M]1*LN:;?V( M%XL&*_?3C3!2_)G'">UI\K N")94$>&)CF@0=*$) CO$W'.]H<4;!=)8F.7] M&KS$H;8QD](5/'='[K MI_IL0BE1)0::Y1;85'^:'UFN\B2U#[G!&#R$$TV*IF&5][9@60A-+S;>&KR/ M2E[[8:7(I!H(/HURF%=R-A_FS;TLS,R';.V/58BVVG*6 B2O=A@A>95M-:?W M[R]CU;+46\Q"<&I%8"O&(+SP):6I4.%=(J8LN0MS45WR%0/#!0+WZY(G]'<0 MWJ&H%;94T(N.]*!XHNQ#7RDHG;_&X/5%$=%">7,8SA->K,QMYN1I/5.,H*F- M/ZX N)=X<$'CDO>_W9U< *=_8SC[[##N *\;4_9\>\ M1^NXZDPW#45.YYL\PDQ*%14H((X/_12#!NH@6Q]'%HXS39J@VNJY,W3"Z"EE M[<9.GA$<94?C.A0(#E<8Q29J-U$+0 #G69Q1'>_)&-/Z5(3C&X\2=GGIJ)21 M[IDY2'_^X^/5_MY1"LBE6<3_KQSR\^;_L\L -.DUJ&74)3YTWT/I)H<:;.F5:C W1%".L"H"\<)2 M)<@\#ZV\_J?&4$<;18CDFIL4*4IU:T>6MH.3U/1B'BVMJ^->2$J*S8AT85D(Q!BH$,I\8 5@Y9D46 MU>32E$,*SZD;E.C0>CR;HE51F34-X"%MA!8G)4J5_Z@- M^KDQZ.@2';,?M(F(/ZU31.<_YM(7$$"EAG\+*.)TG:B\.MRL1ZB,<-C4J@IR M\9A*#[A.L: X=+D[?5.8BIK=Z2,>P\UXO(L*4'URDHU0V03S4JX-U/"PLD7= M#T2V<-E0,271Q_MGP/BLK$"*N6^<.A&$JL*-W+JE+3I&3Y?(K8^Y%#5T^L52 MVJ':XDI':%OBTJ5G4U 3&(7#"IQ"H0@>-,2DKZ0G%EM5"IFR;&*@G!R"J@F2 M94NM5;;,. /O,!NF@:MK/K)7BS28A(%(,)!LCNS1]('2!OH5EG6.:H7R+?B7 M1+NVT(OQK[<8Q#S71^)D4LAY4@R&5-951O/+I(:G>8HR#AQTHV %H)\@,9F? MI&OR@M&L5$;35\?3>\_232] MV3Z(:/HR5ZRYX(B=;HS34&CG=%4SE8C#8S"]8^/P+S1TG,?AVS8._UABGG_] M"_77T]O_B 8?<'8,0<03K'19[K@[<2J) KNAA871R%NN3^6Q2Z MX#=$QYL71=@A"E? !)Z1"FZ1"M.,"MHM!5-('IQYB;*D=&4*B(7:J5$F"&7A M)UGA(Z 46]*F%*Y\L)SU"BQPLH! M'WZ">XG_XK\5'@.^KR/=VOU3""AZ4XK9(JHX03^]OCC_*S2>^GFUT\04Z\/( MXQ1V J6DQQA32%+*>,0,9MQ-AY-)&H"RT!E5.(N\H*Y8R*\V9%1^A]=/_Q!N M2JDKX1 V71@WU;7Z^3N%3*R@5,6G/Z%Z4W)BX1L8@$/U YAZ1O/V<1ODZC2= M2(QX1./(UB!GA*/&'7F^U1!*V^@<*;7IFMN1;R)\>0WQ8,:NB#D;+7[2Z+P6 M;^CE1L?3?^DM35%L:NP7"GI0&)Q$YU:*.V<'$\89Z!1W$A<5KMY@AA1(SLBS MYK)XU>ARW4(P* ^)8NZ=51^,1):'WBZ-,M9VBX7@HA1*L:Y,#MFQ"K*J\B7& M"4I!R2RV73!5BCHY^^89=@@WDV0F %X/A(H69(>C(O<8,D4)8H@5SJ.(3\?L MM4=B5[)412'%.( 24"45H:M2T4U-,=V>S:FJ+<80S!\ICQ(5/M'!>U.^[)M M'QHX+/*("J(P8[[\CBH^"1<_P>\/:,]S^Q3F$&1VH361 17L>!1)5?(2PR5%H)U?,A33'W"Y='H.[X*)\8J%Q5]!W7*H[)&"T14)Z0F37,AM?;Q M)9O/7:-L2NZ-,!;CQG,%]YL+IHXI)W,YK0&H#Y/,NR85]0B4_66 1 42?I(3 MF6C1 2)=E*8.B8 KJ/U68+1T@%MCA$T"X3&1=RM192N@81-M5!Q))A+O*PI:I0'D9E[9[G.X1-, B=,10 M7M@!L/A0JLC\%+0)_A([/(XV#6=&P(UQG M2:SP[%-?9*BWBG-G1.2%8FJ"*I@S@\)3HH' DN8C[$W^(LQID6$C##P#/A= M&&54A17"&WWHY278:T4,C>)*(7H>,JD,D=]V4.9FCRL>H\0Z]:U''% MXC*MY38ZTJC*0JXPR]_.KF[4IO3RLL:^WOS]XHI=?OGX]>KSV$S6I1BF[NJ/03'[9R81_5P'$ AQ8=AR^,!S* MXDY"]_M&,>9*",=# \P(%Q$&HQ"IDIWJP P\,9$N!I0<6/,(Z &.48BA>_.7 M@P5>(HI%=KPTQ\:K2PV6L/)FH:IFLUAX4AF:WY]L8*BBQ7Y0/LV;HR/&B5?1 M7&.!@^,!7!H)CH?S"45]5*@P2/A(AFF,@HHE#<7V073:!O. @U'#2ZUP$^]L*,,C7V MA:O<<$?E(9Y2^KYP!*@N3%$1?1FH,Z3L.8OY M4(![/T4 ,W.92$XE/'C%:HX (__*QV5:Y:GWJ%3$RQ[IH"_!#MX2K)F^_H7: MU>>C=$!8.!^E$<;C-,&*.>PGXX^L)Q<5O^_S+%H]30<@TPQV'J"K5?%R5EZL M*Q6P;B,:\4#^MU1(X.&%*F#I5/PZT2HPOY<#P6PHVLUO0^DARU&^/-K0H0J7 M%PF$*#B)3G?'"=-4$DZ'A&.,>9.QN NC[UFULQZ=*7".TFFBP+W!O/GYY MJ M CRX,:TU,9"J4L&(O5EZCJM 3VGQ$=BF>. 8B)$Z!U"GK71D9KH1\TI(%6-C ML5SD>RA91ZR,"#X^*[ HG$5[:8[5GBD'S"X(%(=E)@%/'!0GC@7W897 ]4%4 M,J79:#6**Q$)6%0$/U?\Z$98TZ$$%T4]T$*O3M?]<(!)2"!3X42N6B=')]AA M=R!IHQ$5%ZL3&I4ML$'C+HO!AZ!Z56+WA4\0!TI]@:B;:O@*7*FH<#-*X9U& MZ@S1*$FC>Y1@92I>DWS#06(QR2W5B!*GJU;I#B1U>E:D]&V(RL(W;VG"0W5Q@$ILH%)L.H3](Z7B<#Z5 M=(\T"&Q"N*5T!B>BB3K5P@-63)HH'.?'XE84M$$8:%T%FF1@+MU21=.*)$M& M7CK5+)DAFD1VJQR- #2_IX\$.9ZL*6MB/-5I"NZPOKFO7"&']T9%M](568'; M@ ??<'1[D?EIF%*TR,FU&LY"W2>EJ*($2QT K\EB.'B= M\[LH&6+8A\@D5/70\X5:Z#>X%(?*;3Z=U4]P_;@VJOAJ.;]H/K,(V];6I6A4 MRNE,2WR@W,KE>.%4!:ER&T]TX2BX$N%,*-%&0X>7>X684H35\0GN(K(R\*1D M 9WE'9=W@_B*UJU$E%M@FL)%;#@W[!1XUZ4LR3MUT9F^:T)/+AG+R"-/2U)J M)1Z-SRC[4YG_&*PXU8UFGL/E$/[ /5J6E5HXM<]=C>]BIN_6"X1?NN/!E/=E M:IY6N."/D/U/5;(#IBVH#:Z62B]-]($VK2MY&6)N]EH"#?TR?87QVP'>5J<: M5EFLPM2X9_X%YB4D8D3Z\>TB!ZIC^TQQ9LI:>-DMF^!#A47MZ!>R).A.E4^9 BG.+%HR75:40IGY?RH"G!JRBY);-@]'8F;\O/57E892GF*MQ%:FY:V95I:8W5:VE,GF&U7YGX XEX,Z"KTLZ<+CF>WT"/;Z>UK8X^ M,AT]D9X'9'U,CG.C$G6 FR8YMRJ8Y*P:/#SU_N'BX]EOGVZNV6_?OGX!??[E M\NM50:U;%;ZU"F\W=Z;"K>-]]$K]('U%"TKVA,3\?/GE ASNCQ?@9Q?N GGA M&CDIG(<_0C=WK&ZVNOE%J9-<-W>L;GXL,5<7-UNM_ " !8N?\!0'5*AB*WNJ?6ZCZ6F!?_^_?+7RYOML!EWEB?'(/2 M:/4[6^J%>JVQ[LM.YW3K;]>-N%/KM?M/HXVT*4(#L(>X[AK)M@-;/;#-UK15 M5=+9@6VZILW=&CH:Q1:63JF7#0U=^QD,7:O64$[#O,NP5^HI8IUF&ZT*$6PY MM99(1K7DM(+N7K9=VW*[*UI-T=C-=E=O*'DU1P:?N2>P"ECH]T[\&,N!U#Z? MAQOCV+W#$BF+X5WHA' M;SV>\+>PSZ^WNIVW*!+]3KW1JC?PGXU6[ZTG?K0:M7$R>?7SV42!2F"ZY)6@ M:G&/G2,;4!$8I>E?!C"2:5@H:@T]Q)M&"&2WMG#W,5Z#2I?!Z91CN@9OX8\/ MPN=WF-0.39Y-(^GKU*LNP5G454GD'(#]LO=>RVQT"D<<:(0POR[E@U\HBC)0 MC:9:\APO00QF?XW9OQ0NN#]; EORKZR>T:"'%\ ^2L@;=7/[,WS]F9?N>F[4 MW\#VC<]'+ZSSK/-BG1?KO)2=ET:CWVHT.XUFJ]MK-AMO MO7:]4^]U"C[,G+OR@0#9\TJ]:T$@$F?L'VF T%6(8";Q_ATJIOU&_D)$U_6& M"FZ@Y-XX:_V;^WV;:S%-J!2,%<)<;L1BMAS7V*?'LOO?E#,QZ*8_S4NQ1OO52K)=BO93*>2FN]R-NU/] %R5S M6'0<_Y.@6^?7^",?Q2!*T55H9G=]W>N4_.KS'^'U1";C?^+XX4$B?+S]'6]+ M^Q8A8&4R8Q_$K?##*<'#?U)H[=;=>#D#L^[&8\[L&S8H8N/LUG2_!-.-1K?> M:C4P]Z\13^?3_W1YPK=(!IC?Y[,+NKT$+?A7NG0F8E=T%PWL_'\+\,JYJ]07 MK-'B)XWV:_Z&+':CX^F_3%H?M*'Q_"]^J%L\V9E"5&_T6VT'O0.ND@"LT7XY M [-&^W%&V\8(K-&V1ON%&>WF!D;[8W:Q@37:!VH;*SLP:[0?8[2;=J=MC;8U MVB_,:#>WVVFC6=[2J ^V,>/JXL!&C_U6NZZ=UQC*7O=]H]6I6P/_<@9F#?RC M3NZM?;<']Y:,!TI&O)5X&/I^>"?QKG5]B6*L[HM^HD(QULK.ONDFWP1KU&3 M+@F.$HQT(@)U->LOYF91U0,.Z1/8[Y2#"7\M__>7JT]O](7>(GX'O[P!1X"G M'IY]*WXX#Q'U$B^)AW_%H4_WXWKL%^[3_<'78R'P7MQD;F#D!GP0+I7 E^K: M^@YT(]^HW[+.V(I^J)I_8B[;_9K?+&FH

DF"?85''X)TL(1&-).MWRXX) ME6 <^N CQ7]E%^ S);,MAW!;(/%FG9_S>,P^ D-M,VOZQ^M;/>TO8:)N&+]W M"+FKF _&%H8<^\"LX_8XQZUV??YWZ[S9X,P+]X&T'X+N!;OA/\(@G,R,5X+8 M..Y83#C[$+HIVA5K58Y\8-:J/-*JG)]]LE;%6A5K5=99E7/NNZFOHN*?9/!] MP&-A;>$&!O,;W1!FPJ:81#B?UOB7/_6:C>[[W24WDF7#I#87 M)LIEH!X:0'YT!+>P8KVJ&@L[,&O%GAB?S=HP:\->N W[AJGP^F(ZM$*Z(L]A M$QY]5]>]#")H3"2QP\;\5K ! LN%$TG&:"!;F9PN^Y(/XM!/$_%>=UXO-E'^IL!:+NP^152NDXS3 M"VV)TER_&]>6O7\YN?KNZN%[)XS1%B44/ M\!6*1D5GN(+=OJ51G/(@,?=.1:J"-ZL6V:A@%U^Z$B,9@Z1!4V,>,R\U^LB# MQZ"^(N6V0S<#P? R3W47%5X8,A!C[@]136)#*98.JQ>HY4BD 7Q%#?(T&8<1 MS*^@OE8H*T/_LNXZ52M"BF[N S(WT$%H/E'FAGX9A!$,"E?,Y]-8O#/_6#!G M16[ %0!U._7Y[)VDW<8)]:LEJ@\.2J]%0J6=3ST>+7 U)7!S'I5ZV*Z=MD]7 M/U[[[?J&6[56H[N+EINU5F_;;]8%=IS)&"!K$ZT8ZL@CKQ<.7^.8(-'W@B MWEE8A4=2\3.?L9XZ%Z@2+1\D2Q4BYR^S2K'DH9+Q;?R6_2,IJ!VHD,]"Y4+[S9X@#8.GYV9-99WK^B ML,ZR=98K1T[K+#^9LWP5QC&[X3-XSWK*QS@:ZRD_3DB* H*.[K4(9!BQ?X-C MRS*7F;))R%%>A'2>=X^'V0OX$7==& 3A0*[VEN]+*YD[*:]X3DG%S_,[[=7I M(V\'H3>#_QDG$__G_P=02P,$% @ 4X:H4/IJBHK@$@ A-( !$ !C M9'AS+3(P,C P,S,Q+GAS9.U=;7/B.!+^OK_"QY?;JUH&#,YK3>:*)).YU&42 M*F1V]SYM"5N :HS%RG(2]M=?2[;!8%N6#1GGSE1-31+H-^EIM5HMR?[XS]>Y M:SQCYA/J7;3,#]V6@3V;.L2;7K2^/=VT3UO__/333Q__UF[_?OEX9UQ3.YAC MCQM7#"..'>.%\)GQFX/][\:$T;GQ&V7?R3-JMS])IBNZ6#(RG7&CU^UUM[]E MY_V3\FZAX][8Q+VVT[-P MV[+-T_:9TS]J8]0_=B9]C$Z[CA3ZZI_[]@S/D0$-\_SS5_^B->-\<=[IO+R\ M?'CI?Z!LVNEUNV;G]Z]W(TG:BFA=XGW?H'X=,S>F[W?$UV/DXYC<=K:$0[?A M5^+#SWE'M+;;[YLQL1!%%,*)YW/DV2OA'O6\8)[-X'#6XM;MF M6W1XB/\=M1&73IUL68JI@UWNB[_::Q$?7GVGU=$W(/#;4X06Y8U(,H:&1)^4 M-R;AW.;9V5GG57AKKAEI_Y/T;?%KV^R54YOGR/JZX:]VS+1[F4(CZ)/ELLB#>A MX0?PD7#I\]BO'_$DCOJIN2XC>,@?YXC9C+H%D::S8'2!&2?83\Z34L",X[S-3<&DWC5]+#06NW;$3UU(H^&?T5XO"]J&Y#0$Z\?.-L.6 MJ,#'SH/W2?Z^W="(.2)1,&[%!6V^S0&5R19]&'>DLGL]!WO #+_XU"6.6!M= M(E=D-*,9QMS7[O="00I 3 E(#U 804_B%2*13",IU(BD&J'8 UB)/AXB!LV; M84[ X+TAMRE5#:.( %5@-'[>T/*/IL.ZZD"?3AX@5DL;=QJ,.1+5]#=6U0#6@1]WN<15 A7Q#*F@0C-?8MQE9"&ETF;7-,-LD_BV2_V 8?''6H[ (9;4=!2>\"L/D'N-.2+N3IAL25(A M9'7AGRY"\$TDVO@Y$MZD=.42^03BTC#1".0YHV ^1VP),Q&9>F0".9S'![:L M1!%O.H3@8\-J4Q/.G52H1V+?E,N,#9RE.H%P4J$!&HU(I9SXUDJ-M58C5GMP M "UT?J C:#E$KVOUT@-_'PX!"YKHMT-PT .L4N3?HT+U!'%DO4W@:/AL\HB? ML1?@1VS3:2A4$_@,1G7D/S9E96(#P$B(D9#2Z+Y_0F-7.SCGLJMPZ'=/^NF MFX&#\7,HK=F# 7H)3:<,3U&8VT84Y6)D:;'J2'AJ:0VDD"2A1@3#F.X0ZH10 M6)9SAFSNB\-(5X'/Z1RS7;%5"E4C>V;):I\&LBLEX3FJ6,T!5RETX#CR)W)O MO0EE)6;PX\3JZ)&W#RC$?8AOE< M'/ J-UV5$JF.:$>P4M3 #7).4-*.M1AK-8T,:5?4==&8BL,3SWC &/*FX5ZM M]GYR'K\ZS!V;Z27"ABPC*>P "*]6KM:5IAY:)[!4UP>KX15F<4JXUFO:YG=0OQ$B(OUK XN;0!\"&Y[*#R6D:A&U;3,U$9/!JJ' MDN,*S1M$V*_(#?!7C$2'E4G\LGF5TU:O9Z:+#D*.(04924E-1Z'4'*:2H)S) M>OU^NMJ0@T@3)[3,CA67X9W Q71R0SSDV43$*I\S>;''CR@=Q%?,HM@.BTQ1 M[Y8G.,H%R+>U01U2+RPI@U4=C(_,=+UDZXY,)*CA$)0*Q0H!ZDA\W$\71++A:&(@SNK6 M6^\9&D19Z:*CIC!U:#RQS-0:, >OMI&0?HAL4?N'X9W@)?(6F8J(> MMHU8] &UJ/T#VV8!=NX(&A.WPKY..9E*)&&%8J:*G;E(1DJ,A)9&@BKO38J' M(#BBBH4]7]JCB5X.LS*?[)MF>I- "FI+24925..!*)53*D4HLTI8X*F=.U5;;:M$2I(UW?,E/UL5RTFKW+EMW;V9]^?A6_ECS$OH,"-WI:B<0\@6HQ\FQ M9:8/'211:'@$A& P)US656'Y*2Y($&^*O1*W7542U"/DQ,S8:EM+D^OA#7D' M7.0%T%('$PKEJ%._TWYZLTV)41/S/U4G5SMOI2M/'?S.K%YZ"E*"=PB&.?U^ MAR%WNJ)^R!W?3#* I4Q"F>(2(.=)#LJ_4UE+('R7;2H<:_9_72AP(+\)?' MDX16 ]1&?I!0?/"#38QN @[]^A5TS8.Y[*TA6LXKG"?<187:"_K@!V6](-1I M1$HC-XC5'GR@)$#:-^IV5'+P@_KS@,3W^TT!,@2K\8;XGW&?16?V3U(U$>-' M[(K'1 X1X\LGACP?V7+RT[X7F\.NK&!81V;Z9%LDRI"RC*2P QS5EL.:PM1# MZ]CJ93QF( ^JAB^$1W@J0LD73*<,+6;BV=80>F2DB:YW)]89NELAI62JQ]V) MF3XV%S?[TJ:/WF=5+[VE7<(G#Q9VJSA(1/V+Q%B;(/]_03_)4*5WDJ&OU]A(U M5ES&RH"#=Q1!!HL2&XN'JXD_'HG__0W=(U>7VC],JY<^65;)/S8,,(0%!PD=><;. MP/?T[@,7Q4KZ@((^B7/C<78\ZAIY8_50U M4 6U>'A;J%G<,5<6OTRP5K,P^O7840V& DC1/XES3!B.QKI+J-@[.,_ VC Y^<2#WY) ML:EGVC,S?0]S+<((932XUZO=-5(+40ZGXZ[5+T:D.=MH'SN;KX,/_]YX9;QX M83QVP]<<"@S%VZK_N*(,1_G^5SP?8]8RT-B7;RFX:'$6X)9\X[TXQ) B](AX M>*)XJW5(*%YH3-XRN"3W MJ.<%\W.'SA'Q;N$+(25\T76F\??B*A,"H1#\Y&6*!_G:.5_=DB*NVIOU.!J( M\QR/HV\%+X0>W3LV[0@#N11U]Z, M+Z-_JRU/$-1NK'R*<^H&9N+YL^/EFB0Z/#=X0_NT_S6"*$J\6OA/C MX3X0#:03R>Q_#5Q.%B[9[).-,?;C#7FC$;J %$!KRGA&C)/"*6*3JG9_&0P' M5P7C,D%1N[E?"2Q0./7P@X<+0F$&9>WF9S[W(S(_KR%JGC=R>A /"T"-%CU, M)L3&JX?[P/1Y$S#(,\7Y8"4^&HRUPW47I@>0SJWL5#=*P5![8P8+1MQ>USPN M&.[;9+4;+K*U.XH\M=W;5+6;#?F,>3HGCY,'2+&I!/7W]3K*[,RS22 MN S*^LV/LWA!=RVY :9WH>=/:N'"?>1)POP%CL7"Z_T&?,/$%T MZ_L!=F!6/<9+*TG#(M#[\;A],L&"Z+I:5FRSFD&1RQI0Z4#*.' MR2@ VV3B&STB+[?EN?3%+22>SY&GVQ*!*V34J$P2]O1"-9.P!.5[<6$Z@+K+RK<$0_32;A!<(-L\4RX9?1:;'^])W!) M&:,OX<.1,2S0Q"DQ-,T?KSM*W;^+@'\L0@4:?7+K00Q XH%%X<_;U4MPDME!R.V8?HG>(;0X>OUUHBTMH:*.$%@V.@GJC#NL[#!RK M*VNP?O$"Y*YQBH$N$31TA)6(^C\2^H'9-4=H2CST4I"BI EKAQ7F5">P^0C! MZ%);GT59N_E;;PB!(?05L>^ '!BU?GM;496AK)2ZZPYQJ"PH7J7(:H@+K M,!#ASH\V_[%S3_E_,+^4T3X_&=3AK1XBWC;SC5]_(#9>5E=Z!UF/;LH#LXR$ M/>#L\//94F0-P5@6@"MZZCWD?=B^X\X'\9N+_X61RV2ASBI35[=#P5![8X:4@3T%<]D&3>TFQX%Z MH!?/!^_&\!%><&F+*+X4N$P6:>T->()AZ*#A#+$YLC'(MI%[12'F%-1;B]AJ M;U@ZPUZ-U.BK>"_Q&BW]"671+F2)E%U78/WK_+3M3XA-<9C+WE 6YK1QW^!JQ4M7W+I:Q^K MBH1.U)*$!#]W3M#BK7O!HEKOKU?ZE13&><3K[!0!(7O09S M<0GYKZC/5>-.R?A>RV'?%C<,((KF /7(S*:M?53>RNO XF7SVF<@E2RU-VAC M>V_P2G)C2@;A?E:4#@&I?C1G5PPEX3Y?N9WE;/K: =$K.XFCUI>N?)A]3I@H M+>>M6LYC%>7F;[F0C$8+8*0_D>$KLQ%%CZJUB2\%J48^Y=J SCU&C[&/4H:,B]_,K#Z/@4-J9/ZSW(;O^Q5=\ M@UG\]3AF,"371W0YA4EL.L5L M!BD;?/<*#,3'"T84ISMVE%KS;O$3X'.W= O*A=M4M0_;>PI#Z))0+60! MI_CLL?5)8Q5I[ S/?G%N8%Q5PO8 '$I(X XFSR /:(3_H**#F[K<-;>/'D[Y%)Q M^^1RN2;9N'T2[:T.Q=P2;C1&KS4;C"'^10^?7LU,11/Y#[>CYLD0EIJ]+BPU M!_I+TQSZVEUH&7>H9?OAO#"PHR58[\OK_R5O2 MG-5+S7)GN33A>]V9>L+VS*,NG88O'9B(]WDD2HR R!TDG9Z/-:&L+J]V=+^X M="P>#+-RP*B*6+8+RLNIO>GQQ8.7K(L']_AE8'/R+&>M1-Q?OWUK!/_[$R+N M)FS7Z17EW+=3^7XW 8+%PEWJ%OVSB6MWED=JSXKN<"1):C>X\IHC/L)U*Q8, MKBN/E>Q_99.M9=_+F.@3C^,I9N6.:&NEL[JGMS\'MZ,H,V%TGA6X(CC% MO?-\!RDEH_Z-JHU:I=;YB#5A#>&ULY7U9BRK8D"CC(/ R@43FW_[CV\GDV1?HYN/9].?G[*_T^3.8QED:3X]^ M?O['Y[?$/O^/O__E+W_[?X3\UR\?WS][/8MG)S!=/'O5@5] >O9UO#A^]L\$ M\S^?Y6YV\NR?L^[/\1=/R-_[7WHU.SWOQD?'BV><?_RKZ3S/GW(O^I]E)^_>#5#-GSP1P5M_]N+\U/X^?E\?'(ZN?[><0?Y MY^#;I1_L>O[YLHG2V$Q+XMH!I@G2[BRU' MB+\^G4/"?\QGDW$J//[%3XJ*/AT#+.:[#?W15JO(9#OLU\(J75]U/IG%.Q^: M%"[.NJO?G/@ D_Z[H[,Y.?+^=/1^[,-X,EZ,83X"*:*S,9.4%?QO2S!<2++* M<%Z==1TN9R//LA F*V*8E40J[-]))HCW@3,P0&V$QJ.ZA')W<+>(\K*+SV9= M@@[7Z>?/OD)952^7[ MG4V7\Q.H+O"=O[;;!HOP3'OK6(<=QH!C$CJ M(G$NXH"3]2 I=4ZD%FS8$-\F%.'?&45:J*8:;WX_A0Z%,3UZ#[C3+H4EI0QH ML!"JH+=CD,[1:Q*EU3F)&)WS+1CS*+)-N"*^,Z[454<]EBR.;SB+8[R%AP=M M),N,@#6AK':66(=#IMDD+56.B88F]%@):1->R.^-%W444(T0+^=SM,A&443& M,G?$"YFQ;W1T;!#%@]'.4RFI,$ULBXONZPSB:MM.*CNOG"":T4BD38D$CU,, MC%9!"YQ9VK8;RP!-I!UT?)^VNTNX&E,_PGS1C2,Z$Z_\_/CEM/_KS?^"$=<0(M=4L6)-2(0AG#* MB; 00%OP81VH30BAOA]"5)-_-4;\8S9+7\>3R<@;$,9%27SD'I88) M8,Q(9:VBK(7VKP!LHFG]_6AZ)[G6=8$O1G';^:(A:HTH>$R&R)@DL5YR BE8 M[;30&MIYO_?1;*)O\_WH>W^)5U/^;[,%S#]"!+1,PP3^T$89V=H<=\?(X".P!(E1@F%^E.!.&,5 MFEG4N.!Y5+;)X=\*/$-RC_?FQ -GN8(.FMXG]'.QQW3ET8-E/CI(N*MR-,"9 M=20D;]#!UTDJFD5N8]]LA&Y(SG)ULM373S7J_#$-N$OW%[D]Q%OC'J60M.5CE$JZ#-FKD&TY \YNHTJ:6+:N18-!!9R(<#C@KJ65N$JVV'M:0CILKTZ.B/II<1CQ 9%PR2DM/@&; I

Y&:L&03<$,ZP:[,ENJZ:>&BO9RF3XM9_/-X-D%9S\O=RN)\%)E-)B(, M;[4A4N B9Q-/N-)9Q.J-]JIU1/%28/L.?,E0A:)>^3Y2RR0B57#$T2P(54F: M@/X#@R:3X['!#<9MVY\A]R?&GEIH,0U& 2(%226A*;OB07+B/#J43&J5-<.9 MKYO5>^78QJLE6,1,HU6).$5+U*9,Q&H')(L0?98BZC;; MXYJPP!T,@:7A52\7KWS7G:-%^Y]^<@:CV(=)4$.BBD7:VA$+/*/(59:),QIY MDPC(C= -:?W;G2$/K(#JBFD4.#G*1M$4<2IRFGR9TI0$4)% ]EP[$:0/L7UP MY)!6P7HLV$/4-8^@^K/3_@H"*?E^YJ>W;@M^@\752(.A$)F(),1RJ100HTO( MQJ183D;$E(UK>9S]*,(A'5'5(TD;!57CS[OI%^Q[UIV7N"M;,!M]-^C;'V>)#B$QOO!Z',WBJI1HXEAS29>Z$9[C+1HQ#.GH8D\>++$[]I)\Q:NNDY/9]!:*H!-327MBE.3EL2D0 M2SE:.TXX\%DSTR:J[#Z0(2UZE96_E\SK69@IC0#6L#OIJ_\Z7CA)Z,2 MF($(&.$QHW,DC47G*$N.[ MZ7AZ-,>-_NSDK(_V>@UY',>+$0>+OE!F! MAS:D,XO*)*FLEWM\^=N+^Q)[CU\W2Z/VP1?3\!@68^SQ+J1:.=7N=G&0!&MK M1M4F-=VG!?Y9WFK.9_DRN@I_6DV>*YIO)XIJT+$SFS;>GJ'>;C:B7R#/.KCX',XZF/\ZGLXZ-.O>31?0P;PD3[C;RH75 M]RLLCF>IW#O-%_WN-HH\:EY>H.8D<;Y**#/72O3WDY&40E\"OUQ??H$I^A:+ L902CVN+>5@PH1(@K+X)3 *EFE+94/& M/L SJ"6^-KWVDWYE*AR&ZS:'*(051'*6B4PEW%%G2K0*-#CM7.9-'FD]V8)8 MQV,I&?*3PS7!YI*=)S$@08(A%'SFCIM,X6D\EJ==[X?*W)7OH794:=70HXL! M72"YDL((]QK6%9%N76S M0/TVF\[NYZ6$.Z>OA>:%=1 MT>V.+&*TB4=J"4,L1 H1B4T:B GE+2H3#BVOPQ]9[!"< !/\T=$_T%[L_ 0; M?IE.QM/Q?%%$_^5:Z%X(X!0G.],JEDB,0%Q&S7)C.'H5'F=\DQ.:S> -R838 MBRD/'F35UT[5*?%[+ID!^Y=(T'T91YA_FDW2*$5J.'H8A'K-B$3_A=B(K@<7 MPC'%F=2VS6N6E9"&M/U794@E+=1\N@+83'E9\QJ^P&36)P2](BK7%"2CE#": M-:[=Y=4N]%'3,B:C*6T4&;06U9#VZ*K+@U_YWK[06Q*TUN*:CN9?6US^WO3^B&DN6(LE>Y^2V@J=O"AFWT98VN_G/^!4-Y- M+PS?^>#ZK4Z#H)7'"P)<,;RX23TL>5FF9H4E0WR;097.(>T=^^O-> MZ)]G+R/RMH.5Z:!'SCCCT2PGWAB#_J(-Q&L:B'&,'.*B8^D8T M>Q! VD:!-:\*EXGA^NSKEA@,0WN7]-P6=) 6VYE#4ZPKZ\2K94$8-N %,0N6%-+E76W)L^^45="ZX\>%2PLQ:J MS8K7<-I!'/="&7&EI+,RDB!UPDD?/'%.HPMHC'*(*LHV>0QO@QB2:W4@&NRL M@[U94 RPT4T%CMEU!8Z7)[-N,?[7!23'M0# 70&LP[W >!R;" M(E%X%7@,F>LFF\1R.$.*KS[0,E%!+Q4S@W?@)^-_0?J''T_+]O7[]/:!O?(. M_7[!B ^EGA-03H(52-SL*6YFU!K6Y&3F$5Q;/AE_$KN\-FUJJJIF3$=7%K_7 M\FX+;,9_A# M,*FZTAK2:655A5' 99(%ZTC.L;]+#,0* T3PC.9VUBZW*5RP!<8MR__\H.2J MH\(Z-O)FZ*ZS?EX5:[@],8+0ULI2Z4@%!&U-,>PE)UJYB),BRA3X1E;T_E@V MX9?],8RGI]!>PV7M*FE0$0=/F:I0TKX U02=1E^RS+CB(020DLI&)9O7HMJ$ M6NZ'7[IV55-#YESF%7I]^6&6"$0I8E$0XGWK-, J.N'+_EH)H\ M+-P&Y$;<^D%.SYLKL?46^+! T8CY\D):><(9<-RAA2 !DB/@N6+&!:KI@4Z[ M5B#4[_*%(@PDERIGS>.!_,75 M(#?BV*&2NCXMQ_97XH&/5Z_/3T8R9:UDL$2D(86[B?71N;W[C5N?_ #=N+P>NC_.RW0E M;[[%8S\]@H]H'KS)&6*?3CEDSAB.+ "1D9:*7E2B=>#0O^%:AS8)9PX[S /& MSXDLJBCT([90<7//?$3G^&R?4G 6@L.M([Q7!;J M&C@UPGI-E*&TO(1 ?"%'$A53N.#EY/@A.?IH1/43/S+Z[CFZ+P=:<_3B*OW> M1I^%DEX@C40H;_ 1FK/:EB=7/#+#,SLH1Y= '%+$WO?/T7TY, P#;*1LC,(% M0VP4Q176G-@0#3'.:8,FI.9A>/;4@0JS*9L%SYX(KUQ)C&J(BU+A8+B6+ 6F MV^27^>X*LQV.@3L6)7AWR%^*@] MLL,KQ&X6 5*?C*1_2OO[:9_*Y,TWZ.(8>QW%+)AU@A)5\N%+7RK8XM!QV[<. M)S^ :I.<]U%D0UJ]&W'J8,G5)/BQ+L"'EKVPX-P[A#*K4;%RP#M M_J'1AVZ,@C@MM1TNAC#*P<>0:28@(\Z.*!%,S-GOF M)Z]+:8Q)/9G<:[:5A-:AWUM>N!*.Y[/\H8,YLKE'[*?I4YF W?DL?QH?3<=Y M'$N.@(NX()Q6'V:3<2SFW Z"W*N_"A*N-]XG%?U3J6 HJAB@2O9?9"KV_L3J M:;ID79:^^ AQAA!Z2W<'82]II8+0'L/68/"?+QX-51'!YUL/D&H+8AG.!N)X M/9[[HZ,.COS%+GKYB3VFY=9]-!'?-N-J(-:K.)3YUUN!*%6%NK:')B+=?$P- M!'I3S._=-,^Z"W^GJD#7]M!$H)N/J8% [W[G7Y!>GW5E2^JO#JL*=J.>F@AX M^S%62H:W-@SM :H^A9@VRI!@DB*26DVL1+^;=R!"";90P>1N8>[TYONKJ MZ[*N?H.O-VJFM#WMA\>4 Y'_ MHF+N^ N\\HMX_,?IR_3_SRXR\GR>70[@:MAOYHLQZ@M^SY\[/YUCDSC:#]TX MPB@K;?JYK*G%@8G,25"BW!HGK2P8K7F3"]D#C&U0D65#F0B'9TW+^X2'V]32 MB5W5LE[;0Q.+>O,Q-7!9UG4^8NU%BGT<7*CWQ[6W6'^#Q60VGY_"Q=7N+E*[ MWT0%H:Q%57O,NQ\!+F^H_OB;'/[=Z^/E=#%^/9Z^^)"]OJ/[XFRS)]_HH(5:SZ4VUCEL_VF?^ M;-U)?>EM.[+:DJU]?;!-\_6E><"+@[=^W/6/!'X%/S_K=M_EEC=4038;(&PC MA=W7K'7-M9)(D_5K:4^?XC&DLPG,\F5D8:'I?-&=]3^]_&3RB^M?+A'K41U'L,2_; FJEFS82JQ#>,RD^Z:=C@+TVH*7M5 FY>0Q?$Q'L/N_7M-9( M'$UF_;*.;B4)KLR#L 0ZC(GTF=*+/6>J*"- M8%P9(1OES5F"9D@7L#OK?UD-\OWD7C&ITB64?\ZZ/TL6UUF$.6*)6:N2VRFK MD@P1ISJQ/ 4BA76)^3FV;+>]JJCH;Q53 MG,*BLO7P2"^-+(EMQE;)JEA9H+)0BW.N/0##U:!]C^Z4H#0F!R59);@5JAPV4-\-DA)I 5<%@V5*3?)UI#L MD&J,6?*2N99FJFU-+V.\B#> =+M"(?Y[ KW\I^EVL;K5Y5YSC%GBZDF6W.H.&LEPPQ%5,C$>]O;J(J?O"->L*%B(!&=#)))G29Q5KKB@ M$ACE MKD4EF):*]8]"7-O#$-0LZ/$:A33L;DM%0AP-W L5KB[NFS= #ZV897>K^ONTM M7 \8MXF;K-8C:WAPCI>R;1Q-F6V2TMJIJ%HP:@N,0SI*:<.H5@IK M:2KVR:/"@_1&.]@X*UJJ8,QL@G%O&W!Y)[M?WZUMKYE0FESAK>AJ[UB]C=IM M)ZJ647K+NUS^W\6YS6K=^O$HBU"D_5 MH58(FEW=6F4QM V-G9VX32 M/MIH6QFU";%=TU^%T/1-&V\LN2>:@WV.OU>S^3ZW=MLTWU:*ZT>SYR%:?]1Q M.S5BZ6ADK68J)4>8-:[<@$AB>2QEL$Q,.5"P0CTFP*4MU\RU^;&X;[_G/^;0 M5TJ]?7 ^ L.9SR"(U#X0*54D/JA 6+00$G4^\=S"2]T0WQ".SO;7_+H,F[64 MTR1+Z[OI CJ8+RYMQ!&5QJ%",S%&I%)'AY(094#],BE*;?'LF^2;7H-I"*=B M;1FRCQ*JL>)F6$)D::EEQ*3"3"$X<1(4P9X5IUYQHYIDNJBV-%X7B+H94Y": M67 4YQB+1#H=B)4XT9*FTG'/7;)-@@T>0AG"@K>?SA\

TG[KT9O'QRV:(,-DCCF1(<-Z2J#6 MMQ;X2ILW$][2K^? O<77+75Y],Q[HJ?H3NYP>&M M4EEH(%8'CAMD*45DV41!"LEUD[H^#Z$,Z12]SI3=4]SUU'Z&#N5%Y:O9 M"8RBIK@X4$XRI:4BB9?$J:2(L%9!8%:KW*0H]5T8FZA;'BH IY*^=Y=SRXN0 M-:Y>?Z]S:1U5>0^Z8U=M'=K-1]GRD*"O.>#'"1'T6&YRG.SUJGFO#MO*?=L1 MMY3^V[/%60>_CJ?CD[.+]?BJ%$,;X3_>7UO9;SG>2J%1M\VRY82"4D1ZF8A5CA,(BFD:F0C0Q$-X#%A-;_^Z_3^F:3SODYQ#>O.MO$=Y M>5*^&KD48J"4$LUM">/1E-@<'0G),F&YDH8UB1/;"N607*BJO%IW2%!7=TT. MDV[JN ?*M:"*$ZVS*SGI;"E4&@C3'FU)#3*&)C'82]$,R6$[/%VVTD7%TZ3Y M'.#NR<#2\28-T<90H@5QJ#)Z3:S7J%AOG4>SV)%[+33',$S]&Z7:_ MY[>XUOK)?X/O1EY[+86()'E:SL?0_'6!2Q*T9-2!\;'-GKD]U"%MF%49MI%! M6D^+;9V86T(HR#Y_G8VLY1"R,L3*:$K%;('_LIE$X2GG$0RW33*F;(AO2+OH MT_%J1WT=EDS(#O3UP(+2.1'P&@V(S!FQ!@V(%(T5 A*7[$F.G*X1#NGBZ^D) MM;7.#DJIM[.S;B2RM>!2(AD$FH_*..(B2))S-HP[2%0]B3EP!7#+J[4?FU!; M:^RP?!I_@1$-F0?A!%$4UTZ)/@XZ.\(3I7$=I1Z"@.8EN] E/>"N$0-4<%GQKTOB96>@E1W4&["+/U_@5F[ MZ^[PA\G*&47+LTXGO"8R.(O. R1B'8.LM<.(A.3Q MCV!(\"D2:IEED6G1J'S9[I"'Y"4W8>!6Q\KUM'OP:7GEC3%'CA\;CW0(%63*XZMD0[)RQX>X;;6Y9-0KO?ET%]+U'I#>#D6D$!5":9EA)JH MHZ92Q=S$6]H6Z)"\\,$1;FM-/@W?BC&.UK>'+!))"4DAE>0EX ?I =3RH(.P MNDFPUK9 A^2E#X]OVVKRX'R[ZP&::++ 91@7X*C*N\5$0M22B*C*@T7II'Q2 MT@W6BQ\4\W;7Z5.^![CU\X9/ 9;TG=L=+M MBK8J"&HSG,W$L7_.B0U;;BBJMFF6X*A/%0VSH\Z?'H]C27N:>@Y?5LZ]]99E M%_EMUT&-9$J[C^BPTMPC,]H.W1Q:LFWRJ&V#H'81PGJ='UH7!RQ@N!6NRP]_ MA-.216-Z="CEK.KWT'K9:/R'50F:,A$_W/5??!S/_SR43E9V?&BE;":!PVKE M\COS<'[S^9<=^$,IY['^#ZVCK>1Q6%6]GZ&C5A)J]_F!GDQC&\(XM.)VDARL->_1U:(VWK0KR<3&9?2T0"]O>J S1#WL]0\SN)=65;%42V&7_R M^L'/%^4$7AL7M,J1<%FJ,C*IB$TV$ 96"V<@6-TD#]$V((<4'E614DV2CD"D]"@4YA@!2$F$%)+43>KM;@-R2 %03\VL7?36 MM'3(69C#_YPAI#>EGNQNSL;]-FHX$&MQ[>^/W6N^0AV,]2TV$,FFES*7?"E_ ME%(.?__+_P)02P,$% @ 4X:H4 ^(39PU7P OT# !4 !C9'AS+3(P M,C P,S,Q7V1E9BYX;6SLO5MWFS>2-GH_OR([<[O1P?G0:WJ^)=M)QNMS8B_; MF9E]I54 "C8G%*DA*D++E7VM:!!A[44P"J"H7"O_V? MSV?#'S[A9#H8C_[QH_@;__$''*5Q'HP^_./'/][_POR/_^??_^5?_NW_8>R_ MG[U]]<.+<;HXP]'LA^<3A!GF'_X:S#[^\%\9IW_^4";CLQ_^:SSY<_ )&/OW M^3]Z/C[_,AE\^#C[07+)UW\[^;MRT1FN/2LJ&Z9UX R*$,SRE!1Z\"CR__OA M[QJLC (ERU(CTTEX%K(R#$'97!2"YWG>Z' P^O/O]8\(4_R!!C>:SK_]QX\? M9[/SO__TTU]__?6WSW$R_-MX\N$GR;GZ:?7I'YV NL^SRW]X%8WY:?%+^NAT\/?I M_-^_&B>8S>FY(AO ML?RP_/*/MR]O(AV,9C_EP=E/R\_\!,,A(9ZW,/MRCO_X<3HX.Q_BZF\2XJ?7],5^VQ3(6N!C.>D1\ ML^U>\8[/8-"G@&\TW0/:>4/L#,\B3OJ$>JW=*SA7(-<1UB9IC<7/@RG]??;3 M'-WS,2W#;^ #WHTLY<]35M=3KA8S^%^__N,KW1//@]&@+AVOZ-ME"[6O>P'! MSS,<9\V\=(K)XB(8"Y+6T8V[T'P' M*C"-\VUHV0-M1R+\A,/9=/435G_"N%A:=O^Z'CF]\CP;]RC9!7TT@!]_&$\R3O[Q(^^)Z5]HW#1EYI#^BYR^YQ?3V?@,)S]_ M3L.+ZB^>3*=(_^7W\/D4A:3Q&L>"X(GI0."]CHH%! W%.1'=9FNK'V78!>OA M]64_@C=K2S-V;BJ4V%>AE@OLZ,/S\70V/1GEGS^?UQ7YJT"LT%*$8EDA2XCI MD@.#)&CZ8!"@:3&/DK=0GSN1??.+2[^R;Z <%=?K\NMXG"NZ=SCY1 ;7]-UX MF$^#L@EC%BRJP%E%R:++E@DO@C7*E\A3"ZW8#NGPZM S?^,FPF^@%F]QBM3@ M1X+U@E:\X?B\SHGEX$]MXB("YRS:4,ZB&R@S79S"ZK'IAS] M47!3/^2^^O$.A_2K#[_BB$0P)(@G^8SD78<]&WS"%4J>C)9*&N:LH)U61\>\ MY.O137[?13'BP6!JRC9[%H (3 M 1)YD3Q%WL2360?RV-1A+T'?)%[W9H>^'"6RE5^-IV1;%>(&K&!R;AH[9Y@O M-C&G-8J"2*-NLD!LP/)X;,U[RK?!-O%R] FGLSK$!::7HQE.Z">DBES(DBQ+ M+D:FP486"JEY\D)G[6R)MHEMN0W0-T]^+Y)NL-J_GGW$R>_CT?BZ?>PV><_C88C2>#V9>56M.V=KV5G__W@G[]&\X^CO/7N3 ]%3%Z M'P-Y3QHTTSPK%HM*#+63R06/ 66;A>9@8_SFM?6AZL--U3?]J#X-83D5GY&M M7@:S4W+KE::5F@E-UAVY5^Z'CW8S$ 9SXP1$JS/T@;= M@O([<'WS2M"GW&^JA=]7+?X+:TXFYI-/M*-]P-\OJG!>ESG4UQ>SFJ]8#XW6 M49-E9H5/P"('60^J' .'CD4GB\08$)-MH2WW@_O-*]$!6+JI6V'O4.Q*".\A M#O$4/ @(A;8TCN3O):OI*X<,,_V9,W#=*.1Z#4:/NG EV;6Y!NPARTV',#\L M4A?_GH;C*>9__#B;7.#7'Y*=BY]G/P_G'?[CQRE^J%_<5QVFD]GIF\DX7Z39 MZ\GR*.GD\X#D@8:+E 1#[BW38#+MB":Q $X702+!T,7*H/:O* -]MZX(VP#T MJ JWY!C?HAKWX'+&+^6K9"=3I6J)S3X3?1-/G9K M2_LK MY_T0=9/UGJ1\,!6@_<;R7"*36,.])D@63 JL"(OD]9"MH[HH=#''ZV]PJ.I7H1!0(3"A.9@=(RP )#AC@8,FS5; 6.KV9 M<[JE[<-9>4;.NP]OUR( MDJ,/EF7:4LBH-(5!D9DE'D-P6;K<)@F[__SRN;3>3V TA30/N5^[,_%B,*T^ MS,7D2FJ"XK%$%Q1+T01:4#FMI5$[AM$Z7X32134Y6=D9Z8.(2^RB*3>]TI;< M-$AA?SE*$X0IOL#%WR]'-R?CV_%P^,MX\A=,\JG@2;C@--.RGD=JP5D0.C$7 M,FC2CK4&.ZCPN-[T2F#OU(A;@0C%7+&=:A&K> M23(O:-^LR\ M59%YHYR0UDO7*@RZV;AZM+JPG^A;I"971"^GTPO,+RXFI)UO<#(8YX72SG_Y M^GR^EO[\&2=I0!;D:<@B>P6.R)^Y!D8#$:$17HX!OM4;LB?9*JUA-Q M#9+F;IT;\WR_4PT8HRJ:J:#)QRA*,-IZ8\WS%U)B! OM/+);H3U)7;HO-0W2 MSD[R_UPL,^#>CT]RG@L?AF]@D%^.GL/Y8 ;#.=Q:KB@_'Y_5I*EYZMU;)%%- M!S-%\QIQ*[K36B084)(DO)<4"S0F&X*W78,@4:'(!N?7 M'K?B/BBU:)!NMYB!=3@DK??PN=[4KH*D*4H_6"4*71_9:>8FDMAH85=0F#:D M=-X@,))G=(F^YUFTR!^7$KX*'(;)!Q>#TK5OMHM2'R R='7%OEF>=1 M,!GI?RG6DE=-$@F/G&E\2%VYO\!;Y 3>B-!EZ:V,MC#JN5;T)%,T6A480- R MJAB@-%E;[@B-]A+K(U:XUS$PH0HM^:B0 ?>*C&M/$RW1B$.[\,TML;Z]2FVK$)U0/)]MR)[6V*L[?4 M&QQUK&%:)25V +5#ZN?NUTLVH3IL"F@#]M;OF/0F^H/I13%)"Z\L*T71-'!" M,B]K]6\MC RU1&-I<]WH>\2@($$EX06P;0)9]Q &;I14V4>\#3)MM@3MEN",T@(X;7O> M5?.II(JK)KZ2"^JLL=JF1@&%6U ]!CWH3^Q-:K?-:'R85W5O#]SD'MQ,H+G*;)8'[* M/"[/+J:D2=-[$;"YH?UEW0'@FE@Y*N^BX$$CZ!KY!GY-UF2W9EJSR&X51@?ZVP6.P14DHZ-$XS;+ M>JV#?8W-(?UTO*@N>#*9P.C#8GJUX2FM]>N7*&^MM@B-,9[59OX$OM\^1L?#&: MDI>,[]7CXO?IHFK5VRZ@!(_W?+5L' M^>)B435I-B:4)V6&DTO8)^GC@#Y?H9_F1,:H(JA"9ZR6CV">%\],-+EH(P7X M<$\UZH;@NUHU9*Q);.%FO?M7 XB#83V$D2&5**UB@J-EFD3#R'P&9LFP@JP5 M*&B2 70KJB>H8OVSU2)'.WW$?#'$UZ4'>2TB_EECJ:>8+**AR2&*8L%DQZS( M(7%RP*QLD?Z>;4C<'(.D]F7W^%L4<* "R>= MTIQ)0,UT-(J!TYE)LC5*++9(VV5)[53-81. HYWE'5D?QCWRTG/IC[=X?E'O MO4_QY,,$YX-=A[@,;'4!V7?(3)&22\F%\P?SXFP$MLP3@5C >&JDC"E@T#2[Y#\*88FXN M&#O1?T='CX[Y/@7;PJM?'%T._EG/.J:SZ>ORQ^A\,OZ$^-4. M/9E^9DOKR?TU?]@FLU7RP(92E:.>2W)&4@ADZQ\J5^E M@B%:*9LD9#88RQ.W@1^*EC2(02RAK*I%=0#3,H/N&IKC9,X=G>-QWP0U6"ZO M@[(6+(!$AHX3%%JM60A%,!\$CT&+)&63&[<'T)8[\NH>MK+LPDO?QO3S%_]M MA= KM;6*ERPYPVP-TYD:_;P<>T]Y#ON13@-DN?> MT^=>ERM[YEP+:[X60M#,&<*C8^2T89(6CU7\P T-3 T=H5ME>#3Z,!F60@"972C6$5NO@C(>#1([ ?;(P]^IO__3,_H:[GGJ, MM+IXQ24JJU7F42BG2TC)"V.5B:=]#?Q@[!Z+Y0?"=B?6HW.(QL7L1-#)H7?. M0.!) #>9V[(7ZT=E?_]\ZQY[/ZXF[)"]+3RB,]R;HJ0.KD2;>0G: ^T?SD:[ MES[TFN3]._YUI8?)>$1?IL46^7KR_&/=MEZ.KGYB,$H#8OW596I0425J28Y? MD5E5QP\9T/;&3,)@4N0H;)/,[KV1[UV#9?F V%L\K\&OT8<_2"&GIU%E^FP) MS&I-CK"QG@4=ZB,(@,'Z**UK>W DN6912,N=U#K*^U]ZF#/$*P%/1AKT$W^ D\OJ2 M5(.E[Q89I=-3)#L!58PL22 /4\3Y(S:U_*P.W%0+PC?)JM\.Z:DI24_D-(@_ MWUHF[.OS AHDC 0O9D MT7.I6+V!Q%12V1=1A&CSH-0!>.]:[ZHQ[;M(N/=T]?$G'#X;C&ME?3B?I]2N M3F1$=$:Y2/8[3X[I+ WSKK[R#.@3YQ%M7BMRLRU)?6L?1W@%[/Z2'_<*W_WNN-_YZU?A7_UJA,T$%SQ*X4E-'R8 MJ$-AL/=,R M*9*%X\PKEUDB^RY 0"/77X+OJ[+?SE@/O^7VJDDW*P"V9:M!TO,6>2S" TY% M<@RL809!,(V>[ =; ^%.&(^<5@G5Y#WKVT =*N;75%%ZD_JW$;&+'$FOR9Z% MH#)9MJCJ>["9OK50K(M>/Z&(77_<[Q20VX6#Y@&9+F">=$!N)[9NC1M/5J>BJX"2 M3"'K9!C:S)DVB8 HG9G*&J32L=Z8[W;M;;WI8P=M=I+SN#J[R\V8RSA=I]GJR M?)!SOKI8:VS6SC$HM;1$$+$694,F-4*2RHMN[YIW*NBS"<"CL;AZD7"/F4-7 M\-2+*DM$TZ5N=P'5=^FOK6@.7^IK?Z)NLMZ3E-M,^@W@HN01)*UG8#*! YU8 MA$P[C8K90TC9Z+YG_J&HOZ5TUX&8WT6X?9M:2U3O8'AYZ&.S%P*5IUUL?JC+ M,XO%UFQ6*2/7/@7>K3+3S;8/6XRI)XF/^Q-7_\6ZIPBUWM0HOZ ]:3@^K];# MR?0,O!84)%M$D5?(.[W&TVF!WHKB4=EG M_FZ-859+ M\AESKL&?[%C)7"6GG->Q2]V&A\C_+9;:(>G?1<(]TWYRAA-"903W/!JC@M$Z:0>0 VVTV2OC:_[BAO2NKH/;DZ6O+ZF^',US M6N>I97VR=&L/+5CJ/J3U%%.37$DE6X%6:Y[ .AJ7\29C0F/T!I:Z#FY/EJ[_ MY)^87UQ,ZN4BVI3'N5>V.O74@K7=A[C&'@H?8DY>&Q>U]. ]>;(^0JC'?*C< M!O9V'>R>+%Y)&W\=AX,/_<^U6WMHP5KW(:W/-55H1L5:@0>UE4@^A@*7R/F0 M((Q,&]BZM:]>LCY?UH[(#SH_'])^O>R35.'YQ=G%<%XH[.=2,"U*D:W$M\Q. MTP I@G;,(;E,&JQ@WAMD(KD$/(,/O$F5E?VA]Y0R^Q:K=;.8/C=Y.C6Q1$=T M,Y-J6*ED)/F@8TCS5FB$8MIDH'1"=_C3\ -KW);$V1XY:^#F=0+Y\^=SD@_F M]X,S^LCK\HY^.BV+.H$+68I3D9*3EOQ3,/4(2GG+@D;!H 3:YE&E+)K45^QK M -_5\Q#,-TC"N[<8%Z%XA!2*]I@_"%>2T*4URJ+$+N>,_[FTMP.B3W=Z5 M[<+!P?)?NH!Z:BE0.Q'5*1'F/E(^F HXR)8\XC4[YH"U3_SNPCW "E0D@>!HKX<8TID.F!DP9'?8+E7Q:$)#M8,[&\N M!6HGB=^1 K6+N(Z1 A4)78XQ,V-B(*LY((L^)Z:2R[E(RV/N]M3D-Y0"=6]^ M^Q9H.S?D_N[4NQE,9B]@MLSH-$5$-(7E7)^C]>^C]^#KZ/?3^/?3^/?3^ M/?3^/?3^/?3^/?3^/?3^/?3^/?3>)O3>9Y#R=YR1W3@ED^?=1YBLW7SN%H-< M;V+_$..MH-9?4)7%.BY2*$%JSGE(*(WUNAI3*+D]O07>/I*Z?PWFS0WU+K4. MU9=- 7#"RZ1%IO]JW7>O$O<.3+)*^W79[5EZ>:VUD]%L\&(PO*CF\3M,%Q,: M,LW"^V>@[]1^[_+>83AK-' K(J^%!VSPVH()//*H2)U-YN!1K=-P>T_[!2IJ MV_E&VXO2M9@7I6W/SB]FR[OZ/\.DAF6F;Y;0OGK49.G(Y!.9.EE),G6L9QX1 MF#,YIXPNT(1M$;+H:P#[1GSVQ'%R5I_L.8U!HY)*,5$<&8QD.[*@/;FF2LBH M4K1)-'GQK1?T1WBR_1C:NQX/.CSS#4+N[])'S!=#?%WV',XBT"%5,=YR18:N M,63WF,0BD@ODGAQD?4@&.'.7OBX=F7S0TL*EL$ MGC.HR!0Y>I]#W@]&(3IJZ)YW'4#ME>!*)(Q/"TG1U$%@0VC.1L[6< MHXU@'H^ZW5%?_)O5MEU8;%&??C9.?U;1D)P7YW=#&*UB=A88",WJ! TT3!;L'T4#RK^Q)XX^F*?J2_U0_J,V+Z?#PD!1I/YL>Z)Y-) M?6-W\1;Z/4)6VQO;/S[5$>A:, I\#E8Y#M:A%B;X@AF\SXJK$!W:TTZ0^Y'H M>\)V <,]0H)=FVXH[=L&L9X-6X3UEB2=P.D0($CK("=#ZU41H-)VV:]ULM]B MN+67DU'^?3Q*6WX]3VY89%U-O[J@,649BPRL&".8]AE8-$4SQ[U3"-QDV63U M[',0>YZS;2JF1+ON_' HX>#3,A7$A:P\L!!JO,<)6N*XY4P"Z!*T-:YCW>9N M_1U^!SF:5JT=TO7.1H/HVZ;GXUX-( Z&@]F7&W6"3K.6,9;DF,LD$AT39^2E M9H;2D<.:3!9:M9ECN\!\@BIW #X;&,.WHCV-,01AN696EEHV/9OZ3$I@ K(/ M7@?#=:,%_194WW6K![9Z?))DOM:^Q\G9ZW)-4*L4\#JQN" MIZI@!V'LIIKI/1^QVS ?8/-\>'U>!P7#GZLW-[U,_C[ESI0(HKX)"S1-HI(L MJ,A9 41=%(^X?C-YZ[-W>X-YJLIW:!YOZJ%IYCV>C$;D\W_U6EZ.T@1ABJ>@ MN9%>#1>9MRWMN7W-;[4]6TYDS=5"W;U-+_>GGE.%PU,AE"?*K.>1 ML'E>TUAQ<@Z3V9=Z3KQXX=R5 "):IF)]*83SP**(9._D*,C&5DJ&+OG,G>X" M;@)P_!2UX^C#N$=>>KXX^A;/+ZI/-L5+1VP=XNI=R X@^[Y+W!G=X>\6[T_D M^% L'$UE4@A>>C(%;'U%5!M(Y%IQ9$KJXETP,6.7PXIO055NN8M\)$W91?A] MWTW^]=W_7280E6)D2B"9J)45-$!@X+-F)@?ADD=I3+>#]B.M&!:SBRP84Z#X MHF,LG7CMTMNC8[MW$?=]L/IF/)F-5UFW2CL/@($AHJS.!2FC=ID5R]%$[XQ- MW4X0KK;ZZ#B]M\CZ/JW\??R)QC18J1'W47E/KF$J]=5D)0J+*B%#)935622G MNNV>U]M]=/SM(;;>S_G&Z>-J)W *I2-E8A:!+'/%@4&FI2"C3E9XKD/L=FY\ MI=%'Q]U]!=;C*=IR%_\3,[SY"),S2'@QJT_K/A_3.K^ZO^!J>0?:QYU-NN;R M9>:#).LL PTN%2%4\&>C2;+T$LM;$+C-YCDU_[/WST\9X, MK'.XA_CZ#BI>@6,Q@5,V+>ZQ:9%LK=/'&= ?LOA,1GF7A/J'P>(M@<%^2=Q% M:CV3]QM)ZNSB; 5$%HQ1$OHX_;6>OT$&[RVX M!E='WM/G7INI/Z9Z#$!=WC*_(0S8//[+I0-(#T^O5' Y 4XM2(CO" MUEI9[4-@GM R791E-)+ %&3EA0E"QR8OU3P(K;JCT,CQE6H7=GH_\<+T<30> MCC]\F0,K.+FRIA/P47XU2"3)K]&1U4R@A=K:J(CU0@)")Y@WR3"1A AH@DU^ M3:6VWF^['X(C5 YIR>OXT*3T?>C][N+\?/AE'5$RDFM>@.6DH!9_+,QS&9E0 MW!B20T#9K>[VQN8?L0[L+\Z^EXH[[APM$>;DR+S7JKX!0@BQ%!8C6&:=E>BL M34)W32WOT-TC5H#^Q=WW6?N[&:U'^&&0KJU.ZP@MK3S<&L&,*I:\02O)M,^: MO$$P#J4N$KMM%)VZ>\0*T;^X>_1[MCX4DG.@?G5BP<: M M24%?\8^'])[2 W&2>^&EQT/^VU^LZ +JJ;VQM!-1G5[:N8^4#_?&DM'@4M L M &UCN@3%0E"9D?4*-KIHK>GM7L4#?V.I?^9W$6Z#L,5OA&&&H_KFY2I+UX), MII"'@D2-1FL(6H@L"5><@T+&;9,2/#>0/)@W>W9A:-RG>/OV!S<\$N6 %YE] M9MS5D+XB.-Y6%P9!D$J7+%TWW^ !OZEU#_[Z$%>+EU['7V X^[)*"O0)?-*6 M94LFI>;9,4]#HA6I<-#"R>)=BYEZ#<6WS/+^8NW1?[N\9@KG@QD,:ZVVY^/I M;/JZ_#$ZGXP_8:;!D[6[7G/YY&Q,/_OGW/-X]F7YF2^O)_35_V!:A$Z%X, 5 M>!:X]DQ[()?4TK?1"DS"&LZQR4LO#<;RQ)V'AZ(E/::HKH:TA+*@.H"UW MG)D]<&79@9?>;VL.Q[%6K[X,V"Y+<6T]LD&P]8I,JM8Y7Q@ 9%0 $]RYG+U- MH6,IEEU[/GRD= ^6QH<2<=]>T/,7_VV%T*LQ*T@\*,F*(9-1%T_^F,W('&CN M$()RHELL_%JSWRR3]Q=.W].V6VP]V!*3S):1P5X3]7U]P0&08?39V2)LSG?6 M\7_(1QD]T=J_,/L^N>IVMD;*""ZJQ H2.,V394$59")):PN8*%+70O8/\BBS M)[K[%V;?%T(OL=1Z/I)^XR M]B#OON^U74.S#.!TP;/9X>NB!\_4FW %X7G@PI*BUD!I MX)9%+E1-%0>.L6;O==N7#\;B%O_J$"3N(JP'DVUH"GF21!=S"7U['R1=467!NJDF8DB>$D;P^D@ #R ZMSCJ7;HP^,".[?X;[ MEV?O"8'U\/(93#%?%K-=6?_"".^#(V?>$:H@."TB]8G%DHIR3JN0.\[;;5U\ MR\SV([<&MYBV/)_RU6E8E=-^/WZ#DS*>G/TRGKR>?<3)]-F72_.ER"A-3()Y M2(;I:KD$*3-3I0@I4[#HFER:ZP7]$_?GCJ<)/5:ZZ&$05Z9YET&T/"SL913' M.60\@A;UI\=[JD"+#)U>!J.M]:9ZET55*Y^KPGPPCJ&,VDD=D\,FQ=D?L![? M*^#V$WR^,M#L[BQ61Z+5_'*=32>R9(10FEX?76 AE& M-LB0?5'!=RN[W;G+)Z<=;#J9_/OOR#$?IXQE,_IQ; MT5(:D $UX:O%IK(-+"8I6>#H9=**(T\MO)>[@'V/&_7/WTW]VONQLYOX5NB6 M4ZP+OI;1GKL 'BE;O%=:[]29'CAI$'ZY$Z>R266=+,O!T_*L5"TB)#++1EB5 M/"+X+G??OQ&=N2MG_*@JLPL5?;M#S\=GYQ#Q38_RN_&9?873%;& MN,R<5XN[OAA*\*P)+/A0E]@<(T<;=,=78N[NZQB/2FXO_[ZZV]IG)&TF_X^^VDNM.1H:K$T7U_J 5E+!]P";Q])S8V1/N2U;*AWJ6T"N":[%+FQLF:Z%ZF- M23XH$:0')10/*J5UV=V$NH\$ZW09C^I7X[+VJQ\ZL#56 ML@BFKA%02M96ERA]BN3<<%I]1$YEG94.W>VS75QOD9:TWVBII'9)%=YANI@, MZO6J5Y>ONR)D\'7?+/7BL+:R, C6,.NC<[1V"FUDM[UCMX[WOWL\K?[G>J^S MYS"9?!F,/OPG#"_P--2\\R $D\F2\\%I@P@Y:Z9,Y#E'%-S;)C94%W0'3CII MJ1DW[_SVS4Z/9PJW@_P%!I,YO!>#:7TC^&*"IYD6UYAYJH\89:9IUZ_/:UAF MDM,BDEE0LCB<&FU ^.14:5^6>K\"]C5PTDDVB]@())5R F"&NWII+=7R'#52 MDU#YXD0JNF-]R_MTW_HU\H.IRH$8V*0SAWQ-_([%=>X%*Q4\.,$BT#S0$B.C M]34Q$)F6UT!MQ4/N=T>(9!Y*%[IM>+MRTB;-9S89I!GFS1@W_W3E_W; WCA; M[=[@CU4)HQ]%N)FR;$K!6>;$4!S"M7&+K(>2R2)FF;"E(/ M3@/OK*[Q\!1P%_):5 XD=_O+8MW_Y6*4+Z<%MS(EJ1EF#+3>VT2"P<)<,.A< M3M:$)E;]9CA'.44^$*7KI0;WY^,8P=:3G.0#JG2H[">ZN,N!'NNK6C%H;P5U^"_+U4BC,LNAB6 M[Z&:I)CS%FD8M BZ?#AK^,"AKV0DS.];^E"0!H_ @@*:H &X2 YE[%0Z^UL/ M?;70E?M%NW8AI$&TZ[I/=!/N*ELCTBRNU;.2!*:-U0R4X:P@]Y:#EUF5%EK3 M"5WK@,4A=*5_&KZ!L$1(UM).'EBRM+WK;!P+&6M% FNL45DFB =/1.Q"PT/S_[I@_QZ):*$(?3J"]V'QH6DB.%T*&;WD.ZMZ:B4L"[Y6OI+1 MA4P^D31-GL-[>!IX_TC$T11P%_(.%XEP@F=1BQ=:+@W3Y%BSJ(UFRB7ZB:)5 MOS2YX_XH(A$[4=HM$K$+'XT.IE/RWPMN8:2;-#BJ"3KIA,#JBT64=#/H0TRN40 MB\^VQ+)9IGLF"FYL<^7IC,LO@_JJS* & &EB7YPM9NO\DQEFE_]X/'I;#V0G M@]&'9S =[)-4V!90(W;;"&Q-/Q0*JV6, 9%K([W/B>RPY",/116E-NM';]#V MVQ]RL6 M; $&P8&Q"50)37(E>AW%OJ;&)CXO?[8 ^ R&]5&H=Q\19[].QA?G!&)Z$J?S M"X:GVKJ2C:&=T4I1"S%+!B9P)K3(6 ,5430YE]T7^.'-FN-I[[J=A_Q[)W/NPEP#1[V/R;J, MY29G4GV9)'%P-!!)OB3*PEP23DDAN,OJH6XS!SUU>4#KXU'(?RCG.)>C?_;E M\LO_&."DWOC_\JK>]Y^'\&A@F8-.S!ICF3;D(<<4'$/CG(\N0:.853=XQSK? M.9+J;%/@_BALN<9>=35NXKU\-?%NL"T/@'9">YP3GQ:T;].L9IP=7=$RS\'Z M(E@J2=9K)(6%")8)%$5+ S'F)HDS#T#![CC0>7#ZM0M5+?7JY>C\8C:=2T"L M*M_$B!% L%)2?:!(%49VL6;L%T1)>W?S:WZ5!S,6YW/ M%.5+ >4"*T9F1HY5/;;0F7DE(6=4QN0<%O+*4RT&5D>3K,P*:;7/ZGONS(-5P!W( M.V#N3,C"RA^@,*-VD /FCR)W9B=*.N3,[\'&06SQ7 MH]G['"IO;&?_L^"[X:T=X5H=3#3>2%"!9K^,5H QFGZ:75')G-X%=&_IW3]I MXI;6VDBR0\J$L-+)0EZ!Y4KSZIX&@"2%)F^A((>-\MPS8V)3DR]'GVAFCB=D M\/:LI1M:;B/MNX:P7L_*(NU87&J$HHTR42HO0@I!*JL-^HV2OWTP>[.P>EX> M1OFR+MP(9STS$9F(+,V^R06;5\#>'1Z=Q1F&SAT6X']CK/3Z)4(X#E3 MH,C+50:8=R$PD+Q:##&%8@ZZAA&H1Z=)O3'0(.+Y]:;D5I2+@&\,5@D:*;/1 M"Y)"]N1PHF&6"!8EU%2E)EI$UT7JGMP<[\MI*%X@M#V$Z M8#S.64OO_';5GSW).9(>Y9*1HU4L12YI*FG%8B*Z'3D;QFF(-AUV&3KRY=E U\^5<(4_PX'N:79^>3\2<\NW*$HSD9Z0YHH%%$ MLNGJ:(6P#*+R1DKCG<46Z\$MF!Z/6O1-0)-WA-9>,5G!"L:0;A963:Q:I"B1 MA#\'T_C?FZE$'"2T0TZE\N)B3HB\L7;8H- M+AD56-0"F<8:[DFJL!*X)"L=?,RFTZ9P9U>/A_$&HNWQ?^]E MC?I]F.!TM4C%4KY[\&PV'/YYWKS;8YX+P5_'JA!&X-)N"(FFN3O1>%>TFK,Z8(RMN- M)YJW#&-OR9^D-+G JVFO/7.PO8,V;'0;)%9T?I=R'BBTM[2_S+A#7A(M&&<.5]IBL MSB)$ UP8*2"3WH."T[O!]B#%^Z*XEV2"$R!%"I$'W@J-'KF$FJ]'^M M@$Q!9[;(=<\DHBV-$K8+V&"T3P')Q$C M6@=JF]2O][#G*=5'F."S]2ZN/(C\[,O7CRR?4S_Y"R;YZZ&,AEQ20F3<9A_)DU/>X^I"BW2ABN>&K7=S0'%]0&\N)NDC M_?#-9)!J6?:OL_H-3NK+XZ=1NKHM( O28)VVFGD?/"N@H\A<>>V:W-)M-Z2G MJ>['UXX>H[[SF/02P[C\YW@V&'UX.9HA35\W&L\G@PP>CBP=F M;&L(^;XOW-Y7:MNGT$D28S_7] M/ 6:Q>0CF4M>N:A!QC9OD_4V@B>CY\?E_J82VZ/Y@?,__I.V*]JY%D,19/Z( MD&36+&.D"6FB9D$9QZPL*G(EA4KMC..>!O$T5?D8&G!3F]W1EN2K8WE+QM9L MNMQDX .>>@@EDBA9]@5(NHHL+1"):1\QY&2**TVRIYJ,YFGJ]U%UXJ:B^_VM M[]M&%+>,:!&O&9=:[1F&PWGBXFF6(ADTDDE)$M6UW!KHS)E769?,?0@B=[>M M^X+U9-3TR(S>U,UP'-VDN35_$7B4IYF_IUZ<"B04A@.58ZPD8$(LWKA0Z\(X'E:UMJ_4= MD7[7\J/QOD&K]SXV_/GL?#C^@O@.)Y\&-?%NDZQ_'X\^D=F$>3EAQ[0U7?W] M\_%T]OMX]O_A["VF\8=1/3*:1WM>G]=?3T^#\$:6G%B>%W^U@"S*1(ZQ!)?X31:N0Z>^>4%BRE MH.L=D\R"K(]=B$+C#L;ZW*3FP=%&_'T&/4C=VC"K]K['\K6HP)T43+=QL"P% M':/,H21FHJOU;;1B04%D4>@(6L<299OTE+Y&<*C2(<<.UQR%\0=3>V0(H]_A M;'%3'0-WO B:?$YGIKW1S*,,;%Z*IUY8 =6DFNU5$,>O)G)0-5B_[W]?.EK4 M@UAB65Y-ZX*F:0F1:W".5"WDWO1LX7D/V;9G/!&D$H)G9,K6M_806$BQ9B^# MQ52"X*;)#G8(IN^JZ]&(Z%U$VG>MCI,J[HIG=6.8$_B8+(M9T*8IZZ:9$C## M?3$E@:!?=@KIK#5\A)NU>PAYW).$>LS77V&1_,V[/TY&^L@R*71A>?"\-25 M<"RJ8)FP(5A(TM#O=IA_-WOXIHG<7V9]E[>HH/PF4$K3( 4FIE/B3 O:*8(6 MGN6BT3L,R7>?D1M[^+:)W%MF#X5@^<-W= MA=^^#>67HYKK-OB$5X_9EN9"=CZB)4_,*JZ9-H7LOJ0T4PDL%#0 ZZ]I;#&Q M;NGD 9[R-*=PW$#^?7O"O]>K&3"[J*4Q-T"S60E!MC_#J.?5,16--T>F9'WC MPDD+T"TSY?9^GKIV],A"@\WN\L#R*[*5QX@"")EAQJ5Z,UAQ%J5/3%JG..FM MU;+)4\A;$3UA1>J7K0:&_]?G#.?0_B!FIF_?_;$$QQ.$++-@65@:,D3#HJ_G MC:48X:W50C51I5M1?5>G'EEK$&FXDE^W3!E=:GI(Y!L3F%)HF=22^UJO4S$A MD[$V>C2ZR6.T6_!\5Z->F.K[WO/;=R=3&&72YA4:D5)R9(#1X.H#O%(+LL2D M8UX*&J,E-++;[8D;33]A%>A!UCW>]UW=U;_4QLM5;8DK91%4J-%2'1737 'S MF M+6J!4-'KM8R<=N*63IZX-?O5ZADUIS40B8\,:3 M*5X? 136LK*HLUFP0+=SW3N[^JXC?7+1X'KJ\C+A/-9$YK,2/CLF7##U F&J MY3O(TLXT:N>YS5&T,#BN8'C:1QSW):.!4;J$LM3_+F!:GDQ<0W.<(X5[<[.9 MXST$VR X MASOFF2]9M*K1RO=ZM'HC(F(.O$3!@@V.[!9R9X(CT. S?4]W^-+ZU=,@L1+>,A$51(B<5 >$U"CC+0SA<.66=S M$\;'K37WHV+K6M/G*QZ;BYQO_NG/G^N7V'MM^$Z]M:H8O_M0U^K(>UT?FB@B M@B'WT=B /(GBHD&KP>=MKR)TZO?HU>5Y!B-$(B/9HJEYEYF%&MT/D,$:\"7! MPRJ%_JIM=?E3[EV2+FN6G*H/(==ZG2I$EFTMS6Q\?>CO< )Y@/Y[OSK5;:W= MB946F_&E>]KIWN7)<-XD??6Z?+U9N2B(5>]<3A>N:ETV)1;%E,;JJG+'HO/( M)&C!C-@WNZKY3CGOAO42QE MAI8P)&:=0+(@2RT\Y&S2$"490RTT^Q9,QX]L'4UAQFV(:^ J;X&VM.&[@&L9 M!;L5W7&B8KUQV4U']B#BX-HB-']0LFASF18&C*?2;T"2:?@0M MN2.J=APEV47^#92C/K-"#7X\&>47M2K8>/Z0Y]+]6CKK&"/G.4I6N*K'2D$S M<+5:-/!@G8VIV";.3P=LAS?\>V3S9O9/KU2T,/!Q2+_Z\"N.< )# GJ2STCB MTUDMS/P)EUA79X;@>0RV7FH+GB:-=YE!R8XI#$XXX;E93VCMR7#?!>5CTJ!V M]#18>:Y?(##*D^Y*,LU40K+4C&&>@V<&>0(-]19=$U/X@=U<>RC&[_W)^59N ML749T_=;;+O?8MM)5PYQ$^@^1'\KM]A"\4[59$YC"YD#V@(+-97#9,.-+(JK M8IZV\NYTB^W!Z>XN_![T,HHKC@=GD2'6=#"-F?86@4PI,E$P^@2NR0'\8[^, MLA/AG2^C[,)6WY?>;B8CAU"*$SHQL 1$:^'T? M)>A!UGU?@[TM\9C& 8GSPK2-Y-N(7&N,DVY&6F)UD%&#^9[XO:=>)W'SK2 Q=;$WS[S-19 MO1)=5?H^N3?7_OW^V33;X:SEQRB:!M9(6YSC-;'*Y^@P6)1.J/KHWNDV8/>6 MSGM"< '#/?*4;FFM7\G=!G5-CI;71"/AHQ)%RY)\S+HFP%INBO?ENARW@]Y- MJN.SL\%L/CMI?WT^'M64.1RE =Y/K+)Z M-WO81%TZ;,!7#:5(R7W5Z:[M+;7B;> M*R1CXF2"\.X<$KY.Z>*<3(POI\4% 2E(9GF(3)MD:QW2S"!J6M5U0 W=[OQN MZ>!PYEP;UJ[99GT(L?=BK@3G=7EW02O0W#R=C,]Q,OMR*GV6&<&P9.=G#4XQ MGYQCA5L3BO$BA&YOB6WIX%$1VX<0&T3[%@^"O2Y+/#16@O@_F&;OQ[].QA>C M/%?(Z:E+I8B2%2/#2Y'OR ,+9(@Q+S,/I5XEM$U2?SOB>RRJTI*6!H=TKW Z M17Q-$*%*8 [J+8[P+QB^Q\G9*:(QF5M7+YS2JF5U)AC,WM1TV.%F2NY<\O*6<]A6C/H7LZ?])J+YO?Q*%U, M)O3E*2@I#'>6N5B?NH/L65"9,ZV0BZ@XZ7^36E7=X#TV[6E 2H]%:*[OF+\, M1C4(/M\OZT;YNE2!3"#-Q&DH%DLF4TK91".O)VDAE<10>V6Y+BA-DUK!=R)[ M; K3+Q4-RM L0\MS:%\7P^G+A2[GTP2^" &683*DP%EEYI60]3& >CV>:^Z; MK"]WX'IL>M(G#3>UQ.^]HM @26D)R6#V"Z3!<##[\GRQV#T;3R;COT@<- 3Z M#3G].1=>7;2%"'1PY+&ED)DR&E3T&04VR:39!>1CTY]F!-U4IK!?')6 CM> MDNE%7O]L^A83#C[5LX!+S/4(]PU.:O5K^("G'C@&IPTC:XQ$%+DE"]\@LS:@ MLJADCMV""S*!CT:FFQ&S0H+UC MQ->!OAS-<$(6?<4VO\^2KRA[%-$)6Q^"L"631YB10;29"<>]=<&!QB:V4'>( MCUN+>B-G@Q[M'RT>3Z=?)5"7T,D%#)_#9/*%?O2?,+S Y89\RHM,-L=44U93 M=0HU\SDA"U4XR;HLVZ0:=X?XV/2H$3D;]&CO>/+U0/JP=RCY:NC@"JH(*OL$+ 91 MBYH!H:HO_]DD1#(6O5&JA3)L1//85&%_D6]0A/TJCK_%3SBZP)=GY,'1MO?L MRZ_C3S@9S3?%Z?0"\[N/1!].7H[>#"%A?1-(^Z0=$QQTO=*?F"^*MD5PA8RM M+'+@G?RD'3M^+*K07.@;-&2_VN-?+]S>(I3%+5KA 9P1IK[,.G]U@[-:"8+E M!)S^3CPJV4DYNO?9ND;4 ;2AD8"/7=1I.IF1HL/PYVDUJ.L%^Y0NSBZ&U;I^ M@>2QI<'B+C].TV1POKBBO@O9$>^BY\4[49'X.^'E.TN@*O5T*^(EY>#NF">8>;[KVI MWB:PA[W!?F!]V%$+>R/SH2BBU!Y5,H5Q;@O32%M*\!88[3'"2YY+*%WJ+W^# M"KCE%OHWJ'^[<-CWA=(3,JFDY&]P-([3-)ZM;C>CP*RR8.CJ:VC:DZ_A"S ( MI<18HK B=,L]WMC^X:STPQ$S[E>JO6>9:S['P8?!"/ZZO$6LN'#D[4>3!(V- M-JL($%C).@5E')#%WHW?]:8?/;E[R;)!"O>-K+[ZU\__>S'X!,/JKFW^Z=Q: MD;8(VCPD2ZA("%XA\T #J:7F>"3KQ>HF.=[WA_P8O> #$]G@KLG]D*]>LNN MO67AMWW 'Z? VZ$4I1?]W(/E-N5U[S\&)W,4CIN:)$0+_?R858M8*P^K;$S2 M)C;).WYX&GI'%;=O44%W(;>!8K[ ,ZAUAL_'TZ]5@;#4&M?9,U]J=K4OED5K M-$-KE? E.KY^$-97RLY-,(>OS',X.F_D[>S)18-*SVLICG6J!%21:S(NBJF5 MB;,7+(1HF;1@I?'.11]::,=-*(_9*MM3\ T,_NN(5A6G.F!J:45M G4O$BUAW+:Y\W(P#;C#^CB$ M NPBY+X#=O4.UJLQK(J):LN5%,XPIU5D6BO!?*Q%!+G*F, 8@&ZE&Z^W>_C] M?G]!C_N14H/M^RU^&@\_U6LLUP:Y!&=Y%-K(PJ+76%\6J%F;I;!01."(4LC4 MI(+'K:B^807H7^H-%N^K%PGFBY0HVBAE23%I;C+MZET"KQ3#F&2&(I-LS6WE] ;U%JXBF?UX$@'1"TMN9N0CF/'[4?5+;SO(>?&R\ 2F4HA M"1XS2UIIII4!PB@#2\F6X#,$$$V> #L4\W?8;ZV)WT6\#0A_-1[E\6A^&RC" MZ,_7I2#M3A7?JY?/7K]=;D[>%!DT)&:]I6W/^T6C M3O2'L<2#],6U>9^V.\3';#LV(JI!]:6U"X,+E,N9TP5:2_/R%FS'L3-;T7K[ M)K_X-EB'-UIZ8_#&Z\6]B;_%@[07<8K_>U'?R?U$?UR^Y.:=!9]#8D[S MQ+0IR+Q#9%AT+-I)3;9V"ZW8@NPF_Q&N=V@,6GG$.IQ;/)"8=26.0T,R3D8&6QDORU1Z 5=Y@=!U:* M'63>7ADN,WH22L5I@+P>!)E@600>:7NS(20P/*Y73VNB"$=[IZP?MF[7@7N( M>JL1T>L;8]O??)D7NJBO;+=Y)>=&\TW?R;E],&LOY7"%!2'+ B[H9(,'%;2Q M+G.GG>+^MI=R;AM67\R\GGW$R;RCEZ/YHW:+JY,M6+JUJZ:,=1_D&GM87);U MU2F7BN9">V4DF78Q!RZR4K>^[M5UN'TQ65,LW\ @4U_K-5[;\-FAPZ:L[CK@ M]9?;C!<)O(W2>"V\],()H4&H1#,SEW(;M[L-O2^&?[FH[NEO),:SB[-YO\N7 M+AL1?'=_3?G=<;AK]&J15,(@R/*2FIPS+ZT7WC@T67)E;J5WIX'WNA)?^7W# M17A#+^W7W[N&MO[$G%#")"$\(LU'3A:TAYPC)&^ST/K6)^:V];=GV;RU5E]= M5OR!$I(*TC.1A&4:2V8QH&6N>+ Z%$>&?PNK=RNBO8W[P8=%]&HT>W=Q?C[\ M\K63MUCM61+UD _O)O2C23?BE;W M@KI)ALU&-*W+B[55C?T%?.PB8HMKW1\F.&_NQ2KK*'EALX? G$F&:1./O=(U;@WD?5>QN(JFF5DI N>S9'E+E0>(TCVXB*": _M-:&@9&920?<@;*@=,>:)(=B<4M0]Q D[B*LWLD[ MGPR&M /:53BQ0$PQT)[O[;RZC6(>36 8G:<-IY#_U*UDYUK#!Z[7NK>8QSW) MJ._R3N_P?#9'4:V6)9XHI(RA%C(CE[:&@#T+3AIF4S111%%OUW;B;$/CWS)O M^\JJR7')=8M\48A.>TQ0G^,*"@D3?04*!?-;;MW=Z$W6# MXBLW,$TF,/HP5_BE?G8!V/: _0Z$QSIHWY?,N[2C%R8.L6+< *I%Y*&0&6*P M J4YP2 ;Q4JAW4C6)!0N'Y&JW'GZ?G!-V86 VC($E5!8XVAM=-F1U9*29(% MF8C%('PRUM<,LT.HQ?$.X7OE[0ZMN(?0#W(:_Q;G-?;>P&3VY3T)8 II?CYU MG_.$K6WM?VK0#>;ZV8!V)142LM=%&PAD(QK@ 4RT5F5M3KL [D6:[PG9!0SW M.*OIV'([2=\VA/5DAI"52B*4>@];*@!A4N"HH\LPQHC1HAO;+!0!$>-'FLGCOB M)_.3+II%$8ZY.\J!+3W$06H\HL^UA$ M"K0?I2:WB;J ZZ$F4!7T+^1EU!23"1DT_S68?7Q^,9V-SW#R\^6(_@G?6M41OJ"35E MK$7=R/%T]KK\.A[G>M7H'4X^#1).WXV'^;38Y)2/G'Q3IYFNE]\]CX*) ,67 MDK2 )CCTMX.ZI'J!_]L=#B: &']*L/O^(()S"L+RSD,Q+Y M=%8?F_V$*Y2Z/G$$A3-7I&&ZV,*\)B$X4+E$%1/()ME4W> ]0J5IP$N+.K6T M]-5%;PFGIIDY510$!E9)IH7@M2:S8#+]_^U=6W,;Q[%^SW_I9.Z7EU-%RDHJ M5;:BBIUG5L]-8D(1#D#*Q?SZTP,"% D2X"XPLR IO;@D4M[]IK_>F>Z>O@A> MM/8A;&94M3MP[@-Y@QIQD*P[]+6[&TC]]TOR>G(MAC_S*M(NQC049B0HDV@? MJX81M[*V63*&R3Y)EX^QO$$-.%3B'=K0W!_"TZ)7JCF[7)QF6GZ^_7?D'.7% M+^>7L_GYU7-$6]O IM;-_[=AZ]7E&O_E*_V29RG$FF;<\TJZ6+"^@ M9#'@LA/@"M(^)V4MYNBA3A.N\0UJZTO5D,S;[40_GV M$^7*9Y22#F)MR:)/P@']P(")Y TZB2R;+C;0TW#>H(HUD/MC;7 ':\-=[Y<= M CB]6?URU02&&^M(#!!C( 5.A0,&4N4@D@DZV*P[JMX]8_Y*AJUS&8RTB2>582H7:ZFHJKX WT?,5H9D+$RY#P=- OZ M*0#'RA'M3OBLH> ;1@'OX;D?F%RE1P\!U7I$_58TT\^@/YRHQZPWDO)D*J"% M$MF@ ..U <6-!A0R %S*>=BR8E\I=3OF/X^$?-CA-NZ.F>%ZE>\R'>SS006 M9CB'Z##1B5GA( ^01&9$EU R#ROV>/SL:<IB M

A"= U[VZOEM+=#&&S3YR(O9Q7E: MVB%+^W:Y)4D40M>4 ^EHJ]WY:0C?@\'60/@-;^6> M1K1NB#\ 4VN+;1N8Z0VV%D3MY/T *7??$-;S;!QS+A@&NE8(J$@>KY?>04F: MR224YH.&N;] YG?8:U,1/T:X'7(U[BYW5MO:VA)1T<0L:V?&PFT=CF8 ;53 M:8V!-F1MNT8[0-)=TKCF=,KA5?YPEXZY;OC-=(XZ./"< MU?XZM>#(9UIL#.BR#BF[T$,%MB)Z TK01MH]RO*N"%2%[ MGHXJ>,\\.2*%P$EIRE0".$#[7RJRVZP$]5;MQ/;4],A%6>%9>TK#0#3 MM1[\/IHCU7ZW8^M1;M:AHNZQ;SP 53PW26( K52HB:<1O)$%A%0F,$_G6>E3 MW-V?]^<*N2>B?8R$6\?WZ/#*#P\MD267R!TM"1&4S04\TKJR-%[HY%&9C6#! MEGC0HTN0'%T,"G/:8DH M$6*R4G.4(F?YXC]35;UM M??'$96_#!+#9>-L$IYA%,N2TXMZC+E(%BZA--%+&<75O6R$>_)%,>/H!?LK\S,2$ MIN9GB%3JQAO)J0Z9#EP1A/6N6)N[&"*[0!UA['T;?7CLQ#:2?)=PQ@:V6_]+ MD\=>E,?JJ2G M^3)^_H+S_RPM]^QE%,P**$*1\>:R !>Q8P8\6W#^G M3H=PT,'%?8QOC6YE9 [!US/J\1S XP1"VM+ZK,XTX.08NF.B#3[G"A$%J$2^ M"3H304NOM?'6)]LELGHERO?$Z#6'3D M",QZ#XK\6G#+F (Y8XRP2E1]NJ[N0O4"+-J#2-R,M#5CH(-A>Q)C'7]!^&(^ M_UH/W36N@+G([,'0^NCHE0YHP61_VV31QL)4GT8FVP"],:5H(O?&F1J_X+]G M\W5OD-L(LY"2.5VG@2?,I)/)@'-)0[0Z,@+#/!MR63LH1^/QZ]^ -=I KHTS MLC[@E_R/\@#32I^'@&J=DK45S?0Y68?2-.LEX\:?^79PP4=K$DO ,JL*'@UX M5@(HI:,/.J1DFJ703TS\CI2L27@?(]KF%VPK*">K(R86IP/7&FRL+7^55N!- M$H!_6A1=%!O1.@,= BR*5 >\%@K6: MZXA>.L%&D?;NC9&VCZ :VD,/L/RTPN)\X!1I/[TQTO81U-8+8[-[JF; \ MDOY@G5*D@_$NI^28TB#4H83,XJR5HS*IHCB)N#M?ZT<5U?XUJT<5U#&,= MPHK[)#.7DK00QH'7=)(02E/N00U>K-T[$OY*LE M=)=#>__X6;KY3%EN$CI@$A,1XML235X7 E7H7XSPY3BQD MBRY;GX;TE'Z)_.^(ATY)_Q@)-Z;]A$PG0K*NE^0I"FEC;3C*.:C$L3:E%*#) MP_-H1!!A2";K(*X?OGK:N$ C+F9-!-G!\GS_R_N[\*T*16M%^EF"!<5K,2P6 M!=8@]YR0*=TER>X;A-=,[8$";3ZC^^/).E@8?!TWX,FC$=G78&&!$'D&Z3'E M@%9:LW$IO6T\]]TS7S-1AXAG:RSU:&&YGV>7GWX^_YI3]6:OCA:=&PACXB#= M/L+9B-5ES1(K*>CLI.+6HG=2**62C)H9E"G6Q(?23L%C&A,Z*#Y'\_4AKUC40X"-XA@%L M0*VS8EF&+N?=,'@O-# W1F\VC\8.O'2PB#[,+N/U?$Z2N,5U%GG1+#-&?-8# MPDH!+M468:QXY3./LL_XDTT@TVM$#\)F#:7=(_]WCS /L\*A3@ID$@C*6U7G ML&3@N@1:C60Y_XC$-MY+>O/TLB.Q*%)R66G@HLZ-TM( .HN@G0HB,2-%:-8> M\$U$8D=1/R@2.X:"R2)P0T!]EY'846P-"L7M(^K)]$!KGK6RAH[@2/LI^2]U MKER]@D!,D5NOS)!ZII?(_UZ1V/;TCY%PR]A.K8*8WYS]Z]F+EV:[_4FFV]VC^]M:7$O@9 M)?[90;+;ZF(<+>93IXW^<7YQ,55P9_-]$T=Q=BYW(UR#&2TQF:-07@7%/8;H MN2TA.,Q9C@S7;+YY@KA,=A&5$ )*$J38QM0B*33 4I8\N<),[%-A.$5<9B7. MLV"XUH5)B$;KV@^H)K)Z#SY84Z(.28HN^5%K "\TMC*&^T>QE7UD^T(RF9+( MGJ<80:"ME9SH("05(1D7K67,Z\T+BA_^\Z'ZTINGE^ _;VD>'96423KR!8NG MPU_0X1\P"6 ZHJ9CPMCXH[?^?J0_WUM_C/"GZJP^!--WUUM_%%%#6JSO(^7) M>NLK%4RT"8JO@U5#1L!4.S(9$8TS9$GZ(;=A+Y#Y\;WUFQ,_1K@3]M87VEDK M:&'>( .E5?4!K0>I,;O:ZQL'Q4A&6QTOO+?^&+(&]M8?(^D>)NG.IL!$$F.9 M!]#1L;K@.D[9.7#:>$G>]@. ?-=-U4?Q=;. M[MK[B+I[4W6GD@Z2*X@%%2C/'&","D2V*GKN:_+9*^7]H*;J[6@?(^'F0Q/S M?+F_7<;\_O)_-U_N9@'2L<50!0^\U.I?%FHDA4RBY*PIJO8AML/Z"&Q[P[%[ M_ MX]5RV4ALD[19/[FXF/U1M8ZT[]T\I_.KGV>UDG.?:Y"MSSK\BF,8S(WK"QDX M6E$,MQA5=-SKHFD'5:B%L<[AV1# 3:2YM.V:RG3UQ'Z2?0KRIGRUM#KD$@,S MRLB RAJM/1U8VGNT?*M\'X-O(N632[RX69PO9F7;OSC@CN_PE_;C:L^%;]"9 M= DN:%.BCXK7=$,1DF12.!F=1KV5SKU$T(3Q7Z^_?,'YS:S\]?RR_OI;0\-% MN#GY1)[6.[*V/LWF-QV8'__R?AIPH" V-"$X893GN1A?E/#2%V924,$R5[R2 MVS_L\3 .7%5[9V/N+CZZ3J?&>9UK(WG1"2K1W$5 M(4A39\!X2]L"RZY/R=H8D-,;A=UU;-./Z\99AVC@(*SO;E/2SZ+-++$L@8Q< M!]Q&"N8V_.V6+RER" MT[6!(_GK@($V5>4SL[+H8%B?C+&](4^51#.YCDW$XK%S:W;(=_$QS\]G:776 M+P/$A?%DI>? 8QW4+!VC+ZLX2(R_:.NK*<\?I JKD )@];^0&XCS.75T'IL?JT@$T'5&K@O9%2VX@&Q- !2T!D],0LG,H M6!*"=1GD<51M>N8&\.4HTQAV)E(BR7Z;:?\3WBQ64.\::QM$Y1FPK$M-Q,:: M]8+@F$A!9AZX[E(V/@+CBS#[#^=Y@"ZU(&F:8,3"$%3W!-2"&I4I"9(/]'DI M5<"KZ %5"L(;XT.9S([:@O'[T:<6)$VT/[W_[S5>_#;[VSSC59[_]ADO/7L" MN&4BI.# .E'='BR #!7)RTGIZ&/0I4MZR]Z(OQ]=:T_@-&VLKL,B__>:_,SW M7VNVT%YEBIO/:%!ZN!/6QK62%1@LJ^W9K5!<*E0ZZ9@$T^YL%\"#I/4; M(2':#RGQW/W$]I+H!$/.LS2)7USDM&Z"?F]+ M.8NV=C/3'/PR2"ZSK4WO")B(5CDK@NW3^VHKHB.D3K70@LW]NXW$6V?%K2J; MR[V.^'__JXQ[)#8_7/PZK"@CV0J$24A#"R?[P9/1 (3(Z2"+4;)+W.,I,)-5V?;8 M @Z6[K'#^[?U0=?TS/GO.+^ZJ:.1E@$>99TRSGJP4DA04=)R./VUB")BBHP$ MTVRZZ5, CA:L/YC164/)-JZ)_&?^_7H>/^,BGWR:YZ4&;4)<^35#0+8NDQV, M[AAULX<2.9N*A:.IC+5.DJ-46]XS!TJ4!*[0?VPFYZDP@VG0H?(:5&5GH>U1 M-&6,\%O7TWR8?24TYW=%!$;Q:N$",BGJ) 2$D!R"X"+Y0KNH&C@C\.%SIZV9 M[23Y61NQ]2B(02,+1L78IQ3N:3RO MWBQH*>\>N4F/8:WT? BPKC6QVY =J3ZV!7_/Z\0!PI_ F?P&,&+F22@)P01R MHEBFKT"G EH)'HW1,LL^;9VFU8KGJF&ULU+U[D]LXDB_Z__D4O'/BQNF)*$P3( @2$[M[HOR:<(2[[6M[=L[>CAL* M/*NTK1)K2_ $F])0J 2!9W'^ZJ$@ED_B#\D$@D,O_E?__QM(B^J;*: M%\M__1/\2_RG2"U%(>?+AW_]T]^_O@/YG_[WO_V/__$O_Q< _^?5YP_1FT*L MG]1R%;TN%5LI&7V?KQZC?TA5_1[ILGB*_E&4O\^_,0#^K7[I=?'\HYP_/*XB M%*/X^-/RKTG&LS3&.=")3 '&- 9,0PA(+$2B_HH901PJ!"3""F ! MR[K1Q7SY^U_M/YQ5*C+*+:OZUW_]T^-J]?S7GW_^_OW[ M7_[@Y>(O1?GP,XKCY.?-TW]J'__CY/GO2?TTI)3^7'^Z?;2:GWO0- M__C^_ M?/@B'M43 _-EM6)+83NHYG^MZC]^* 1;U9A?E2NZ^(3]#6P> _9/ "*0P+_\ M4^9.S"]-?>Q/UJ^$$-+_!>-S>+W'RAWB[E6-_=;5^)JOY8J:54#5L>-!W- MY;_^R?PT6U?@@;'GV;OYTI+X!V6X]L.<\?EBOOKQB?VPJV'U9JW^0['R7;$N M9T3R&))< R73W*Q5R"QI:4* RG6,&2-"83%;;;_K,[4$?_^R$:ON.ZSC/WD@ ML;HPHTM5F9;$;BU\6IQ;X,S:9E?#_.U+5,VM?,-);LZ%1Z-_,@I_\R\\[ MK7J$>/%BP"V&Q:P5.:IEOHNV4M]%&[GO(B-Y9$6/K.P7 2[$@9 +:V\4Y3%: MA0A&ZV!>UTAI5O%:U;9) QND/ZO%JMK\!=B_@!BV-LK_].[[YY,OT7VY4925 MXLH(MD_\+ K3V?,*' RFM5YO0V15W/;]:T;*"/FGJ"BE*HT]?D;ADUE3M_^Z MJ%;WO%J53*QFFZEG-O=(EM\8G/Y?OF:/<^-4?3ED97*[OWDZ^+I M62VK>DOY6?W7>E[-5^J+*K_-A6KLT\]*% _+NI5_9XNUFFE$42ZH!EHA0Q(* M$\"UL57R-(NY($(*36;?5,D+5YH86F2?J;4O^' S[*TQ=(L?2D75JA"_@UHO M0S\[Q?Q(:/ Q=^.T*8WCP!1Y_^G]Z[NH5J8=O79]CN[+TCRH[,]WT?NE*.NE M11=EPZ=[.O5'J&,!WR<_#R[SJ'0_U@@L&%T2?'U/Z+J&S$K/Q6!$_@$X&X$C$#&IJ5'"N1@UP+87[-(@D:_?BQF2 FFHS>H!"36<%J<@AQ@# MA'2FH2)(I;AO=ZKI=VIDAF($^_>F6H#[3 MQ!HD&G"<RGP(8!Q4G+6B?/CT)+EZ3<\,[%SP//9UK*FJOJ];HLS6#. ML$JXXB0%6L@A[3G&+I M>$YS$T)#']3LA+N+6O%Z/*:YJ'JOYS2GO8Q[4'-1RY.3FLM/!E@.KUGU^/:_ MUO-O;&'-D?NE_(65OZL5XPOU19DO?-W1A_E2O5^IIVJF$XQQS#@@$%H7#5/& MNJ )B"7->)R)-,NTLW7AV?G4+! K?K0G?\26,MII$.U4B'ZS2D2U%CZ+M>_H M.)@S V(^M =G6'VA;819AE_6S\^+'Z^+IZ=Y??:S=^;8;C R#!/"$ ,Q4PC@-"6 ,HP! M15"D$,-89DY[4><>I[9$- )'.XGW#V:CW]X43VR^=*0H=]C=;,I>P1R8^V_$ MT=OH=,:F3QOT>J>CFJ3.&!Q;J.XO!ABL]E**7"_41[WKP!*==?[/32]+81CN MJR6\6XO7\U/%1/VZU=M[$^H$B1X G+) M%TLC#9%::;H-W5@0=G9L__[Q]6C M*J/5(UM&AR^%F:R^X^9FP XX&D.[,D88"/_PS3 X>XW&]!1AW.#*,'Q.8B4# MFPFPE>]+Q3[J+VM>7RR1G\KB696K'S-&62Y39K;E,<\ SH0$G&8)( HF68X9 MRA!W-HPO=#(U[K-B6INAV@@:/;>2>MACEP!UL&U[@&E@4MH@M)4Q^M0?0A[F M:0](C62+!B#F9WM>@:+3T+ST[GA6Y17I#TS(:\\&>BBWAFD3A&.,T<]*J/DW M:XO>+Q;%=QN9\ZXH7Y=*SE@H%C:,VZE= *PIAG@><[-/TIG.J:" M)LC+=1DLRM28="M_M%/@+MJJT%PRJ96(K!9^V]X>1L[1^SG*> Q,V7T/A;^? M]&84>W6@ADLSKF?U9M1.7*ZWMQC&L!NB_F2^ERMCSMK3IV>[]+[Z\=6T>/_' MO)IQI93@*+-G/Q)@;&S.7"("%$<*D3A/9"I]J-2ASZEQYD;DNZ@6NM[F;<6^ MBZS8T6]6<$^:=('?C0][!G5@XNL!3V^N\T"H3U)SZ794]O+ X9BF?%X-]! * M4:S-SGK'?I_5HDYSQ$I[]CT3&C*(J38P"P)P:@.8,ID"@3(-,RB1B/U<@E2UU\I:@9O,=V4C=O36NIL8Q!Y)&5M2 B#P'A-U(I1_Q+YA>T?K,9=)K;P1XY#]J/1=J:_88$^C=NES.5^MR\5Q8"9I(7Q[ .&[82'T\.[W"N5(?OY;(?5S^CLCU.G^O][*> YS\ 79FHSX0ZN IT_P>1YG?COGIIOY'8:X^$-IP6B]M^;&=5/-9FV?AW;P2 M;&'3-;U=RC>FSUDJ*.*9("#6B;)!8C%@*DM!0CG!*4MSKJ +FW5U,C6V:N6, M&D&;]&-&U,C*ZD98G9!V$U)?0 UM!(5@Y,PY+B#L.*7:D$JEQ%\>BF\_F]<; M3C$_'--)9].CT(6+NM,^??F[(9A/KS[:8(76SRFRC(D$,A!+ MDIOYGA.S T(*:(AE3..<9-3=.7^IEZE-^+KRG9&S-N:-I'7(38@?^2*L#A[X M/L :>-(/CY-/$'T/>(WD73^+6U\!]%=@Z(Z@O_3RB"'T5^0_C*&_]G"81V@7 M.5%]+9FT9E=]*^TTLF(_T/1-L>8KO5YLGFJ\5+,$(413L_5+-"4 0YJ!G,8< MD#Q-F.*9RBCU\2'U*=S4B'<7W'K1>QU%-W_52XW-P#R_I]9= M5"M6#TQS4_-L6-AA0/Y&P>VSXWCLAQB-/CULO21JVH=B9;82,C;63%==\0=R![?4O<#UX#\V8H5%[[XNM(W+ S M[FA\M+WQ=07W=\<.3X<9A:_FBX62FXH+>^QD3%&HD202:):FQL*3,<@A5R#G MF&.A>9(E7J>$%WN:&A5L1-P/K?>ST2Z#ZF9P]0+5P"S0R!CMP/I\'2QO6^*Z/\?2GG56V$*/GV#[-[J>Z?[&\S&C-A]GP< MB(0J@(G* :<"@P1+A%-E2SR2V4F%];!Z'Y>$<)H>;C7E^RV 6E5_C>9/SVL; M6#4W4IO6+V?6[F$PW&BF?VQ?NJ+*OO!1(WW4B#]P595KJ U>6^6B "]?8>4: M-DYU5JXVTO.UYU_5:@;-=H=F9@!RP6. 42( TU@ 37,$84(2G6._.-&N[GPF MV#@QH=MC=NL64;M;N4OE25Z=*,@+XS'*48R#L-MJT!=N Y/_E1OCOW8@U]]-\3U(1KDB;ON;QMWP/P+S2R!MM!8Y:B2,K M[PB%(13KY5RG#H>MWB.#Q8G]72\7@[CH3>*K]XOJU59GZ>_8M6\ M^O)<*B8_+O^=E?/Z5KKI$,X(T0Q!10%-J028X1APF$!;/%03S&-C[WA50';M M>&IL5$L:5;6HD9E>WUIAH](YRLP;>S=^&@+1@2G*BASM9+Z+&G2_;-'="%YS M5G\4Y0M5GRSEW/>H1.6+R#%7>;\?F$2G#C>8*90PA$@.\CQ# -LP#9IQ!@3D M.662R\PFL'#?837-3FTOU93V:R(L/)/>-#"Y\8:_\@.SPGVWQOXI:@X4[#41 M3=/RN.EF#K0Y22IS^&G@+)/_N:Z:7/EM2IJOQ5?VAZU>_E@LY'SY\*XHOSRR M4KVR*5%?%T_/:EDUL7^0PD3 /+5U]Z#9LH@4U%%51(DDPSH36*+)M5ZH6M7BO6J?&>E]"6#&T;3D4$& M'IR1RJ58 0%OLB4W1;#W$][?16^4**T+MXZ5,OI%>PI&'_EB_E"KU"-QW8YK MKVQW@SCC4N3MN)WP:@]-!F:*/MOH?J[^5S]VS[1?W'O+$Q^?ZVS];_]0I9A7 MJGJ__*3*>2'_H>8/CT:#^V^J9 ]J\_FGU0TRFX_E]%/ZTI& MSZILEH,_>R:I'O=+X[9,3/>K,.+*LJ_Z_O)21?Q'='8)L@#<12T$=]$6A&B^ MC!H8[J+M]ZQ%8OM45&/18UKM%QG#7E-QCZO!N.F[7V1T3E)^OXP4H3'#7Q[5 M8F$E9YPG42$.28;]8X?WFI[8\M8&OM8A1 M*Z-O8/ !?-T+P>V@#$S47G@$1/^>4_OFJ-^#1D>.]CVGT&F4[]FGPJSAC\8B M8C;?T&$PS8QEA* ,, THX APXN"J(08Z3B#7D42>@!VE&/G>JN_ MV]9[>ETNH>EF*O> TCFF]7]#VVLZX]'I!. MI#"4=<^K.NYZ!K-$$)K% $EI;*&,2V,&"683B6I3O18N M>C:6Y>72O%>PNF[X!",P\$1NE/]M(UD/@2 7M;TE]<=!>^/E^SBGQD&2C[,/ M^,^\-VU& UML9(:U3*E.H$UG2 &6F#69MAG,L-F!I,),1=>)M]_PU.;=1K:Z M*H[[S#O ZOK$"T5@X'GGIKS7I#NGZ0US[J"YT:;<.27V9]S9SP-2Z=2+IBWN M^,4.T$5R=3FXB- MK>#?.EO%\VY]F;<^WWRSIQPZ]& M^"9UV69+80Z&PG5@?MV('?VT$?S/]GRK07HG?/3! 6IO/T,( M9GTZ'[SZ']4C$8+,L9LBJ(W "]YL7OX[6ZS5+Z:C=5D?-KU?/J]7U9MY)1:% M_=NN&H.$>4:XV691J!3 (L> ,YZ#!".E(*<:">7G,_;J?WJ>9"M^5,L?[2G@ MR6E^8^!&:H/A.C"KG0>TON&W_WNCBBW2:&=$G5;-/&$F2+G]PV^#9-X*PK77 MF]]> HQ[\SL$FY.;WT&-! :*K7FE_FMM>GC[S?S3WFWCF50*J1PPD6F ZZ!Y MPC60N5:"4Y(JG'K%43=*.MFG :F)G^(_&.%NB#H M-:3G;$?C1MYTZ7H2(-/Y<-CLW[]ETU908!PJDC(!%&*)L6]@"G(&8Y!+D :>[I[(>,_UR\KW.='/]#+J++^L MY?$4[W@RN)RSO5TGK-/N_?)363S8Q'GMDJ21E#S.-: Y8@#K.JD=9T#3-*<\ MYXAKKSP!79U-;<[ORVI=!L^MM(%K?B?.;D30%WH#4\(Q<)^<@0LI[7P5D9Z+ M.U_N;^SRSE1':I=VIZZ3CN?#DSYL?4\?-3[ ?KM MO39;E:^JP_/Y7GA^M8UTRFDN*1.Y05F97063"C F4P!1(E.=*L7]N.(V<:;& M*5KYE&;I-HW/PCO:!WDI6DGU8# M4[P9JE;J0I#NIJ\W:V5+@[TS7_T9(UFF,I( F.89P(AQP.(< R@$US%/&=). MD4>A DR-2U&,$L]T;[Z0N_'BD$ .S(2-Z/;ZZ*5P_;L-0QK3SNC0E 2T6O28 M$2X0OUZ3P_G*,&Z>N$"$3E+&A;83$$#Y^_;]PC)!%92G ,B( Q MP%AIP&-E?A(X35.-DB07SJ&3)\U/C9ZL@/5!K14QI)K>*8#=='0[+ .3S0"( M>(1&WH3,2$&1G@CYQ4->!* S$O+TK?%B("]*?!#]>/FI0,-L%V_4UFC=[I-4 MFF:$8P7RF B %8: 8Y("%=,,I80+FFF_D*#+G4TO_F=3''@OGO&OG@;896@= M3:U>X!K:J-H)>1=M0!MB3WD=C5Y-I,N]C6L,7=7ZQ.RY_D;@J5NIY'SUCHG: M@+K_8U[-4B33'"8*,"$IP+%2@")B+!V!8DHD(TPCK[.VDRZF9N@T$D8;$ZQV"J3C8=I-\ Q]A.:'C/^YV47E>STM.^UEW#.RBUJ>G(Q=?K+'BE M MAFB]U.H\S0*0[.U8;. MO!K&29_5-[5YL.5!S/+>W))N MARMZOZQ'R9^O7,;"C:UZQG=@KFJEC;;B1CMY![IXZ0%0KQ>E'+H=]]J4.PXG MEZ@\7@T/EFYR_G^U5SGV+HZG,4X@M3>I[.FVQ!!0(1, A?E?K6FLI=?%JDL= M3E5POZK3U@E6/=562;VQA@PIJ(GIBY>]J5=\SJNS5Y:"4&!= =V.> M/J [2^%QT=>?S(4$Q&YM)% _+N5V# MO[+R0:V^F%E2V1(A]K^_S,T_JV*I9C25"L6( ('-#@MGTN;610(@F4&F4)8C MY'0[.Z#OJ9%+(VM462'K"CM/&TE] DC\X._FE(%!'6<'%NU)?A>U('_9@MS\ M],OP4/L$\@P&^5A1/KU"[QD$% 1>=X207Y,CA@\%Z7H86Q361,#*\%653S8* M?6'^4MCPS&^FUTJ91A[OE_*-D6-1U.Z^^X=2U=<49G$L,ABS'.0I)@#C3($< M:K-.2$J%@#03R''C&RC!]#;!5H?:_-S7(BI;-6HC5.X4B=A&$P]B"Q@HAW5D M6/ '7DLVJ!^('WW>1WU/@^A^'-0]EI1AT1]I60G][O>5;S,H1S8%+8(?FE M0;(1-MJ3ML_8$"=8^HT+Z>YRY)@0)_U/XT'<7NOGX'7OU/##?*G>K]13-6.4 M:H42"G*6IP#'A *J% 29B#/.(98R]SKH<.ET:J1S>CJX)W7TFY4[J@7W32[I M,@!NO-,WK .33P^(WGS@V@71D">N9_M]T2/7+B2NG;EVOAM>!.G_6;/23.W% MCZ:C61ZK6'"> 2E5VM0>R!EA@#$&,10*DIS[UD,ZZF-JK+.M#K25LYTN_F62 MCM'LYI2>,!J80OSA"2JD= & 'FHJ';<\>GFE"ZJ=J[1TZ='01)9/3_-5DVAE M*5\72TLD:BELB0N1R1BEJ0(DD6970P6J:YX!FNR^NO!"?#K=TM_YBO'E^OJU7QI,KM_9U=89$9Y5QS33 06:;,_B61@-=U M%4E.8D48,::#+Y\X]3P];GFSV?"7F\CLI5K5IPF'-_V\L^4Z#80KT?0.[N"D MTT@3N-9^N#U ]I]9UZGKL++L^>)Q)N.OU>B!IL>K1_O_; M7=#D9U6MRKFPJ>C,!X8D#_^P]^1,"I5SE"B00EN%G5,(56D^9SMHI6CRKBZF&^K*^H M&#JT?VB$]63"FT878H+R3&F ,<3VGPQ00A @*$E@(F."SU:/7T VZLM M=)- XUI(?6!W8C?UTFB8-?4/-7]X-*W>F^T3>U"_KFUBN(^Z/B;;.R5[Q:JY ML"$V\\7:/#W#"B5$V[LZ5)H=()7$RE,C*EYFS=:1*Q1 M(Q)FZUXLFV/VS2G[VF;3GB_M9\_K^MC&[B 71559*FZ>NHNXU;2)16MT#3R1 M#QQ?-XH>?M0&YN;M@+4:1(T*=FD\/R-D<6'NFJNF$M)O)^@)J>/^8/T;.'.0"0@?#F-?WV,7\ M=LPLG>V/PALN&FY8P>G9,&/KEV*I?OQ27^Y]MU[*;=DY F.5QP20C&B 19J MG",(H)2Q5HC*-'/*]]W=S=3F?2UEU(@9U7(&EIJ[@*J;"7,[5@-/_1"8O*V/ M;A3ZM"XN]#2J]="M[;%U<.7I@"ML1SLX8UW\LKWP_V5[WW^73%NEF=E54<,, M7 (<"P0XRV( =9PC*D222:=$4@%]3XTSCITB30GX7;:$G0;>MQ9"1J:;8@;& M>P2WU82@]KBD-ASD(UU0ZQ=ZO\MI8>!U7DSS;'*\2VEANAY<2 ML(LQ\K/-3 M[46#?-C&-\=$XIQF&&08Q6:)@!#D0G(@$JE9@O-4"*?(SJL]36U!:%)V[<27X;7S93L!;2!63T0+V^#\BH6?=J4ESL;U:R\JO.Q97G]!?_8[[?+U7SU MX]U\T;JQ9AE)*4Q1"BC,.-3XT-&ODB*V#K MR74/\SX!KGO2WPK'P//< PFOB.Y+*M\0RGW2Y&@QW)>4V0_>OOA,X'4QZU-^ M9:MD[M?1W*NI^NK'[I&VT-S]=U;*^I]_5]6J22 Z+R2<,2)RQFAB4-4VH2?/ M >AUZ-PLBI<:D('):;^L\+YB M![6%^8_H;/EAJ]E=\Y^HU3#ZU#V<_K?PX5($!#PZ0.Y)OKT .3:DU<(VT42-NRXJ;G 1W M37KK'DG2&9]>J>]ZK^,2FC,*)S3E_F:@N^B@?''U;KU:E^J7^7+^M'[:JV&\ M=;'"/$UIEF*0Z#@&&&4(\%@(@-(D(9J@5.;2RXGDU__4:.FHU+=G_F5?\!U= M3,-!.K3CZ0C-NZ@1/FJEWU9/M\73S8?SRF;EKXNH_\)6UH\Z3.ZE0$1[=5]Y MBC"N4RL,GQ-75V S Q;H>?O'L[+QM%_G3^:1C_J+^6NE3>?FL\TVC212,@45 MD%D. <9)"FB.,6 \TY1#C"#,>J_AXR#8U+AR(W*TJF6N3;D]J>^"-MR]C:(; MM[[$V Q,NA[5@[8C^'4[@E\.1K#O/7;?<(]>@5[]_NJ'_?>=Z; H=T4OL&8I8QB!/,]R@%-M?B)0 M *$Q1!F+D7*+J[U!AJE1]D$1DO:R;A6M'MDJ$O8>[YS7MPY@_']'MHA 4=9/ MUG?:(B:$K3561:42:O[-'G9[;M(#QM!QUS[LR R]C=](WV2)WI/?_L'*?F<= MH_:'J-%BT-HG-X#9ZYX_0(QQG0#A.)UX!6YH*C#%\=/SHOBAU!=5?IL+==Y[ M^FM1%WE1C8^TJJ^=[G_^NJA6OQ:K_U"KM@3 /Y7$VJHM'+"<*X T3R3"62(3+^OZQ329&K69[?K&OD=O"\-_BRS'BP=OV0&UW+E(G66GT MWYRSO?U#+-9U0N!&F[O(0F">:[Y3G_>^4WW7'WWQ >LU ?>+*3-NKN^7'K.3 MM.(O+E#HP2%;-6>5ZVJ^5%75I@RM[O^85S.=4((4C8%FL3 +9Y: 7$,.%-() MU) PB9#?F6%';U-;W#:R1;]9Z7RS!7?BZGHPV!-:0[.](U !)W\. /1[Z-?5 MX@=M-#;U -3 M!* 6E_;V(0@^) M?T_;'CWU[T7USB7_O?QPP 7";2&]CTO5WG;-$I83IB4@.<4 4QP#3O(89!HS MRFDN=>)D$EQH?VI3?2MA9$3TO#=\"<+NZ=T#, -/["$P\;AV=QLV(UVM\\3( M[^[<900Z[\>=>6V\.W"793ZXY];QF'_ZDT]E(=>BSF;<[LLVR3HRE*249BG( M8EN8"3(&*,4,$,0)(3"'C#C5<>[L96IZPVJ@=DM M""6O%"A74;@U!\KE#D9+@G)5Q_TL*-F>$_5KL?[X-D,LQCTF2:< AU #GJ:$&Q3'0A,2:IRPUY. 7BN,OQ-28HY4Q MJH6,]K2XLU%TD1WZZ*=5\>?H\,'0@HY!X^;F4QEZ- 8FI^$&(B"N)AS)?F-H M N08.5XF'*G3V)@;V@K/@V[K01QF(*C]F%DJ*>%2@0Q! G"69"!7"!NKB@A" MA8ZU7W;.RUU-C1&WF71/(L[(':CM7Z &YB\@C$+RCS<#4??:84O]#9Z MSN!NK<\E!+[RQFVQ,!\B@N]VX5XDKJ\W3"]%^_770$)A)D<4*Q>['"+N&I\;*M6A!/O(]L%P.#,(@&/JDH _M?8X&PE 8ZTS M#0W/LX!3E;L/ ?:>']'[?RKEH=O_S.QSI@\OWAFA7H^5J7$'%8VPWG&VYX"4 B8YE0G M'"+#VO;F-DUL/FF>0AV3+,F47WW&&Z$?^476S=6]$:F"F MWUV[WH!E!;R<4B/\_O2I^H/?&N\YE'P\CS;T4AO\\7BUG. M<);% @((\QA@;!E3,0%BFN98Z(1G*?*;Z)NFIS>[-Y+Y3>0M5%C -,^%MC4> M;=;L5 ).A ":HH1*)3547BE10X :PY*]$28WD@M1?F!FNZJW-Y4=*]DG?VW; M'I6TCC4Z9JJ3ST.2V;=%7[^?+?JJOM^+U?Q;G07Y['WAYG[P7,GM[>(ZPK[> M4V@E*464 T^W%?"8^LS&H6"V&=^= MKG<7,C]$6WUMEHA:XVA/Y6F,ND_R_TF,_EB% E[Z6^!96V#PL>FN0S!<]R/6 M+!@HSE+,\I4P! M3./$_$,)H(Q#P!.!"9."4>UTE-F_:%.S+';5,>=[4GJL$?T.G(,Q\&+#,?1I MY.TIE'>#^7X*@^FQQK_8H(ZTK(\_N'[K^"#X=R[=_?8XWFH]"%('"_0P/82Y M*=_-EW;YKU,\OE^:!4E5J[;+C\NMU3#+(8Z%)@RD&<$ *R8!U0J!-$5,Q%DB M,K]B16[=3FTMW7GFA0V[TXOB>WLRI!M]HD5 VEG'(7#S^O4/[,"K8BMPDV+V M+MK(O"5'0Z%;L?OS&_K!U*=7T;'G47V.?F@<>R0]WPZ,@FQNW[?7HU(H5,9R M#3)B0,8$$K.DLAAHFDAM/J$I2;PB&?=;GQKK[')">%TP.X^<&XL$XS&T">T, MA7\LWCF5>XVG.^A@W)BX<[J=Q+6=?>C&5#@?MO7X6,:%S@@'BA&S;2>I E11 M#D26I3R&1$$&@_+??)AJG<.MA#?4-SP#I.,,O@F>H:>Q'S+AR6Y.E!\DP\V' MEZE=>%G+B[EL3I\,\.2]8@N[WG]Y5&KU1JW8?+$K^0LSG6"9(GMNGP.LH9GE M*4Q 0C.1Q5#A)'6Z#'ZMHZG-]5;4J)8U:H4-*[+'\^CXZ#%@7_&Y?D WMP[;7F[_*?9'U6;J.P, MQSS/A*'*A $,DQQP;CA4J0PG!.&$:J>KGYV]3(TQ]P\U6T%#HMLO@NI E7U M-3!/#HV2!T'V@=9([!B$FA\S7D.CDQ8OOCP>)UZ3_X 0KSY\4\D?>]M^X_NJ4N;_Y%?VQRQ'B31[1;-O9"D&&,,4Y%1RH!5+4"QT(A7UBZ8- MD,+G*S].X&V=_W83]N7I?PX9!F&VZR0W"U6_C9Q3?49RZ7(J5V^\XT2D=&B]ZI'(1 .4.#( M2XR7J&44@M.%LD5!386M16_F%7MX*-7#IG)'(T%]47=7SR:.J:0*40!)RNRE M+0&X4A!0K!$34% 6>R7Q=NIU:D1W*+2-5_ *-_9#W(WE>L=Q8%X[A7##=$.6 M!O)"J4_JOCTP8WN(NBF[V=1S,XU]U$V28EMTU;"3,9S&<2[L_S@E$ \786I49;=>T4_EMI(BC9[,&M8A ?BAU M17MXMA3@,[T7HEPK^T9M8.+: +81U])4 M(W!=),N('#4R]PRDA[.U9T!'\KO>#JR?$]8#I4Y_K$L[X[EF/;0Z\-+ZO!=H MD[)Y^>]LL5;& !:+HEJ;+\_VK)69O2]4S-"P35N*DSPSAJ>@0.59PBE1>4R\ M GRZ.IL:!5M9HUK8:$_:X*3-G3@[6I8]H3>T#1D,G+^AZ(!(KR9A5W_C&G\. MFI^8>2[OA 0/S>NBI>Q9K5=ST<81<8H2*0UO:"0S@+79OQH[SAAR"8H5 M8M1\2-S.=JYU-;T#G%^+;P:J0Y&#CGJ[ ':PY'H";6#:.)0R:L7L&RZ?Z*%^ M8!LK>B@0/L_@H>N8= 4^5.KEZJTRTU2:$88)'SH&MQQB/@:G\O\50>*P$ M8PS)2,O$<$/CMY#<"FGG*A/<^'A+T*WZ'ZQ/-S<6YCKX9+Y9OYKO6EV( ^4L MR4F2 *1MLC_$,\ P1T!*#!.2$"F15_30?N-36VJL;)$5+JB:R0%L;CO_4# & MYGEG'+PW]N<4[G,C?]#^J!OW]"5^/>[^O6]^22WY7' RN665EM!)XU#C[/ MJ]]?J:5X?&+E[^V%\H3@C.0D!BA/,, LC4'.-0=:I"J52J%4.MWX<^UP:BQQ M(&]D!8ZV$@?>V+^*N1MO](GDP 1R&XC^-FULMFU/L>M;^:(P$F5,]?W M;JUU=K]5\L5[-OZDO2JS+.F%A$_BK9!,8_/2\7K41>&]9:0.\;$;#.G52 M4_F**)5QQ#$0<6;V&5DN ,T2!:2 $&9,9"1S2D8\C'A38[+]:EG[^D4[!:.- MAIN(_*V.]J6-EC9A:9/H[-;29[U\"QRMK!<;VZ&-LQ<8UALJH?6)_C#ET'J1 M\(5JHO6)[N7":+WVY=3WD%8&TLUV(G?#"+7QL!;X;N$=%=$_N0>][^ ,V$&%> MZ_VER- 1E0ZB'(SG-@B.%-8WM$.S M5Q^HAJ?OG1V_3)(O%RPNYOUR>MF/HZ2:S^Y-V]*V_V[!'F8DCP5) M4P1R9CV!6"6 889!CB1G,,8LQDYVU$G+4^.:K7"1E>]Q=UWU&-S;2\_,"-X?CV M&ORJ^D4Q&Z8K/RX_VSU7:;94KU@UKW9V-N,2);G9WZ28)0!#+$ >$YN(4[&, M43--M6. ;:@(/M_B<0)OOZR?GECYPRYP31+O.5O4I3+*=9-J]JG5*6*K2-MP M]6]UN+H-?HG*C981MVH&1OF[#I^;C3'DD Q,++O; '=1(WVT$=_BO54@JC48 M=.\4BN(@-PA<97B96P6>"%V\:>#;3AAIOE^*TMY=?:.:_[Y?;K/ZOV;/\Q5; M;&WZF"*4Y1D#QG)) 9:Q!(R*%!"F8J62G)AA\Z-+]\ZG1Y2O'VUYBKKH8+&M M@\":66K# /<<17_U(T*/(7&CP&%@'IC\-D)'/VW$_K/%>E=SHA5]D"V7/V)] M$IU'[Z-2G#\JQ^06T$(PK;5UJS=)D^;+M>GEX[:X^BNEBU(USWUE?ZCJE_FR M*,U&<%.SX7XI#UMI]HF_J-5C83[Y9AYIRCXQS064, -:9\:,E$( "A4&AB"% MS!ADN9"SE4V'YLR*8\GNM97<:C# ZS0#W.!&,JGCD$5QBL,_SJK:B!W]M#""__F_US?!>2V>XN@. MOYC7P_JA'M9M^L)&]6BG^V;$6V]JHU*TIY.MB%0W52-S%_UJ5BZ;$:]8+&Q+ M&XAZM03&'J^>38G1Q!_;%AE[7,X8,Z.+$!JU^O14+&N?=QU14'U$H90HR@!-$ $892G(<:P 3P7!0C&SY?,J'M75V=1;NM$7R@.3.PM@%\: !M)[Z(]6?N,4KV.2+\1JAW]C1R= M>EWST\A4AW?\V*0J5[-?V'\6Y2;O;-54"0\]]1RB<9WJWQAUSV[RX-Z_-;\=S M^D++H\SB;JTV\_;*4_XSU=@C5;&8R]H2J8M=VMW?[[Y?/9GG_H+ZI!6QS-"A.9)P1!73.-< 4(D"S+ %Y M+G.(A U*\0KC[>AK:C-^_]RTD?8NJN6-H&>:#!>@/8^A;X-OQ!-G;^3"#Y4O M8S+(^?&9[E[FJ/BRWA=/A3M>">.0^ICYLUK-RR8TCB_F#VU>%\))GB,)LL0R M"(P-@Q"I@+$>4B68+?&0^KFV+_8U/4=T+6I4;F6-BJVPGC[HRP"[,4L4I)>W5)+:NZCU^+VF6IY/UW5LJJ+@&U__GKHEHU^7<_*U$\+.?_5+)V M47Q\KB?6+.5F;Y+3'&AD8V9%D@*.: J@V:Q(@4BJM/0Q6D:1>FKFS[[LT;)8 M13]J)MN(?M>X.Z/B.8#,QOD:N!'CY 9W8)*M%03<:K@I*1'=EZ4-0[(_UX=A MC:Y1K>Q=U.A@DY15JSKE^(^:I7??A/NG8KWL\;1LU"'ID^['$7S4I6/4L3A> MAL;M/+3>9K4JY\+T_YI5C_?+^C_V .X;6]0G^B(FB:0Y!DF,*,"I0H!)*6QI M1R6YQ E,O$[&KG4XM85D)V\DC*1WD0U M:QCXQN7Q1*TO_L6=[P"NQO[]PGF MP,2]AZ,5LH:O_F%/W#[K,[H!TV\QQBM]CEQYT0V!TS*+CN^%7E\]OG-FR&TO MH?SN9H-6FF8L88 D&AGBR;CA'+,1ASF/XQ0+S#ROX+OV/#4&VL3XU@KXWE-U M1=N-;P;!<&B+\=P552OV7G6)Z+=A+MO[PM7OQ577SD>^O.J)R>D%5M\&;LM. MV^97RS+%H2 * 1G*EVN"QS1SV\2+;:[@QR%YX*F[>_F"96JBY(N,G4SF$B&=5 MIC:[-T3,/"L[Q1$MRE\$S0#SV(O5+SG M\47-^YS*IYV,.ILOZG@\H2\_&#:G_UZIC_IMM9H_L96J9KF,298@#B3%9@4F M&@(:\QS$@E,E4DA9ZI7=YK#YJSX\W#T.;&/>AAU5I_7[GA*7W@JH&Q17=;LJ*I9N\C0-(%< M)110+#* 9.J#MGO@] C8P XR!E4=I MGWXP&ZEX3R!V?I5YKB/267NGX_7QJNMX=][3? M4)S%><8%!C$A"&!.,AO8* !/WA;M#\[X+7 M@2Q[ FU@MAP)+P_"[ FWD1@S&#\_SG0 I9,TN]X?CS4=M#B@39?G@RN4U DT M_C%?/6[NDFP2LOYXO7Y:+YCM]S5;B<>_/]_+_UPW=TR_%I_5-[5 M>)W9*!E]-UI&&S7OMFFM?]Q%>\/_>C/\]P?#_WDS_*^WP__+;O@_71O^D)(O M X],S\5BAI)V[#(S Z-^ID#-T#T&F/='<15L*7]AY>]J9?,7[@HD["7J)#DQ M*TP*TH3;0"R$ :50 B(UYBR/8TQC9Y/?L_/)+26N@4.WP^ZP%1@0S*%I^PC' M.BIK)_Q^.1BG"(G;X?;820P(^TB[B[[A]]MT!.+7N1'Q;7.\S4F@M@<;EM V MPC8Q-AU.DU#G02V%:?C5CU_9JEY_=G_^4=_!5AQ*1A,*H$Z%3<"&0)[B!, D M04QBKIGF/IL2]ZZGMC+4R?/V9(P:N8-*M'H,@-M68!A8!UXC A'UML;]P>G3 MNO;H?51KV1^58^LWH(70=*.VQFQ1_OC,OO_"S&2?LT4UDR31 A(!8LES@&&: M XHT 2D22$ >4\2\ZBV>[65J+&1DBYXVPOEF:SR'HAN_W(S-X-[H5KZ[R"*T M%?$N^EM9]+FS[P2BW]2"YSH:.0E@AZZGZ?JZ'O:O]O+!#,7BTV.Q5+^NZY, MR$2:"LY!GIE_,,]30*%&0"HNM-F_\CB#K@5?CAN?VBROY8MJ :-&0O>Z+R? M=<_P6^$8W$9P1L*K LPEE6\H G/2Y&AU8"XILU\*YN(S@3'LI4W+O_IA VQM MGDV[>7FV&]L/\Z6J$_#,E!2)QHD&&*<$8!8KP*C49B=!N*)$)BKV6I^O=SFU M:;R1^"ZJ9:XWX5NIH]^LW$U.*-\8^.O@NRWK_4(Z,!7T@*9_#+TS0+W&U5_O M==Q8>V<43N+OW=\,S-'55%%:/GQ60LV_67_)_6)1?+B[5MWFQKA8_HN_E?+52MD*W]LSM%3! ;N0U,.P#L]E6^F@G_EVT M52#211DU*D16A[MHHT./"<+" >PU<5B &.,F% O'Z231V U-!?IZE6E,;>O M?+!U8;9'E&V>D^K-6LWB!#%$$04,4V.NQ3 !/%48Q"SG1*E,Q1KZU%EQ[=B+ M"DYLOYT_HI6M1%DIY;<3V]O*[0._IX!P!TZ-U;+?+=7EFI6NJ# MZ(V-Y'>1D;U'IZ\G6KVZ?%W['M?AZXG(B;O7]_V>=Y9[1[D9S.-82A#G-H^9 MH5)@. H"+A2#L< )QGXWIJ]V.35[;5,4OHU>JZ6O-T1J(_I=M%2>J6,&8K,K@82&=;GYH5U,K7VC_"2.@3"G6"73=OW(S( M*'LUM3%>K'2W@.$1B70+*".%&OF XQ=&=$GYSCBADY?&"P2Z).]!I,_%AP+S M2TNS833CRQ:?V%R^7[8IG68PHQ+'F00RU@I@J%/ ),] PF4.8Z;B5''/[-+G M>_+Y1HZ46WHKJ-FWS268+R/1R.J96?H"M&XV4 ]P#SA9$6U0_.LK./DG ME>Y&H=>4TA>Z&C>A=+>^)^FDKSP>F FOW1Q\U$YY0JT#2M0_?=2[3*"?5#DO MI&6HO1A:A)C0:0H!CID$.,LF,8@#L^75]-!OFY&3;?[1>B+OIX$>="LY^ CT MFC]P,&''S3&X!+\T.? 5^;P9N M%AZ+GK:A,[C5NP6F5__>=>5[-3A/>QG74KRHY8F)=_G)T--4 M99U@[>;D?BD_VE12=1FKZG537V*6QVFF$YD!JO*Z+!0'W&SP >**0RUB3F)/ M7Z%#K]/;G[=";[;@S9W9.O/6KC)'K8'OJ>KU$7 ]5NT5U<'/51LX6W%K-&N! MHT9BF[>CN[Y)P(&J,T#]GJA>[W;D(U5G'$[/5-U?O:%.Q_NJ6BOY9EW.EP_- MCK3>PU;[^9K>_J%*,3>;VED:)RF%<0PP@V;WR)0AJ%1PH$2.%&8Z5@)YNAV] MA9@>7VU$V_H3-S7GHI^J6H\_!Y3T\!L8I6A"L@3C##LLHEN3!0*B-F.,-B:/1.2C0([IB#ZHQ[OEC(_XC.NNRW2_=5UFO M;:-?98^_&A!ZKM(2A'+OY5K\I!B_;DL02F<+N(2U%.#YW.[#W["5JG,UR!1J MFLH8R$Q+@#.*0"X@M.4@C(5M?F+8Z<;;^>:G1G4[5Y"5T"L/Q@7\'/R4-Z$R M](%Z[X!X>!IO F8DKZ(?0'[^PXOZ=_H*3]\:SR]X4>(#'^#EI_J[#_)9+=5W MMK!^AUF&!(E9:G;_1#" =9P#AA $&6$BR0FE(O&Z''>EOZF16BM:9%U>M]_V MV ?6S3#K$:Z!V>[BW8X-A%^[(.SE/L<98(:^QK'?Y8O?WCBCO\NEC7.O!48? M'GBQA(HIY'D">,8-=3"L (MI!D@J,I8@I+GRND$6[-D:[YK8+8[!$!?@5)U] M@[GT!G?>O:";SLDAUX?KS>;_>+MBM'SPQ9A\ZVK&2)(EA%.0 M2YNJ@\ <<,42H#F">9(0!1/IFENGJZ.IK?:-K)MO;;25-FK$=4^ZTXEN]]3N M$[.!9WDH7%Z9>5RPN"%+3V?SHV7L<5%R/WN/T_,!/HPO1LXZBL BU8:W()[' M"8DSP*!-^2FU A2C!!".,8)F55<(.WLQSG0P-1+8BAA9&4/"ALZAZ.#+N!&; MH;VL@\#BX=&X$9Z1?!J^,/EY-3HPZ/1KG'MO/,]&A]0'OHVNYT([:,^].**7MD/N0T=M MUX.!Q:98]7B4&?ZSJE;E7*R4M!_<+^7A'_:>;,Z^WB]%:7T^;U3S7_/[8BV- M[?CVCZ84TF>V4F^U5F(UHU#$&2(*"*X@P"DTAA^2ACG3)-:)8#E*,Q__S;CB M3\U!]*M:1;(5.ZKOH%:/=_6_=9*._<(,Y1:$^G//,E3C?DG<_%33'?J!%YG7 M]2@?E]^P3O'M$-^%:*IS*?E& M/9=*S&N;ZHVJ1#E_;N[,;=++U"?Q.:&I%#(%64S,-D)S!1C/$. YBWG"[9;" MZ4[$S9),;;OQJ_FL+:+79*'R"7NX?5RZEZ-1T1YX9?$%VIGM>P.I@[A-'WND M;7X[)NS;A1B%>WO#:D.C_34X?/[D8K$P?[(!E+.,$80008!@Q0"&# *.)02@;>),34N],SI&_UF=8E:93QSP <.G)OY/OQP#$R6 XW$H"F6 M3X%\J2S+>Y),-M'R*5JWY%H^TUH8GYI=OS%?BR=E&YY!B#*-) (XMA$QB"0@ M%T@ B&($.<1YS+T\*@>M3]'AL>@JMN0 &,FT-:>A,;.IO>XCC)F-CKCEG=3M>2LX_%)S?6B@EJW=&E/-7N+!@*9(P!PF!&GFH,S#IMP.=Q!GB< M&C(U?TPD83I%RC.W>'_0CU2TZD6 =R/E7N$IVENHGU3YE94/:O4WM=R$$<14 MDXPE$K 80YM:,P=H.X<.IT8[6Y&W5W6-T%$C=63%#@G8 M< &^FW>&@'-@VGDQ)#TB87I&=*3 F*O(]A0KXX%.9^B,2SOC1=)X:'406./S M7F"<3?'T5"QKVM]$#6JBE(V!MH6%#1M3"2B" L@LP=3\%)N-M8\5>-+#U.BW M$; U4OSXX3**;B;=3=@,S*5^L/@'6%Q2O=<8B)-.Q@U3N*3C223!Q0=[N)QX MSZM5R<1J1F2&29Q#0$EN]G=F.P?R)&% 4BPP8Y!HC3T+(YSK9WH;ZM<'5Q7_ M>L-=Q2V6;O/[9GP&GN-'=Q>CWS8R]CC1.S$8[#KCMJ.7N]9XK&OG]<:3A\,F M_O:VGA.N)N5-$KB@/3QB[OP0[(C;B#<(@S.'WRR?5.1^46 M9PR.><;]Q= TRF=3\.\2DKWZL7NDW>YSKC#O%_^S(YMP^AVS(V[K ,O,Z--.D"4H?W!7*_J<9O MEFKDU.1]H7B:RKRWEL.6Y#?SBCT\E.IA6P/GFUJNU6XR$YDFA"MI/:=FP95F M \!13D&6:Z4R&2<9\W+R7>MP:LOIH;R6;UN);U@FKX+NQJ!]0CDP/]Z(HC?O MN4+3)ZM=[7-4SG)%X)B1G-^[M>QBS6O\F/IVMZ!J'^?!O:CZ+W]?SLW61*SF MW^:K'W6QN%TA/A9#C@AA0&%B"VC%!% N8L!43/-8,RUSKQB_(86=&L_Y6)36 MDJF46)]Z;7-^F3\JQOE$=*PG9[>AZYB7S :H[4YE32R/F+O/1[#";F=>;@=G; MBZIZ72SM089:BA^_LM6Z5&^*)S9?SG*89TQF*4C21 *,(#2[ ZD )/8/&5(4 M>Q7CZ>AK:EQ=W^'";9B>N"D2[U M;\T;:: M2>%C!)QV,;4YO8O#"2W=? 9&MU7^-G &GM$G=5GZK=Q\6?=!PH]>J'+S92TO M!AC=6KFYWDO\;5%PMM@K^MY<1S/L_,%0AZW,>K3)39#&4"D,&!(88(@8R"DF M@%.S*I44(C?[2GP*;B8[V^M4K^ T"FXDM +0ER>V6+Q:5_.E ML@F*J,18&7,1TH0#K%0"0\<0IC]N%]J>V,#0B1K6,T49(WRH_ MAPAVTWH/N Q,W'Z0!%3R.:OXS05\#EL=N6[/695.R_6:PQ%UM]UB_U@.3 U[P-U%6YFCG=#1;X/$2?@!U>M56;>>Q[T_ZX7&R:5: MO[?#[\_/5[9%>[-FY[N>J^K-O!*+HEJ7:GL5#!*LA>0IB#-;;#!/C,U!<&RV MJK&"C I"6.I[M]ZY]ZE1U9[PM95^('ZTD]_E1ED/8^/(9$,A/C2A]0AVT%U_ M;]#ZS@/@+L#H.0*\L3F7/\"_D0#GW"NVL,;%ET>E5M4;M6+S1;4S!F+-,DED M# 0DEMXD,R882D#"949A#I.<([=;7M<[\YE;X]S>:L6-&GFC5F /)T\WN Y. MM-X &YB,SB/E9E+YPN;A".L-OI&\7AL8JP9&V4C\EYY\6DYH=#JPNEL8SUOE MI,F!:\KMC5 _U+OY0I6O;OFA?:G9O6U3I=:QF@CI*\?ZA!!5S]4,"[C^*$<(0GP0YU5_&8_U&&K(_NA MSJITZH_F MW]0LH3)/\H0"114"V'(&T[$ #"62**VX$%YY3X*DF!JIV"OIM8]B]:A*Q:RH MGC',06/AQCB#(SPP&S7RV]/QHQ"IK1)WFRN%U5UD%(GJ 8BL*I'5I<>XZ%N@ M[#5B.DB0<6.I;\'J),KZIL8"^;%M?ZZLAZJ^Y/=8+,S[E:V)N?HQ2Z6B6)KQ M(3&F )/4V%!)G %*I$BTU#0EV*=>T+4.O5AOA!)"7VT?T6(G=4V!U9[<_ZLN MGKQRW"PY ^_(>SW".33%'6'XMALU?]YRA*)7BKK6Y[ALY(C "?&XOA?&,:?% M=#]:$^)>B'*MY%[G,XTHE!0RH+04 ,LX!RS+5[]_DF5]@_L0<%9RF*.$,O,0"3$GIPI&[3-0(X1E5AF*(^) MW\G9YMZ*ZWN0U@&RZUE:/] -?IRVC]KG&K5/UU$+.$V[ M#D>_!VH=_8U\IG9=\]-C-8=WPOBC"=Y6'YH-F)F8JEJU!#7CBF#%.06(Z11@ MDL> )]IF;D,"_JZ;GI0MB-.WK" M;6#J:*78" Y8*FS<,I* 91P!2E62$97JA-^2/JRCZZFQ2IT6 M2^Q$;]S";'%3$K$NZ!U/GP8!=.ASJ),48ZWUQ>MRT? "FHZ=3>R<"T5$N)$\3Z#K\;D35*Z@#\U-7"-!.X*'2)G5@,UP6 MI7.=OF!2I0X,NG,L=;T8QC^?#.;*--2JQ*.?_5')FB <2Q!#( MD(;V9A<$-&$2*)F0+$$T)=++3]/=W=289RMM$X]S%U6UP!';2AS]U/SISWZT M2[\M<[ MJ%]?@SH@:M ?LWXC"#WZ'SF:T!^9T\C"@#8"3_$M.>Y7,_EDOF2;5)2,TYS1 MU/ 6-&92DJ> :YX 2J#B7&>:J<3KS/YR7U.CJ78M-]-+%$]/Q;(QE:)Y5:WK MLD+/Z]+\9";9JFCCF"-F2QZ:5]:K:L66TLZ[]=(,A+WXT4;M1N_KEUW/YCN[&/86_KO?)F;O#*P$9.;ZJ M\NE#L?TZ4RX$$3H&/,X$P)HCD',H .$4QHR0C'&GC=J9MJ?&.%:ZR(H7DE#U M"+9N%K@1C(%G?9\X>&3+",=CI/08'KCX9<8XKWEG*HRC5\;+?7%>UH-D%Q<> MN<$Z.KC4L4VPE=,L%CDB &76AZ1BLZE+H,T.1$5JAE!"3#UKP%_LS.?K.%)M M]S,WN?X:8,:[2;$%=7V;T)<>_3F>N%-#H[/ZKDH[?'6^Z4NRJ?:,GSU MH_VP+@ [PY#%QG)0(!78!NGD-DT&,=8$D9P(F$*,O/([!\@P-8K8K^Z]R2NS MU2+:4^/.UO;>9IZI=?%UH02,F*-1,NPX#&VM##($M]37]@5QH++9SF*\5#5L M7YPZBEQ[-Q7@YWE=E.HP15:6I%)IS $Q]I A1"8!S:W;F;$DSIF*H90>V59/ M.IC>'NJ3*FMD;1#OV^4_?SQY7_:Z *6#^^ 8F(2M;Y)Q8S 40#S_03<", MY KR \C/&W11_TZ'T.E;X_F$+DI\X!:Z_%2@S;?FE?JOM6GN[3>;8&B7HA?I M'*%OK06V%4:2GY7AW+6JMF<^"6)( M,X8 1]+>G6<"/=;W:1'N4;.1M)_\B>9B\9H(] +UD=1OV)S:4Q([^R/_XQ7SW:( MC M:IH_U)^^LO&]^X&DLTRA+(YC"CB&"< DPV93G"5 BQ1Q3O6")3[Y6HNYXNU)?CGZG3;0L5M%\V:ADTV9;EZ6EZ(5-I/)LS+G-S:*:L@5;B/4B)-_5 M &/OR-HO.IY#<_I>),R^>M'>"&\4C"R?1'LJVI__'O)JEB$">: 4H2Q3 G&AC MK;/4C+=(,Y%+\[G7(?=!ZU-SM]3"15:ZZ#<8;#NH_ MZP/27C>KM\@S[MZV!^1.ML)]M-G/Q8YMD)V]F8M@JFV*:@RP1A10Q15("#1$ M:@QBB/VRH5WH:&K$>.;.PO4@/3]H'<\;>@!LZ%.#$*QNOMTQ:$:/2WV]Z-V. MJ]D\KCT?&K1N)Q&:/LWT4>)CC9LJ9K1)$^SF!)[,L -C8-X&DL0!Q# MS&EJ#!Y&P^MR;+J9FHVS*QXA6/48:6-]5LVI_L[)LIW&L;7<1C9.G;XTD^U3:[_[JATWLNKI?2IL5 M[7F7#D?CE,82"I#&"0=8QH8H),8 ,2Q42FP9'[^"SHX=3XTZ]@.%-I+?U>F= MFS#^K?2W9BJZ,AZ.>Z@!4![ZH/$F4&\(I')#:)CPJ"M]OU#0DQLBET.9'-_W M8ZZJ7,V^K(S59!OZFRH>2O;\.!=L48?;8,8HS](8V'SU -LTTE2AU.S*$,RD MB+.,.%TKZ^QE:IRT+Y]7R%(WEC+-".8L RE,C&V8&4!S)3-[3X-F.LDS31RO MZ/:&YCB;UX'P[*;LWC :F)]]P'%F8R?E.ZC7O+]'N^:W8\KM[F 4?G72<4.F M;@^'NK56;+Y4ML9MG?U[=@/"HQI=BFE; W>SO[U!^ @41,%0 "3 M)Z)B5Z:3Q%KK@_!I 5A#B4K!<8$PL\K(/2]F:MQYS]CV:=L@EVBD7 6[">L->\!CNU^WJ,F:>SK6MP#.;:G'MOO.R: :T/\FF&GO.R M,_VTKQM7)#*+2PQ*Q$H )>:@S#3349S C"0YH;>4V_XTU1IP)_LL]XIN%[%U MVI4Z(3;VIC1,W;1K2 3SRH@7Z0=1VU\-S>RM8WZV)WL[X23$]!7;N&-,ZJKCGV4N=@Z$?5/ZZV MZN]=YIYE&4G3*3,CH1 3$9B46I6COLY1IW1$MYM(J1V]B$VD%?=8W=$2*J^5 M&TUECUN5T1*1DXJ+MN\[[.V^*T_JT\M<=(GPBK$RF>8@SPAM4H9)@A7D)$:0 MP (B6IAWQCX8>VI]LL\_XM[H]D&LJB5_O^!ZWSM]]#:]G#TL5(U+'EGRI"JWFU M>>F"S-]M1=T\M_HI9@F51/ ,@R(1",",4T!P+D$L:,IBD98Q)/:=BZX+GMKB M5]0/73H1&4!LM@4* 5Q@6FA5[O)'=EKO4TGN(J5YVPU;Z>Z[TY Y6OZ["QG( M?H6.0N:(G.\B9/&^:]>119W+J\LJO]VN-\LGL;I?K\5F7RB@J_R39QA+7,1 M<,(!)#(%95R4($]EEF<(,U1:49.YZ*F1T\>G9U*MZF_@II7:NE\YGK5V140; M8WN08SX?AD;Z<.)8Q[)W76 MNI.;J/-/V9]]O%]LE)_S53Q6NL;(8O-9S>E,4"BXI+%:K5SH'C8"T(0S '%9 M%J*,,9-&Q[.7!$QMY38Z1GLE(ZVE^;G'61"O'WO<"DW@)6R)BM69QY#I-QQY MG!UVM!./(:/Z!QZ#S_G;5NQV,3.)8@IS2H'$>0Z@P/K>6"%7T#3!*2YSM;AO MW4GLI$UM<1_ZMFSGV\X[A6_?,.R1)HR765Y0@!."%%\6'! ")9"%VLQQ223G MV*YNDC>LQTDVW:'=Z5B)];_I5#11WPNW/3Q]0NZ^+7."\95V8I^N?EJ][+9. M( F]P=H+?/4]U8GM)MNHTY=<B>D1T$[9 MB.RTM>Q0[3 79B04%M_ S*24C[3V4:=^1%^BW[0%4;7X6[3'?6]%D/J1[B#Z MS1*QUF+DU!!7E$[S09Q'NJ'MZDF/P5Y+RCY]7PC.PU9ROT,5NO>6O?NH/^VXJGSS9YU3;>1?NY;AN] M[@WUW,LUQ!QX;_3J5E79#K_P*V5-]\NY^H/2UW<\Z?HD<+Z?L$_*ZTO_+E? M+[BY >.\B&G&2\!8(@ L, $$E27@:1EG/$,Y9$:W$.%4G!HK'-AUX +HC)?^ M[TT;ILT/LH@.7[JQS*>WR3=T[5YU2H,?!0:?S1OJB_H&/$PE4F]:OE+-4M\H M7ZYNZEV2:S6_76,5RR_%BGY7L(L9+)(8ILIS0;#NH\)C0/*<@()DNDTQSSBD-CZ, MM093>OV2E.EQ5E)&2L_:[U::UJ7\75)7+\(ZS%C>P K,2N%QLJG8Y &O MD=)^'7&S+-ET!8_ANDV77AZQ>-,5_0\K.%U[^-9#KO=/S_/EBQ#?Q.IGQ<2% M$_%Y/2?JIR]2.:/+QX4^[&[2'-\NUYOVJ",EB,>9\A%Y@2" .N2VQ+H0%(19 M@A*2E-"N.'$(+:?&R6\RPPSI3<<=P6 /,R)ET]%7^G0*P#6E\^]0@AS/?I:;U85VRC19/WC M?E'_GVXR])/,M7.O3^%T59[%9H:R.,D1BD%"B:YGSS+UE9$A$*>DE )R?6-B MU]S"5/34O@?VFM?-#VU[7!@C;GH&&0+'X$>3.PCK^+Z&7=4//<7OHKWJ/@\M M;>'R>Y9I+'WD(TY;5$Y//JU'<*8LH5[2(MZ)GV*^K(OO];ZTNY#I[TM%EG*Y M>OJP7-6W5>LW+[J>?]U)*BL)S&*AVYKI&AP%Y(!@1D$.XT2@O$P+816>YT6K M"1)=;52]/'MF';I(N_2!S3)J;:N+ 3?6W;7M+"QZ@/F=:6,6'7?^PA/L2%/G MPL#^H/9,SAX4&YNW_6%YAM(]#AX@R;#K#/"]>A)RI59#JX8NJO*%SJO'VGW^ MIOZ[EI7@;2+8WIF>984.]DES4&1Q 6!>EJ!,$0%0E@GBA'+*;BYWXDW;J7T[ M]-2/ECO]U]&ZL\!CQMW-,VWV+3"9^0O\[7 UX^^NUY-E9^]=U)_RORR\9XY.R+;%9Z2^:@OCRRA<:V<\\*9K MB:[OY-='KO;YE1JN]J::9+J9* 05I6*6E"?Z\#3A@/"" YGP."\@@20UN@JZ M*FEJ/DU;GDII&QVJVV:TVI;ON@3P,+]XA2TPK3@CYE#:ZPH:-]?XNC3^R,6^ MKIAY6O7KV@N.&R!=S%.14+6JSP+W6RY%1"NA?^B*V*(<)@E.8B 2O1.2.058 M4@BX@+ L*,I*F5CMA$PE3XT^=OIU':#Z)87K2L+1:F=6[TS--M5@[I7NG5;=1?MI:!7WN'VRQS#$'.*:2 YZ@ D*,48$QTDG\>DYRE!'*K(YQC 5/CIT_+Q2/XI/:OO*G" M;5G7_ 0_,WZY!97 -&(.B'U)J0M6>RT8=2QCW')0%RP\*?9TZ3G'5=P6_/@J MGI>KC8Z1^R8>ZTR565SRHH"L!+Q$"8"$2$ AS$#!4I%15,0PL;KNNRQJ:BM[ M7W!GM=,U6K?*6J[RR_@:KG^7O ]FI&WZX!9L\"5['PR@>7I8W+#%>M M/N&(ZV\XI)SU,M$/@]7N%_QWLOJ7:"5UA[E-Y#R*,2[B H(\SG23MEPW%TA3 M4.20YSB-99$9G7ZXJS U=NF,T,OE.(JS#D#:6]*[P[#+AKAAPH9I:9QI"$Q7 M$Y\!BQRZX#,Q4H)=?T9TE'C=)[H_(T_[&5GOK/F[I\R[FU <3,MS&WF\G+V; M+#](Z+MM)/LS]^\KPJO%X[>7)[J""9&7!BIPP MHP#EDY&G]N71*A?A96V\X_SX<;[3S[K-F M],^WSS_@4-&Q6O0*%,*2\81A"#"$N@&-SG3*) 8YJU,#&,Z)40&5DY&GMO1: MY5PJ.AX -KSX;H(A\.(S1L"NHN,Y:V^NZ'@PZ'@5'<_9P#CLGNU>.B MOJ5:;+YMGY_G+V^73T_51KMK7X4.HE&+O977I-\V?]\(/L."I#AF"2@9% "R MO !4Y 0P*B7)<;177<=#M\KO\&_SQG?Z>\P^^OO2YU]L9'P6FX\+MGP2N@_N]^6Y9B>[LFMG6O]@E)%40@I@ MAIB^F&: 0EK_FN4E24H!+2-]0ZAILSA&B@W>6ZE#;E:=G=%";**Y;C6M_E7_ M7)_8;9L^0]%R5_'0N;U3D$^!F6?UVC,;F/:.IG1G8*1[1S4F1K]I(_^F_SS0 M3&I?US)P,ZF0$^(UG"B$GN-&'@5$^B1(*:0LK_W]/E0+HI3K"YQ!B!!$I0!E MKOL>,!B#,DT)4%\F!<&,H8(JCW&Y(7.SKQ-ST59.Y4Z!@!?_Q^PO.YU[[.^E MM]^Y>3"C]##H!B;J*[W\=LKWZ#=X [\!Q$9HW'=.^A0:]@V@8MBH;V@$-RYK M6/0[^=6&>KX1"R&KS4SQ59*G,E&H(^7_B@2!,B8$9!G,8BK+F&)DYPE?D#0] M9[8&?:W#F'7)EJIQ=3;DERT]78+6C(L\P!68>%HG4*>@M#I&O[5:>DQGNX*# M3SJY)&I4[KAB[S%17'M\A.8(?RUG6+$%*?(,"%(B &.JR]X6!. R2Z@DJ"AI M&JPUPE_+J1V@I7&:!&R,H WXY" , ;F%M>F"'\M7ZDEPAZ]5VN(H%28;CN$ M/3XW-4/H#>/&;/]L&QWK"G8RR;($2P*D^J_N*TD D0@!3),XCQGE:6Z5/]<; M>VJ,U*KF5"ZP#YD9[S@"$9A3##&PYHDSUOKD@/[PHZ[O,W8=K]USC[BMRX=5 M]22^DDUW6\1H*@5"!-"D3 $L60EH3 H@U=:#02(A3*W6YM'X4UN?M7J1UL\R M:.@2?F8+]094 B]6&T"L5^P%LWVNVF,1HZ[<"_8=K]Y+C[E6E'QZWJJUH@-Z MZX*6[2=1JN]5),L"Y(A O3=07["%Q&IOD!>0IP1SN_KF%^1,;45W:M;QZ<^[ M5I_KI=S\15:NR_P2R&;+W0-T@9?]#K6=B@&6_Q48_%8J/"]JY!J#@_:>5@<< M?MRUSE9=)_"#TNY<^<'=Y6L.,Y*D+ 8H*Q5=L!@"G$N=%"8SF.G>9#FW*R!N M)'=J]-'5^]2SN2\G?5!6U.02]::I,".5 ')AE/V#I4YK)"RF]Y+C/1(]?H MLL+CM%"7W>MNO%77W>[.(W3AP7T?D1BG"2YI!D1>9@!BD0!:D!RH'0LK(2I2 M7'"[.Y++PJ9W3=(T*I_K2@Z*$)^B^5YM.SH:0-B,@?R@%IAT&KAZ6H9IPW(= M"Y^T,B!M5":Y;O4Q>1B\X=QK==_C,M7-FW@A0$RA8@A&$* Q90 C*AB1"'.S M0C?G!I^:Q])TOKRI2ZA#$]7I]D[UA(1UF]3I=T<-UA'5I1'JZ_4_-6E[ZJO; M:4UW^W2)7<6-C'(L^AY1"TR25;SSHF%Q^VKW[PMMJ\W*\$ M>;OD0C&+\D%P*0%-<*K\$;5WP4F* "IP6"W? D'H0U0SZZTJ'YPS]8;"!P?#C5;WX)P1_;('9__N'%>YTI$, M[T3S_Q\7#ROQ3"I=0URH?09OX[7N%[Q>\6UE1\AB3G.: HKB$L X5GN%(H.@ M2&F&"4V3M$"SA7C4Q6W-OI/=%#'Z-)?-I[FO3L@+P5KKKL)O4^MG67]1M1NW MIM*O?9"FRSR9?<\'Q'ZT$,]:\>BWSH2_Z=#];BZZL$\]%8W/X+N:YVT(>@X. M==%D[-C1&] Z$UIZRVCVKDI;\NDE2>GW:J.\:8R*/,8)!D7.<@#+% .:HQ0@ M)@F/$PJ3,C-U5XX'GYK+4BNEBYHEZ6_T;UTQN1=SW^4$O>O^RRV8!&8>6SBL MG)E+=M_@T)P,.9I3<\F8OF-S\1F',\[VVD7VKEW^ZEV[M!&;W\7J2;DS>2D% MCB6 N5#_(9@!&N<0(+6H!94)IH5Y24\+P5-;W*UND;XH,710K+$V.#(-A&!@ M*C"XKMT%@T?? R)L<10;".F1CFD](FYWC.L V^ 1K\UXXQW_.EAY<#3L\KYS M3-_3DN>JPV9?_M!U"=-=[!>_13\PW+55,'ZN%YO=8/062Y9+HJ$ M !FG3&]@,U#&/ 5Q7N8T%@5-F%5K!VL-ID;]OY-?=7FJQ:[P^;HV0%=-H"*J ME-J"1]OGNGF-6+%J7;L]:VUQM'QN6C__IC9=S6N7,^L\3:#9SC;HM(0^'JMU MCVKE[Z)6_:C1/^H,J',_VPIOG0U>(Q#=X/,<,"]E3(\I6]>BYIWMSR+?=K"NNJWFO?E9,>27"-L+(9D;,^"\0SH&9 MKX.XKW;T80A.^R(\]L!XK:UC(7[-4'LE+'DN4,$ ETP B%@. M=&M3(#%!J=2I'S1V"..^0:6I\5UKT5W4VA3UC(H:JZ*]65%C5[0W+/I3FQ;5 MMKD%@-\ROV8T.>ZLC7,.$7C"7*/*/6 <(.#\%JU>(Q;= XH7PM1]C.S&YETC M:R6O=GQW^1T)B?,42PQD7A0 %B4$99XF("\RF?(XX05!-AQ]2=#4F'?7B5TI MVNS[G%-I+F)KQH\^$ O,>FY@6;/8-21\&'ENEP1,C0WZ M.D9:2:LB&1=A'"8 '^ $/R:SQ,6JWO60\;<6OCX[]F@5L( M:: MNNYI&6DUW0*]+X!J>DY^*U3!5[DU2@ZGW4,@^#W2/BMIY'/K(6M/#Z<'GW;C M@0^D6OV3S+?BSE7GLT#AF(LNW'2+'>EDM]PNN0Q?4?D8L6"76^X/%.,Y1F4,( M.%9^"BP2W8(#(\"0[K=#DB(IF''(F(G$J?%1/^U*KYL#K1T.?6KU]E@<^L*$F'F7@4$.S.XF1:([(]I=;:3MB&I#/+JA M-\ X6K7H"VI,IV+T,$Y65:.O#.780W?7MOZ](MW-RW]47+RKUFR^U"T!ORS^ M(9:/*_+\HV(ZA73]::FTJGX*WJ1%?5Q\7/#J9\6W9/YAN1+5XZ(^ %PIXG[S MTOSXLE^^4DTQ+T4)$I@H/DTY!023!,2BX&66YP0A:L>G8ZH_/2+NK->AM77) MJKFVK] OE->8.Z\]BL?4?]RNQJ\P,R=] MD%]#!U]E$-X_/<^7+T)\%?.Z:L"^!-LLP[G E!<@ED4)("MS0&"2 YS00A+! MBCBQ[SEE+'YZ7UI=N"Y;/NE$ZWH_?VMU@P'XS;Y60D$:^&OA0B6#3O>H5;Y? MH#%D%8/KF(6M73 @_Y4K%EQ'YGJ= H,Q'%,[:@;=!]!EE%*ABSHBW=T3UZ$R M*0.Y$'$A:4X2G%NVBSX0,$%*TV/.)0P M;@;$6>M.DAS./^6X9:_SO+YL-^L-43[/XG&&\PQ2+AE@@E )2D!R6$*BI3G M>9)0Q%(T>ZX#<[]MR&ICN+<^EF/S>3V6%NZC^T8\5@L=0QA1,M>);M%O3DFE MI[ 6/).ID#F@)"!EWHWG)QI/=X,4'73MQM>6=ZHS9 M![+ZLE+DI-RH.B*@BSZ>I8*G2*A)W+>D!,-),.,)_] &)H\]JFV2OM)9 M?8:C1NLVNFB7C^"S+Y@-4'[;A1E)'KF+F T:I\W%K-YVXZK/=5&-+W)W#_1- M/-9WX[.TI'F9E@B@A"< 0DP!CB4%.IJQT&7P36C'2^0!6::/5K[2^1OU]"RYI6K2/BDDLO"1F6/JS8?$\;U%QQ+ MWQ_<$?^'J!Y_*!:Z_ZG^]5%\%4^D6G1_U"63DAG)6!J7&0,H+O0>,9.@A!@" MD1>T3 J>B!A;5<6W5&!JC'(47K&.0-09 4AC1;3JS&@#7>J.0+IJT8L@*]O] MD/6,F?%1R'D(3%,G$2Z=]E&K?K33OWFBKLKFL5J_(W1>"_G;ZC!NC7]'A$[* M_[N.XY@QUA1$JL?[0N?58WW)M/[8%!+ALS+%9586$A2,IX6CJM78,I?L"MQF1.81Q,"\U7#17L?HXS78 M[)/+S,#PFF5V1>2XZ69F]I_DG1F^YAI"K(9]NUQO9@4GG&29 (E@ND CA\$>V70:W'K\@&L=K_5F53'E0+PEZQ_W"_YQ M\5/]4[VKZI6\RSB),RY2@$JUS8%)*0 5NE2WR 4MTT+M?JSJP)B)G=IWO=(, M=)U$5CL+(J9,L*VN982ZV4+WCV5@%M@K'&F-Z]2@GLYANI[:H>2WSI61Y)%K M6=F@<5JORNIMQX-;L=&C/ZR6/RLN^)N7/]9""=KM?N[9IOI91^SLXD8(RW)6 M)IG.*2H Y'$&:%I@P"GEE.24)(5EL(V]$M,+R-F?#)"=MO]F>&!\!! M\0U],BPV#8%UZNO8[]^T!6KO][?>BB!!0>X@>CU4MM=BW--F9Y1.CJ'= M1W*D0IVL)';GWFH3-LM@7&!>(D"X/G6110Q*K']%)2PE3+$NV&-'=2="ID=E M[\2:K:JZXKV^D'FS75<+L;:]M#I%TY"L;D(H-!G5RO6NJ?01U)]!4D\NX^"5 M3TZEC,L7%ZT\X8/+3SK&UXB57*Z>=+Q8$[K3-OK.)60Y31@0)19J%\8+4!9< M@%BBE).$(11SJX":\W*FMNWJJ=GU8+#KFGX-5[/E[P&MP!S@ I1]!,PP#%Y# M7BZ(&C?&9=C>DZ"6*X\[%,7YMGU^GK_LCZ1;3Q6.TU_HN(G*C MFUC/Y\N_:C]+-P%[NQ*\VD2?EFL%_%O?)]?60'KNEF,H?.Q>.7:8G.F48SG MK25AVEC%K^)YN=*G1!\7M9^HO^C>O+1_W!?PX +GG*<4%#B5:JLG,2@I+ #" MHBA@5A)>E#9;/4<])N<"]DIWM"'+T:JSQ+4>B]W,F+'?"'B'=BA[4+=J1CLC MHIX5=_K8NWMBG)(G3IB&J5YBI\HK%2)QPNMR31&WX1P)]$C6[H(I%7F<%A/IRQIWXRHL2-J#!FI*NDU'$>K2WI1D>E4 M)KV&E55MTJN#.;;\Z,XS]MO<-T(Y;F)WF/%AN6J.,O1)QLX;@#0A*18"H PI MOF2" DP8!4E64)PGD.#8*O;348^I^6''1VZ6(56NLV%&D"-@')@BSY^^T=J( MR\=O0?R[&\'TVE/$495QFXS^KOAYW1-;*S'N9MD5HY-=M/- ?KI"OR'KBMTO^+MJKO>%LPRC M!":YF@^8*\>PT)F_)*5 Y%Q@$A=8,*NFD5?D3VD'Z:-31>D>?MZ;?-?K"$_:K M4;><_B)_)_^EME=;Y;RK<=\M=7F165EFA%,,04SU-W]&H%G\ KUQP:JY5[U?1;%_%E :.MYZLV M]I?V]8<=PLO_L5SROZKY7!^G,'W#I+[769WT3PLA4Z:^?@NH5CDO"T!+"8$H M*>$9Q((0HQOV02E36^6=GG?13M.H5=4BDOHBIL/KW1M2@==[8) L(LY]@#52 MT+D+:'9AY]? &(P\O_CR>,'GU_0_B#^_^O MMV3B\$;N@;S4Q0W>;<6LC&-9 M$D@ HEFJ?!]) *&, (F2%"4R8[BP*E=T3: 508X6BY5=?E M"FP :IN[+C\ CG*I)<[<]K?ZWD5*8=\W5]>A\7]%-2#S%>ZBKB-P_M+)X+U; MP\)UZ92%FL67-M[\J$DO@KHJF@Y68KIK,L88E)PGH*"\H @)G"+HVN5S6/3T M[I+Z$GCNE=PDL(X5RFZ$5)G;[BNQ7 M"M8V0^1R=+;A^[ZZ-=8W3S^6FN@"X>VCQ:(1>V"Z/PRJ\EN1DH8N8^*9A08$CLTYUVT_PS &+]G?MWU5GP!Q M_ZM:SQ)(19X7". $JUU?$4M LRP%C(M8T!)11(UJNQR,.C5^T !6ZTW%R#SZ M73'U=M76XM#*6ERN[6&[?IGF!$;H;9@;#E8W:2=VWWISMA]PM)NR$QOZ-V.G M?W0\F-%536K\R5P7>?PP7_[52V_=9Y\BR5*!SV8,18][-&.'Q\G)C.7K 7J8O6OSR;XJEZ6[9*52 M"!&3%%"""@!%D0!*$00D9BQ%2,3<]F395H7IG3";]#'K3EJQH_JN/P?NI$6V0+$EB*&#*0"82Y;/EL 2$91QP&.>)+&/$"J.>90:RIN:QZ1XF M.W6/$H0<2D9> 7J8P#S#%YBKQD7.(@;*'X(C14+=A*1=2)09-H.!45>&&"\\ MRLR6@R IPU<;=5IS)SUT?7:&+N,!YG!2 2"(!C)6OB>,4@8*2/)4% MPY1:98H92YX:^Y[/:M?F# ;^W B_F1L9!-3 G#R,9] 0!FNXO%9&-Q8^;JUT M6TQ.JJ=;#^!&73IE;?U%ME5 =2KMNMCO0Z5>Y+KVP_SA%-LA0"F"8,0"PYH$@F M($[+5!":YP(+XSVNL=BI.5R=XDT"^5[UZ$!WE_V;^4P8;(*#X!N8L:8 K<4N M.0C$(VV8S:#VM&6V!FIP]VP^VG@;:6L+#_;4]F_["K7MBM8_D!?M#,\H)X4H M! 2)B F .8\!H04%DF-!TIC'@@@[]_2JS.EYIKN>#<^-AK<&RAZ#;.9O>@4N M,'%?"(;= ?EP!4@/D:\7P D;ZWHL])6C6R]@<#V>]=*+KH7NVCBV+W)7TO)A MN:X.(BQD$J=YAB1 7&8 RI2",D4,9"3%!42P+*21,VDC=&JNY#X84^W2]M4_ M.[7=R[";3( 9"_F&-3 1>4#4H6*=.41^B]09R!VY+ITY$J>EZ"S>=8W$H_.& M[W2T[8Q"R;(,YX#Q0C%01@4H&5:[6R33K)"8,I$[5&T_E&*T-L8OQ]XIJ;ZE MM9:V070'.!H2B3TL8X7$M5!\'(;"(>CMG,5^8]L.)(P[,V&TRA"6((8J$F&JQJO5 MB[#$::ATA.U0+NWL=4]*7_2-MR9U[G:JM MZ+G.FE#XU+^OOZL97^O$[D_Z'/[S5A^Z+V7]\OKW[7Q3/<\KL9H5M(28T1*4 MB2P )&D,RD)RD+(T18P+GB?F-Z%C:S\U6NZ9$9':CKMHTUD2S;4I=]&B-J;N M^5";?GOOVT[/#(?K4?'H^[SX]W]I/S^__5WQZ+"ZCI_PI&NE.>]*?)KL;\]>: MS<&+]]&5&N_^_K7P/@@#>#4EW':E2LFG95,*IQGY?KOYL5Q5_R/XK"Q9K/2D M@$.F=I\R08#2/ H,"KG;B!K:NY,HVK3FNJN]58BLE,W^JWY)\N^ M+4-@F^TE/4$8V"-HT?O6H-"9R4'$'$$8(XPH(G( "*X3!'A"2-61?(.AY\:5^RUJRODW$6L MJ=)JQQ!'$)IQ@CLP@5F@AXG6S-^2/V^QST5^)&'497W>NN.%?.$INZ7+135[ MO]A4FY>WZK.Z(O./"RY^_7_B95;F@A:2)2#/RUA'!D* "=&M;W-.DX3).$E, M5N]%"5-;P(V24:ME5*L9*3W-%O!E((?7L!=X B]C:V2,U_-5Z_=+>MVMZ;5@ M?W]<_OS?ZMUF.:L?CE?QY7%'6K6\O4'79?S^R>Q>JP6C_]8+?_:_- G M&63Q,LMIG.4,Z:8F.=;?RT0M:ED 7LA,2EGB.#7Z2KXB9Z)+N],U:I2U7=CG M(35=WC<#-1E/VCBZ>(??MQQ4R_FWSNFH7?_'9S_Z,%YJ'34:NWQ M&, *):\' F:2QST:L$+CY)# [FV'8)'[)$Z^$45ZY*\VY5=Q#TJISD(J=4V. M5"K?I%"<5,8BB3-:%'EF=%EQ?OBI,8[2+VH5=,FD/H5OF$IN!R4P97C'P^+2 M_B9<1KI5[^'CZ7+[HM6#M\^G;XUW/7Q1XX/[V\M/^4K7;J..>S6,=.%)P07) M0(ZASF)BRHU*$ :"*2,1CSG+J4,6DXELHP_K^+E-NZSC5:^ UT)8GH<:@6_F M17G#\E63N;NLAI[2(?.Y+T,4-J7[C-Q7SNJ^C,3UQ.Z!=UUI5B_2^CEY"4?(F?A, M[G@$)@B_4-BX2^Z0C.0LV4!CZ32=MWW893IZ9T2'Z;RVA^[2A6<<3YUT9,J; MX^"Y&8T9Q5D9 Y26NN]1F0":4P&R6# B.!$TSRR[W9X59/-9'*FWK8[7::-< M64]3R^.D\[ :'A_=#%7HXZ)SD<#[>,N[Z+/ZK.L8$O]G1H/0>#TC.B]IW#.A M06M/SH"&G_;1S637@+OM:#N3>4G3@N0@ED+Y,Z(L 64( H0@3QB.D:-#\O5W7 _%)&34V$)9U7CZ2IHPZB?6^-^J^6[;&OS( 9I?C#-3"U MG/0AV>FZZX<=JN7()53"-1@YD?B*[40N63_YNK#,\N8B#/&"> 9Q0!2F ,*8P&4 MZU*F3)29Y(5%754KX5-CHE;]J&KUU_DZCSL+HJHV(5HW-H!J 9ZU%5:50.TF MQV"G%A#RP"35H?VQA_9>^:C1/OJV1_LA,-I6U5>#H3Y:#5:OZ-O69'6"[TIE M5KLQQZS/ZF3M4956MS$E!^V7+0')"5-8@'3'*0P45M8EG! LBP'!2TR M)@M>R-+\>K(_\M2XO]'-Y4SI "\#QG9%(3 =>P+ @D1=@1B)(4T!L:.^=>A-+XMO!F@,+?$+;8C--0Y!HDGF\$S\L: M^Q9PT.(S-W_#S[OF5=4NSU?Q1*J%;CZR3S3_LCL9TF>CVB'Z7CVI1[[(;[KY MO%0^DOK;4=6KF!40^B4&KH@6: +^9<'Y5'#F5+@B^I[EX8<0XE@19"5YM/A!6'Z6^6VJE9BG. M,.),SW"2 IAGNJ<(I2#!5%"94LIR9E4+Y(R0J3%WHV/4*1G]V:AIF;5_%DXS M?KT5I, D:8V/?7V/ 0"\%O8X)V?+U3M@?%ZNVHA?MRK5GM<3NY='89P M8Z;W3\_SY8M0SM%2.Y!8M>!-J,CK^ %)J%.5[!JE.WS4( (#V-H?-+0=:&CDH\Q M!L>48_ZB&]%\$NNU$!<"2MJXPG6S15.#Z@9':T;F_RG(:I8@+!**%/JXX#J. M'H&20P)*6!:LWC=)JQ,Q=U6FYB#I:YCHM]7N$*6,GI:+S0_;PHDWS(T9:8V# M>& V:XRXBX:BUCI;NI,MWM3 ;>R)M$'^Z.YV4'WRX W:C$J0MZ-VS)P>1G3) M,U+&IVG\(!9+NF;+KC4SRCE,FN2O M>:>\>S/0:]B;;;$#(1J8EX_:@/9VTIWJ00,\'$ +U0+TFOA7Z_]IB,M0\T_3 M(=QX['ZQJ7@UW^K:9]\$TP(JL7[_B\VW7/ /RCB=(KMMOA._R/=DI<_*U@]B MU231OIP?X/Y7M9[!-"E3*2#@*2)J.RUR@ M< H$**>(BIX*7-KP74->I\61? MTVBO:O2G5M8RR"/D%)O1ZT0F+C =.\Z9->^.@*9/G@ZI[JB\/@+NQ]\#8XB\ MQ?]5PGJ5GY38:LD?R'KS;BO:8+(\X5S0K !"9!! PA# !'-0E%)@2B647-K[ MOE?E3HW/6[75/J_N4EOW 50Z1UKI2&GM&+]G.@LV7K!7;$?Q@&^!U='K-0;) MO\=[7?0K>+O&>)SW=,U?=S@!_2S6&\'TV8K^:2[^79#YYL%T^+XU#>L(YVA^H'7[DC5!JK!I%-S?SCP6MYG-=IVM1MW%;[[\F9AC'E&8Y5PAC"J!D!% $"T!XPG%&NG\DK#NZ>Q5.1#8\4['&9)69"2(60>)11:VZDQUT[MZ+F7L_JXU)U4]II'*_6(A5<4 M?,X-'-0IS61@+NU7->T;VR]MJFM-G:U^JDV^B_:?@W[NLC8[ZMD=?9W8Y\#" MLY[2YV$DKWPBGPL[MWZL>1K<$@178KSMQ%AX'FQ%1A/J4FMMM>1;MOE&YKL- M.D.)%$6< UD0Y4)@C@%AD*DE 5D&94J0--JZ7!A_:E_ZK891K:)3];%3" V^ MD6\#)O!W: A,;.JRW83-6-79[#"R+-)V$8'A4FVGKXU8L.VBSH=EVRX_YG8, M\Z 0$:N5X'7-_YI)UTU)REE&>8++(@$LRQ" L$ HY@!E)!8) @G>0QM3F$N MBYH>J[6:1FNMZEVTKI7M2@C_UOQJF4TV@+39:8P?_(*37P?=MP:Z1L^V(JV_ MTYCK8/@\C!F0-NI9S'6KCX]B#-YP<'SJ\+6OU>./S5+^L1;U%>W]D^X \#_M M-Q2$A!&6@!S1$L XP:!$L#[0E0DOB/*.$K/L>"-Y-@M@I,SXGG9UT;7%6D0@ M6FD;P%*"K?J5:#-TSF\]?6W$W-:+.A_FM5Y^S(&S MFJ!7L7K_W]OJ^:DIZO1M*3=_*;^U_;@1R40B1*[KG&0 YK)4')8@( J.,I$G M%%ET#KTN;VJWYA3(P#;X.BA9,Z1?-D9CS9E3M M6-44E2N[IXIJ*G=PC0T[Q9"#W=_U?4:&]9 MDLIT&LR.%$- &WK7?X1IHVCT9Z>JQX0 6W2\UHTRE3UNE2A+1$YJ0MF^?TM= MX?ITK5?75GN'*8(Q$$G)@-KV)H#D% $9IQ"QN( 9%';,=%;.]&BH*7J[6"Y MJV)[\NA20O@85#.>N1FHP*32E@6N%6PZ-WMOLSJ$@/_ZO\>"7J'2[P5;S]?T MO?2POQ3&+/Z^S,MWY&7=IA]UZ4%%(JB("X!HKE@AE1R4&23J5TJ*."VE++); MTQ@OR)[:UO(DYRZ+H\TRRLM(J]Y+O;/:'+E,BAFK!((Z,-=X0]E+@N,5O$(G M.5X2_^J)CE=P,4EVO#:$&[=]%INW9/WC8;7\67'=2O2/M> ?%SL%[MFF^MEX M6-U>0&28E[$@@"4D!I F!< Q20$J2EI0+E-D>AGKKL3TO**=LA'9:?MO=I3F M,!=FS!86W\ $IY2/M/91I[X.#/Y-6Q!5B[]%>]SW5@39OKF#Z)/U'+08E?S< M43KFP!M&P;=1<=F%6?PO0- M:RI[=T[.WC:311YPG@UWJF//7NB=[4@39[\A]@FTUPVT%\7&W7#[Q/)D@^YU M<#>F_[9]?IZ_O%T^/54;/>Y1*4C(24*PVK0+G"D>CRD"-&&)VLWG!.:2"!I; ME2(:%C;VRUV+ULV)"]^9IS; \\+L"NAF?^H,R,%$V MBD9[38-6V#2#Q2>M79$X*E^967],1(9O.42=O"%S'7'[[8<0F_4[L2'5?.\W M2(+*G,8I$#(C ,I, (P9 84H69QQ!&-AGM$U)&EJO-+J&C7*1JVVUE[<=82' MF<0K;H%)9#3(+"))?$$W4@P) /K^1?Q=_3 XP61F-AQ$#YB](*CZZ93U=I6TVWVVJ=JT1WTQ[#D M#(H$Y$R4>@?. "&4 %PB*6@N*[:O7?9D'6,2.NVO1$+]N.) MK/[E>-TRC+NA\^8+S<"TZPM(>S?.!""O7MR@P'&=.!/;3WPXHY<']1.E;TT_]UO6T0L49;C#"28*<81. :E+%,@8YX7:4(34F(KQC&1 M.C7F:96./B[JR@CV;5O-L#9D&=\(AMXIMN#M%%:\4RL;_=G^?Y@MHPU,7CG' M2/"XW&.#Q0D'6;WLQD5OR7.U(?,ZO6O]8;O9KL3OU:)ZVCYUG0_?;<7.F\]9 M(F4B"$@2W49&Q 10AF(@"XAAGD+,$F[#25;2I\9-![U/+(^L[& WHZ=@8 :F MJ5;O%L>[J%$]:G7?M635L29W_4ZLO18S 8[]G=#TR69V"HS*:D[8'+.;VR". M<7:D6OV3S'5D"UDK0?7PNW_\]TJLU) _7MI2]8+H$@#UC,04P+@4@*)<@"2N M'3*:YZ5555+G^W^&:";@ I/7:#LK!<:-MW/!YB3BSFD0QR))+7-^7]ZS_]Y6*[UU?1:K MSLN60/FM0Z3N?1QZS)9HW)2I\E^!,=$3K%> M"_&EJSATV(BPYR+JK<"'ZJ>8<92CLE1;4@%% 2!.$T!3E@(J($QQCDL6&[61 M=E5@:IY;&J?0,FG3%G(S[@H)9& &:U2_BW;*G^ETVEEP5V=#U#M3;87']$Y' M_+RF>=KJ,&ZZIR-")VF?KN.XUK1<_I=@77D:F< TD5D&(*$,0$93@&'.09YE M.$,(LJ1 =F4L>Z-/C9Q:Y1SWBX? &7I0KG"$=I),D7 H/7G&8K_5)OL"1BXP M><:VTYJ2YQYR/"AO6X3\1[7Y\7:[WBR?VFQ0Y?+L*.(H\C#G$"8%%H 4.0)0 M(@A** B0,84(4U[BV*KKNH,.4UOWG0G17\J&B+5&6!Z>.TR%X1%Z6(!#'Z0? M8-OI?]>D;];[K)T-06-&;T#1ZP&Z@QKC'J.[XW1RF'[#4-Y2U]5/>@3^ A>8EB3#("VP5#-F.=VJ )SC -*-^?;!(S0/"_I5?-KKL1D#C_MTJA11WF^T0V9 M?J_43YOE+NZ8EK)@3%, YKG:NF'% T6) ?ON42KHUTK(_#OXO5TQ?9[3>3&4L8)BE#@,82 PB%!#CF#$B4Q3G/ MXH0@*X?IJL2I<:963X<-L%9!ERNW(8!M[M@\P3;2I=I! .U=U 'Y]AJ0CA=H M!N#XOS$;$OH*5V0&&)R_$S-YT8UB_EBL!)E7_R/X/TBU^+1VXU!1#T^M:O2;5O9O&M:>OOZ( MR! 8GS1T3>2H)&1H_S$%F;[FL /\*M9"QU^2!7\G?HKY\KE)N:D3_[I&'JF0 M$N<(Y(FNO)K3#)2YI" I4H)I+C,IF?%>T$#@U#R<3N7Z"JFG=-1J[;+M,<'= M8*OH&\G9@[;:7%B@-;C1-QAEORVEAU<'FT^8]EU9+ M[_Y_E"2P_2R7)$,93PG(!"\!Q$D,RC)C@-(,IVE:),PLIN)TZ*G1KE(.:.V< M>OP<8&9 I,Y(!*9,?R#8]#1R!6.L]D7&H%CV*3IG]W!+HH,W1NP^=$[3PT9# M9Y]PO2ND:[6Q4A/[_F=7SVN6\BPIDU2"),YC &.& 8EEKK:IC)4"E;+(K,(U MSPF9&B7M=8QJ)=LP(NM;PC-PFMX1W@92\!M"2WP<[@GHS./"LVYJ_9VRY7>S*+O1+H\,LX[S,8H H3@&$90*H3#E A*5%QE@N4ZO\ MX,NBIK;^]YI&G:K.Q9(' #;C C^P!68$1\2L>>$Z&#[984#:J!QQW>ICIC!X MPY$O.*^TUT?F#Z3B'Q=M>8-NUU)@DN8E442!%&5@JC8L#)= 4%CDRJ/*"++* M31N4-CG6V"D;:6U!M8BZFA]N84;#6!NRAR\$0Q/(#>#9LX@)*%Z)9%#@N%QB M8OL)G1B]Y,8H[0'*!Z7IN?#N?6X#SC(:QT4">$P0@ DC@!1<_RJ20HJ<)L3* M'S$5/#6>Z0[[=,CHXZ*R+Q9GC+@9Q83 ,?@)=0.A7A[1^7P2M:<)D31B"Y9/ M%C*6/2HAV2)RS$W6[[O1E+Z(6ZBY??DL-ONRST*HS5">@%+QC^[D%0.,U8ZI MR(GV=XJ,Q-"ND]7?T6!SN-=<3P\W(Q>)5L#JT9]]P*5V">V:EW M%^DN7"%V1$,(^"2/LW)&)8HA2X])8?#96S+!FM"@_Q#5XX^-X/=JN9%'\57H ME.8NDU['#26SF&*9Q3P&J&YC)2D'1!=;(SDN,Q1#))A==34K\5/S60Z+2$8@ MZDP I+$A6G5&1'/]3+3187*_J6W BR"K]=]<$L:,Y\J,:\+-0& 6.@I ['2/ M6N6CG?;-$W6$HN]4,EO8_">3&6OP"NEDMNB<3RBS'L7=$VI"DCXNF'*Q/B[4 M6E7_,LMB)#"-"< "ZHP2PD#)D0!$YGF:XI)3P>V]H7.BIN<1=9I%5:VHO0-T M%E%S)^A6E$9PA-KHS4;'NZC3TJ\K-(2#;W?HK*S17:(AB\^Y18//.X46UONO MWFG$+C>C+25T_Z3/HF<\SA&$@H(,9Q) ]2O >2(!HU!10YRRO( 6\85F4J?F M".U3@9X;-2-2ZVD5"F<(^#![!(-QI+.;GLYWO0RK5NWH/ABL5F&&_N$=+=;0 M!\RV\89V<%T).C0<;,S(0SO[CL(/+5^^Z3C^HQ9!YO?/S_.*U1^U![&JEOSM M]FD[5[__%.^E%&SS?446ZUJ;)KXE82+5H0'ZRH\"F&<)*&,"E0^(42YY4N1V MW9MO4V=J[+]KC-3:$_4,BAJ+HKU)46-3M#?*+1#IQBFUN@488:+&^7X)-T>N M=P8W0AO@)L%5H]>X7[@1O0NW#K>.ZN!OWS^N1%U=_;MZ^?Y7M9YE.9=U97,N MA%".=:&SE 4&J;XQY6F2%V5F[%B?##\U#MTI&&D-HS^UCC;ATJ?X&?C)-Z$2 MF+#\ V+AX=X$S$BNK!U =B[K1?L'?=/3M\9S0B]J?.!M7G[JICC3];[B59>O M4,8)3FBN.X[JXJ$P!Q@J&B,P@RDD1$)HE'5X3=#D:*S5LU?(S35,[!*T9HZ; M#\!",YP+5JZQI1>!"!!9>BKK->)*+UI\(:KT\O.6[HP>;/4R^^/;#$D.*8E+ MD$/=BRI-L')A$ 5EEI>Z"N M^"I.Y@=>O7]\_OC]_;OHV_?[[^^_>?C:/;%QOS#7W_H7EVIO/\A*U$62=$".6*QK]^I^I;8@C_57 M^IN7_2/=T=%?9,6[[D /JXH)7?GDZ6FY^+99LG_=T^7/KFW==P7W^L=RSM5. MAZE79PDNA,@R!I D4D/,:M9F-/66 MM"'16EL2$6U*]-2VC-QTQMC481OYPV&PMYKPE =FQMHL0.L:<7W;HY[Q$7V) M^L_M#MXU G?1[@/ST'U@&ABB&H>H!F+78W0'Q5W4@C'A3XY-7<#I?H+&JC8X MW4^2947#UYG*X3J)(^LT8O7%UT'[L*;C*^G@=H[Q3M#-Q\5ZL]HV411-_,17 MY=37GGTGA3R*&4F1R)ED@$N. $0EU-T ,I R1C@6NE&;L#G9,!<]-:^FT2^J MNABIE?K5[HS# G:S4X\P8 ;V%[32T5[K?0Q5I!6_BUJ<][K[.QRQQ\OG<8F% M]%$/4.Q1.3Y2<1C!L;$36?^X7W#]?[IUY4\RUXD:GZJ%^+@13^M9*I-8I@E4 M>[ MS%Z#W(RI/ (9F)YNQ-"^ 9,9,EZ;+5T1.6YC)3/[3YHH&;YV8Y[?1QP58Z*656T(02"B'(>"$ %"0!.(X1*&.1 MQXRB'%,CW\-9@ZGQQEYC]7VJ5>XU4=,9)K72-\4V&\R*P=%M:*P#D]#9&.<> M]HT)_5OGCR-A?U.,N=\Y>,UX\]OFXM;@"-[@"L[XS4L9\8H3$0-2" M>K_Q.M4/Q\[F\-BCT(:1>1TUF#WLMM=\6"V?Q6KS\J#F5[< UMO9NBAWO868 M<A?5JM; [93UOB\U@\7G_O2*Q%'WJ6;6'^]7#=]R/2&OB]KI M_BM=(:FWR_7FL]B\W:Y6=4A"D9<%E+G:IR800*Z+\LOKZS &>CW2@9I'.G3!4CGD'(E4S8XH"8 8ZE@#AD%. M64'B5"2(&K4+":_JU"AM..+2LN)_N DVX\9I3%M@4@T>Z^8QIFV\B?':%2&< MMN/V5@B.^DF'AO 2W;Y[/B\WHI>WT^S?""Y0CEFB(SV8\F*3#% F., Y%W%2 MY"@IT]EFJ;X3S;XUS@FQXON=J*!7LF3!=+&[O:)W$15RN1+1_7R^_*NNE:=^ MC=ZN!*\VD6[$>!=]U[K9?1V MD\_@LW:TL5YM9M_$8[VU%LO'%7G^43$R?[?4Q01GL1 Q3GD,>"[4/KA$1#%( MPH!($E2P(DD)-SI8&Y0R-4>QKV'T9Z.C84#8,)K#C. -H\"48 >/\8HW,G]@ MR:OW>\M=_7:\U(<%C++6C6SL%KO9PS=>I]6QIU]6#ZOESTJI/HO3,H8HE@!E M:JU#07) BR0!&!=%RC!'16R4I']-T-36_/%54:VN@C3J%':\53O&U_)B[0;4 M1KY;,P?,_7+M AJ^[M>.AW^=*[8+1EZ\9;OTO&M0IZX66H^IB>?3LJEU5!>+ M$41M%>*8 2H2#B M"" L*0#"L$A@BG*98KO(SHNRID8/C:K13M>H4]:J"(\) MR&:[!D_0!>8(9]0<0C^OXN$W_O.RN)�*_:?1H)>OT5-^[X\BQ61((6EW^_9]^2!6-=7=MV3RK M(P^_@3;;VU:'XJ-7*+6(Y:GE6I]#GY+[RSU/;(_ MG=9AXFH$OF])T84!T9)"+'(!!$\8@$RWD4D(!CG/,)0%)0FRRD2V$3XU_MY? MM*QZ%RV+Y29Z)NM-Q+>6=12L)L*,=4/!^RI76)\5L@\:V7<#R#JVP+*#R'\# M+$/YK]#^R@Z9\\VO+,<8.8+K_:_G:M6K#SY+"T1S*BC(L9HOF$L"<$$*$)<, MQISQ+$^M0DF]:38U!MSK%SW7"HX4DG4R8V9L^"KS$)@J/01<]6;Q87@6QPNM MNH3X)"*I3I3[OR-PZA*FWN*D+@JX@=!/BX]I2;IE _LAOBRZS%&M^\_+'6KF_C M_"J_^)YMJI_5IA+K&4LYBRDL 2?U92WC34ID@G!<%)(0E)56$9_&HJTH;(0X M4-V/G>DZ5=MU79I0_:_5.2([I2WC/# M\M^BG?+1_768[0-#K1'S&BYJ+GW<(%)K5$Y"2^U'<(TTX>)I4@Z1)R:@^ T^&90X0)!J]4\RWXK[ M]5ILUO<+_JDBM)K7G/6[(.OM2O OBZ^";5=5%G M7J26X\[ ^JF^B5%MHUOO4W_S;G@;\AJS&?JJI#>1 [/DO>^I=RR]WJEX4V[< M"Q??F)[&FEWQTU*P6 G>WO@?9WL.<$YE9,](Z@#G.R=@#;NR=Y>_,1.]DYPL3_9 M.QWBEK@9\4F72NQH]*7],*W?;<5_"K+2#4[$#'&.<@@59W$H=0$0W3M1J&DI M489+5N0BMMH8&TN>&H&E<9JZQ,28@&P3$.,9NE&B8414*WVW\]%U*;16\3L= M$A-IW>OF3]ZC8RSP\A\:8R+\%>)B+# Y'Q1C,\!M?9W5T-IIZT+'DCP5&2Q+ MP(1B(AC3$F#",4!EBDG*RU@4;/93K.C2MJ_SH2";)=07%VXE[7H5/S>*NO5R M/H+3C'ANAR@PR^RP:34,4 !M&(,0+9R/)+U* ^?SUEYJWWSA:8=J_W\\?U@M M%YN65UJGGLE$H#Q+08+U;BHF$E#,$U RS"#*)4E2H\2,BQ*FYG+\\0RD5G+G MYEMV=[Z(Y/"R]X)/X!4?#!J+ OFW0C12 ?QCJ#R5M1^R?K!L_=D7QRM+/Z3W M0=GYP0=OWW9]K1Y_;+[(/];-@=:,4!@72VBA=>L7Q!+IZ;&XS%YO6\ZH6CP_+><4J ML?XN?FW>*-7_-8.2Y@4O8I#JRM*0(.4N<:2HA>-$%JC,,@KMMDIF@J>W=6JN M^98R>E"C=E^X]3W3M^W3$UF]Z+_UC(OVUD6=>99GU6939'A,[1WVT"?4PU!& M?VJEHUIKGP?35C!Y/9,VDSSN<;05&B^[GML^WFL4%+V-9J$T>*:BN M)$H!ABD#<0J9R%&18V$4&V\A4:]7U3Y7TU.?L![2!GM"__@%)J)KO;^^ M!L334Z$C7WK,6SSF8N/*R^XULO]N%"N99TO)-Z1 M#>D^Q3%B1)1$@C@NL2:$6%?'3$!.24++C,68&&7W7Q,T-1^XT37J*1MI;:]^ M[.W0'>8(GY@%I@A7N!QJY0YC<7.MW O#CUPK=]C(TUJY5YYWV"Z_W:XWRR>Q M>M->4T&"\TP6!%!9IFI?K),%DD*'9?&8)P@64AJ%99T;?&J+OU,O>N-RRW>, MG,$^]P8\ B]LOU!8;%%O@&2DO:@--':;S@NV#^XNC]\9;QMY0=N#_>*E9QS[ M6^Y["M41K.N/Z[7RBF8PBSF'6 IL=JXQ +IG,H<4*+8"Y(,"K/B_E?D3(ZN M>FW>[J)UK>E=5-6Z1K\UO__-LL7E!83--C4>< M-:P=-TKZUD#5J>NQA.8R# MU\Z5%T2-VZ]RV-Z3+I57'G?=RIR,^V6[66_(@E>+QYF$&4ME)@%"7!\=444/ M,A;N, 5W M*3ILWE]#Q,&1.&^V7P_B2,;(KL-Y"T]]A@O/W;R3>""K+ZNZ;0BOLWX?Q*IF MD1F$!4DDE2 G)010Y&I7@1$":<;RA'$J,Y[:73892)W>M=/A+N.9K**?6N'H MM^V:ZX*FS<;#?9]Q$7_K/8Q1N6F/H$N+MIX%4&V(]<@"K0U MN2CVM;8IUW 8V+)*Q'-?\*<-7'B"G*ABE.M IX M,D9^"5TCH>+1JK%(]R];B$VS(8[68K.9-]4Y%5V(_][JTV.B2^Q8^JG.\VA& MZ$&G91P";TVXBY3J44_WN_,-/?8EK/RQ]*TH^F1E9UU&9>%;$3MFW9O'/HO-C N44"810#%C .:)\IHQY2#&D!4EQ)GB5;LCP_[PTSL;[+2S M#D(_0 WA/(L%BT$"F?J6*6(.:)JIGRC*"UB2F&16=RJNF(UQG^(',3-F=\4A M,%OOU+J+/OM,&3]GKM_ZU+WQ1ZY&?6K9:>WI,\^X7HXT[30U>W8!7+L*7&^W M3UM%L,JU?4LV[,%!E_D;JJX%K' MJ2X7#ZN*B5G.LSCC& *>$P2@I B4&2% EC C.,U%ADN[D*W@.D_MZ*'1>*T[ M?VQ^B$BTBBLW=*]X]*PUC\B\7CZ-B_K<]$BM3_^6=%X]UE^#ZTA_':YEU?02 M4>\M5VV_.NLKWO ?'].[H4E]*(+?+;5ME/]2YD:=O0>E$/W;..)=L^7 M8LO5\[+IX%=? [[5Y_BKE[=++F99&J>(H0+06!)=6PD!PF,&4IDGE.8%@DC: MIDT-R)O:5](N':BG\UUSOZTONEO-(ZVZ?2;5$.[#WP&7RFF,WO*W.E?@BOPHE0,?:_;&H-CKTL*0%*W- \U2Y MS)@IEYGD$C"9E9)))&!J=25W7LS4**714OL>JT[/:*L5M>QL=QY3,S_R=J0" MT\4>I)V*T1^#(-GWI1O$P&L/NO.2QNTW-VCM26^YX:?=6.#X6FA?S"LN>8$P M9B"F"D (9:;VSIP"S#AC28+RLK0*";HH:7)<(#;1?+E>UV&'PT%REI":\8 7 MH$)[#F?NI8-40;L*AD].N"QL5%JX:O,Q,UQ_P2%%6PW&]%F?_.=2DTV= R[6 MF[6NAK_6UQV;Y695/3Z*U8_J\8?ZVR_U0K46]5G03*0EHUF<*[K RHV .0%4 M,*%^)11*GBD_PFB+J.GLL>*;LDN2]@#N84G^; MA/$2\+T@<9"N[V=$K^WN]L$:;U[VC[27_77'JL[[;G+_[G^2:J[#:3\L5__0 M[5=G!DT MKH/&'[7.T6_5(G*J-!!LNLU<^2E,8N#OUW[L4]_(?@"4[FQ_-D9*FWH7[3\" M;:+S_<%'H+8X>,,_;W,R0G? VW6=0BM!;X@;]AWT)\][MXS[)WVB\S^-TT?S MN"@P$B"#5)>WERF@I8"@R#.LEF/&B;3JLFHH=VI?#'W=ZH/9TZX:WOIG'.!O M1NT!4 W,U%?[:MQ%?%ATXCC[NG.F:',5+O@[ MY7D+5M6CJI_GHJ;3!>]+>UCIF@V;EX>YKK&_X.__>UL]:V*=,9BBE/($Q#'A MRC&6.2 )+T"*D$0")2DAL4.I4C9;UNIN8ODUWTH[Z=MU%G67J)VW;75//HS//:U*L5\ ] M9]'ZT6WLM%NOB)[)T_4[?J#3D?4EU[GIZJVD*FVT5I_5XGFW?"+58B;3@B!2 M9B"3ZC\0QSIN"4, ,\0S@G 6Y\+KR8B#DI-S?K6FD58U^K/1T#)?-\A,>CKT M"#P_H:G?8FK\'T[<@-VH!Q,N>D[K4.(&I*T/)&Z1=&6*/X^Q*7 M[\C+^H&L_T]U7]O;.(ZM^?W^"@%[L=L-A+,47R1R![A JE(SJ-WJKJ"J>A:[ M_<'@FQ+?<=F![51WYM>A]>B0/"_KNV>SJ:M< M20PYA BH EL/OB0,L)(+0!"'1G")2Q2Q(>$E>VR\O%%=S-H5*X M;1.F[TH@;-)T[\72%4>8$*$TD;@"4.00D)QHP TE "%*^>< K8V6V?T%M(*YYB(2*9GEO+!! M>>2BS:]9X_(-UQ_&;)-_VN1^2T2WE7TL_X\1R[]-?Y@)QAP;+HWE#5(!0IDK M_:]=>'Q!M*"8$@UCCV0N2A\;ER"(:+USY3K%&>%4C3^(N8Q]^'%,4D2'/939 MRZ)LE;^I79T:YLP9D#D+^CF<\0:NKR.:RPJ\V4&--S9=QS7^@\26"5%+)^?. M-/]^G-?M'#^WY;1K=WHUJ1"AN2BM!Z1=C@]1!DA84(!,4; "*20TBCB2\9,^ MT@.7IN_E?#$'JFEO%77&[#D!?IR6$,^A:FXTBF8_M2K_[%*[&VBW:C>+NH2. M5!A.:8MU>$D>N(Q'"!K'!3Z"[D[H?$U@694(E1BX11H@O"2 T0J"HF2$,4Y+ M#;UZHW=*&9LSU;[_9\W[O^VW^Y+ HYH452$()"Z#RUBN9YH"64%C75>(H(+6 MC34LK$[4U9 .4S"JUB_[O*LZD@+-*_S0$5'T.7^S9X=R,,=Q! YBD"-X_5;7 M8O;#\G)37/MO0M6C;O:(545DA:CK0:4L COLLNTGML0\ M;HKCDYJ<7 K.Q^]/R\6/YG!R\Q4W.:M4J3 P1!C+)MIM@B$&A&2J(#(WH@Q* M".^0-38NV:J:3?=TC222+HS]:"01.BQ\8+3 M+)(%]O#R>^CC4.CY&?<#(+Q*WY&M28OI[48?MN;=D55'I>F.K[@BD%->3H&2 M)P.._N&J?,X?ZN2"U29;5SR82C%@_S:9V*\-Q4(5POK/SZ MS/*7Z8!@@H&KLPUR492B9&6A*^Q=]R=6 MB[&] EJMZ[K8XF5SF/^]U3P3.]7K4@=:O/@6.KANMKK? 8/-0?^[674XUYX- M+JAB-R?6CJPV)-M:DNV9,L1,!-3]&6)&!BKYT]O,A!7[N1;1SCH_T8,/5^+G M6OL/JOMTL;U^=LHV+:&;HJW93U;AU<_1IR%=AB0"L??WQU7X M19R(>."2]D2D2^# )R(>MA^?B/C<%.$&M^T!;C??:Y8+1@4L+8U("@BJ+(U( M)D!!,#2HHJ0@7JFLIP8?&VNTZF6W@11Q$CD/3_,*//K>Y4P*18"K=P4D WEP M(="$.65G;._TM5[?,YP+=4;; \_HW#71#H^Q-SW>SO6==:%FB[H P(<_W?;! M-G,3"DPX+P"J<@$((1!(9DI0Y05A$N5<*A,6 >8A->1;.DP\6*MTG;6@=VK' M^SX7D??V@%*BV;\?M(-Q3]]LHW _KI O0(D=HHMBAW:+?'$XX1QYWQK'1'?3 ME7AX6)J'3:OIS0KPFTOQG AHC$*P ))J[F+07"%P0P F.9:NKEWNUZO(1]C8 M7*A#79O&&Q6EJ[:(-FI6?UBQ.IY:?3G^1?7ZG[I,A'F^M?%?-G^ M^DZLIJM/;5/["8*<%2;'@&FE :'4 %[E!I2&%; RDDD81#M)M1L;3SGCLMJZ MFTUR3OV*W[,P:TW,[..X-;*^:M_,K+8S^]U9FM6FAE; 2/HE\./$-YO:GDGT M368U/%V@#_23IADD57#8](0^L#U*:^A%2&3X\D[RA%.62U':Q:Z1!!"=6Q>4 ML KPHH18&"$QYR']WO?&#N+O =J]?W,RMKECP24]]E'SH\Q(+'HFO$\> (0' M%Q^;FC28>&_X88.'C^TZ"A8^<4FJO/1337AK IG HLR5*0TP!719BTP#EBL" ME^3VZ =*]O\V%R>M_;\&V_[33IZ.=Q]WOR4V/YIHGIYWJ9 MU^KWF9]^$;-^D]3/BW_C3/6+N%Q.5[\\1&1^P^+[=]>#=Z'^67L[$R6@1** MP#*4"X8ND74MBAQ 5N08824A56%[ZZ]%C&\CO=$P6SD5;[)_AW^!$.:NCECV MPRE<=\RL^_3\-(^6#RO5VO[0[TL66>_N(W,__I?\@+^%>(X8^%1*L>YZWHX[9N0G.:6< 1 2KBZK"XUT_X%:%96$!<,XW/F(Z M=\*7\& OQ9'>B.C@TF'>0&=X@Y_>C>C<+NK$[IIP)K?-LJ@.T\9OE5H\S]>K M7576=XOEMOM)IGLE4]KZZ^6K86>A]YV=NW"GAJVH5=B77SLS. MFFQKCMO7-CZ)6JEG)B ";+ 9&BA>K.>9"@LQ2P)N9T#:=1*&"U]+@L1!L%N: M$>.&:R JC(#,*\40 MTGE1:)]G.$CJV)[M?2TSIV;@4QX&>??3WQN0O>^"!6/HS0]1F'3PAAUOCS/L M;Z_Y(DS@(#P2A4'++W$WIVN 9!V0Z4)O6I'<_CE=39C6E746.+#+VPH00NUR M%[D6 (Q(GC.N*RJO;7UT)'5LO'/4CJ?1>*\/C],Z0:^C8_S]7)#DJ/9,0M<" MFJ2MT5F ^FYH="SXS5L9G<7"IXG1^9LC:S>I1Z.?9^9SYGE$05+'QDRMTO6.@BM% MYC:SZQ_V-(\+MO>;!3]^2HYMS_R4!M;P\D8A,"4M5^0E>-CR0R%8')43"KHY M54C7Q_D/._ABV01?BDHJ5P&HJA0@E#.[5#,%R!5T[,1+0?)K@[CVY(TO;&M/ MN6M#MO9Q]>.;Z[%ZT[ L'^P2!&&=P*3?L*M]@6\<:'7"]LNA5:=NBB\6>TQ+ MM^OW8KE\L=Y5$W)#$#.LJ"J 1%V^/H%N[,G9RZ@7Q@A!= Y411@@N:: Y

MU/N#7$E3?<-V6SGLZ<25EM4](Z&M<"FS9 M+UJ;@:/WKD7M.+3OZA$CXO[\LB2V/:E^F]M_9T;O[7%.C)"5+#$#58% M8^7M7'UYJ[D*B/\;=LX&"@(<:.["@@'3(=T9$9A S'!A@>DP.8@-3#ALY,)C M\2)FV]Y]6&M8P0("#NMW&U=V+8%=TR+"$39(0AJTXW$P^MC>5!OE8DO?'0#G MZ=3'PM&WG^Z+1+BW?)3MAVYN28""H48M( (TH&['-< 48P!%(QQ4LD<@2]FA5>I<78GOU&2[ [^E@TGPNR_T' B<+ X'_+SDW%M+>8/=4_- MNOG2Y^JW55,&:T)R48@,U=6LRD&U-R&;.AM5--N^HLA*!N9\[F@S)GE\D.[AJ16^R+:I6V=0E M:KQ 2>G!=@L):PEDN&4%P3S'M*QX4.!GE[2Q,4NC8[93,BKVO!M@/QI)!EO/ M-!*,6'C8I@\22<,U.P4.&Z;I8_M1>*;73=>VP3I]@'_ZKVV7+&:4XKD" BL* M2%7F0')= *RDQ-:;,:0,:MQ]C3)C8YZ...BH5-NK)LKW-'T8^'MFL"N0OZ+U M5CQD_73FBM#GC1IWQ2-WOJ_7%6/&\>BOYH]-M0+KX]TO%W/[HZI)>_5Y^?[1 M]>7].-^_8CI7TZ>9^;0M/EX9R@VV%&H8UG8%B"L@*Y0#IJHJKX2 D 3Y:5=K M-#9&M09E.WVS0Y/L9&6-42XB_."RC5U75)F_?G+]"'C0*>N9A0>9K6"^3H9P M2M*^7JE!F3L9AJ_I.]W 0_K"]1I0EP524&"@62$!H06VGC N 2+$<*B)+A#I MWQ,>XPI\KQEJAV,6L2B_8K;Z=(='MIQ/ ?] 7G%?R_\KM/G_P"/NVCA(,&+$ M&?S?O_ZOMG.I*$O)"@4HI!00EAO .:$ 8T4H-AP;XI5S?CCLV!C.*A;3YG4' MD\=!=Y3Q/5/+U78''"I'V3_0*;$7#F'GO4?F=A[@[JX>[D3V2,.#(];C3R-X MY-XLJ\7RN[#*[-ITMXUJC;;_62H1I19VL6P@X+E+Y\EEKB@N*(30FUDZ!(V- M:_94/>PM?^_76SX,90]B2H1=SU1U#K;$> 406B+2NVIN00)866T+R M4G!9:I.KR5-=[NGK6BS70T#Z6EQ_P+XS#]/YO*E8/G/?WJOQI-@N#XJ2@L)@ M;E$L&!"D%(#JW#[L>5Y24F[P_##WK .3 LU66(^G[DW+FE1 ^FUP7 =-SZ_L MKP5TGOJX7V;U8)@FRO(Q(VGB$(RD#!R&\ MD;XMQ7PEE'-95LT,/IJU2S&_FZ[4;.$:@*YNY:I.\)E 6I0:V]>4+I'EV (7 M0!:F I6&C.4%P5*SL/"E0 W&M@0X4P3IY//2]G"J^V1%L$K03 603E_X#\%) MV;[R-]F!^MF>_MGOK05)8Z$6"KD&!!1<" 1I0 AIG698ZZ+H$!Q'Z%CH\ [4YGELLZ>K^/U0UOU M><#L1V:IP>N9OSP2IC=*I^SPYP]1VJY_'G('[@3HC\1Q=\" >Z/9QW536=9; M25^FJW^^>WEGYNKQNUC^LSXU17:1J[%=G5$&[>J,508PPB3 BD-%3%D1YI4B MZ2MP;*QSH&_F%,ZV^D:=8%]$W)N$DN'8/P%%0QC#/%ZX)&:=;IE#,XX7 B?8 MQN^^B%.=7Q<_Q'(];;?,B6!:L0H#05SU7T,E$%)K4!8""@2Q-I)Z'^0(6:Q\%,/!8]R67+H],W*AS_3]7]\O%D[',8E9?G^5_&K7^MOC[>Y MH(!)6G>%E( )F@.-2'L< M17WXY&\ ,@F &.;4WYD.^-/NAS?&S5ZT?UQ!7)&D'>SF:+/US@QM\6 MRZ:#]:?%RC[WG[;Y?QQ3:A<5%&!:(D H4T P;IPSP322#&H:M**(46)L3_C6 MAKWBK#?9UHRZC-:F[;NSY(K\S:@I\Z..OB>B9Y+I90Y2M)OT!K'G[I.7]7CK M9I3>2'GTIO0?*XX[O]G;/E>WRZ7+Y72;:LW!$JE*EENG1I<0 L*X!!P) VC) M-$=:D#(/RGP_*65L[/=^,;,Z+]P>^P^3[2E;I^CM__YY_6A7"NM'X2I>[]\4 M<^9T>@;\N.YJ7'L_7>H;TF!FZX0L)76=%C0H-W7:^II\NB^.8Y=]]OIUL3:K M6[L 6XCY:D=P;7@'TTJKG%1 *5H 4N6%74<9!3@EL!)8:/LNIYR6@ A1 LDK"! 2]NU.#4

* FJHO:4F !2"@JPL:]L9O\/2162,)@0 MW0&2![?H[I.7-):TS#4<%C,1GN^(9/#V_%[H"=GPMX,78$G?"-T2AWT+>%E_ MQ/Q^=\6Q_<>YI4VS6M^+J?[5K">85R7!A %J>0<00BG@B J M42LX!46-"CA MX=7X8^/S5KWLR>H71B"OD?-CC"OPZ)DBME XU6ZR#W^JV7/MG;\73U/+_=-_ M&9VU%]WL]0NX5>OICZD[CDW'$V=@2DD,KT4,R@1G['O]Z)^[+.Y9__MBH?^8 MSF;6<[0#V[F?NDWHN@%$^]']8C95+Y,J9Q0BA@$CQ/5O=JGA6C-004V1X3+7 MTJO@2[#DL?%#JUT8-?@#[4<:O<#7,YVTBM6[P3NMF]88UK5H/[_)&M6SWS?_ M]A+L%XQ@2J;Q%SXH!P5C\IJ=P@>(XZW[Y28#L4X1K5O;3XS@98$D!84N.2 N M2I!3Z[%((I7$N!0Z#^H*>4+&V+AHJV)37N4F^W?X%PAA;GV79?;#:9S9=W*V M?UXV+IWN WV=PUTYJN5L]V(/=L+I[7*SMY[E4?QG*G MIL6/SZX$NV?FVN'\M<&Y5O F^UACEHZ3.E!(R3ZGQ S*,QUVOF:4KDLCLI]N M+23L_NMO]MM]_^[SO9WE3:!:*?)*<2.!QI !P@@&G"D$8(&9)15*$?7:Q.J4 M,C;^<&IF5L_ZJ;>:9D[5F+R@L[!V/_W)P.KY^>\?IX!,JA1X#913%8E;6(+5 M)3PZ4ZW.WCQ'.=/_4,LIVX;Z8M8FZ:>NBB(8*@$1%-+AZ*4 M0.0\!V61"UA(6$(4%.?\6L#8F+#5+W,*1@7V'$'HY_A< TS/K!>$2;"O<\[P ME([.D8Q!O9QS%KYV<%UE'XF11\;^)Z;+VGG9E 0%UPHBM*<8YE/?IBE7+SI/.QKT-],_&*7HB^9JW-@UEGU/->! ML5#^L/O1?)8DP^,?M^$>!!BWII34^2>0=G6(G>4N9FJK5'9_5M,5<"VP,!3-M . MPA!3%[;=D!#GSIV)%'*&V\1(B,K!?D?*<<->B]I,)U^->EY.UR\?_E1U][M? M[3=U0K0A&&(#F! 5( *[HO,% 487S%2RT(QXG3.=$S"VUU:K8]8JF3DM_8CP M+(C=[Z 4T/3\3@E$Q9MC+IF^\YA7KVGC+]H?73O+980>A MB$M&M8_\Q>N298R[:NIBYJI$&&$?HF]6%(=WXF5U+U;KNV?35L=C.9>JI( 8 M[&+?3 X$*K'U:[44$D%5F*"2F]&:C(T4-H;8UVQ]NG^3U5:XPBF+9;8QI#3$C/5!0_%SV4M[@:T)[SR3V5>>ND\C#,/#++ M P>,3!29KZ=Z.GMVSMJ&QZ=6D">;!+1Z> &<@+(YF&/"R?)(568R/@35>E)IC' M;&S)Q,HNC=93T)J;_=1<\7-@)D22>?1CX,%GIVD6M6P\RJ&!/H M'']\A M^KYV88[? 6RE]<%%:4I0P3HHQ!C 92Z!S@TLD3859;2MT?+-WQT/QNZP%,NW M >A_7\7ZK$%\7RS7TW]=BZB?1QS[Y>J9_[V^5<%>Z2EC4SJ7!^,/ZB.>LNRU MJW?RFEC&^UZ?BSPM5GL-L0O-*FH7T$JZ34R-+0="JH#1E!!4&5(6*F0I?4K( MV'RW1L>L53*RANU).'V?W^M ZOTY#L0GXID^#T#:9_N$G(&?\?.6'C_K'=?& MA.QLVI"]WWPYF#L'<6"_'*T__U.!C>\9;];+W M,0N1U\AYK,RNP*/GQSDM%"$!)_&0#!4\$@!-8!#(:=N[ SI>W3-@<,9I;0\# M+9-*6A)N#',;8=(0)0N@&2" 25@J0I251!Z+:VZQ8S- M\=HI6J?)--&7$7['>5P]G+$D:/7,.7M ?>@'J !7+0E@ SEM<<"%N6\7\>AT MY,[?/9Q+=]&" ^?N\M61C9'L:.L7=QJYF-LQ[Q;?Q70^(7DEM;#+3R6*'!!& M!6 ERT'!&2J,E"*'7GD@G5+&1HR-DME6R^SW1L_0UDDG$?7SS:[&J6=*#('/?TM^'XMX?A^'*U7MKURJ0JH")0"* % M,X!(!H'4B(-*(USQW A!@TH(=(L;&Q^<357YO=4XD!DNH.U'$>DP[)DKKH$O MF#7\4$E)'Q5HLUQ.JE8"XD* J,7.A MEA (+2I0%A3*RE(9$U[A[UU"QN8MM7IF.T6S1E/_/,.S@':34RJ8>F:@"(2" M<@XO07!%WN'9H0?+/;QDW'[^X<5K([=*OC_-%B_&U&4LFTSE]MP>2LS+L@05 MU24@#"D@%"H!)ZPJJ&+,NC)!VR7G)(WMH:\5S!:UAK%A.N=A]=PS20%6SX]^ M'=4/I'#G5??BI2EXL&OFW=#GQ<0&J0(H(AK0+010!38 M_JIQD7,#O@&2@@H,6E M[D7W&K-$18DOP=%=0_S$?0.6#S^O]6'E\([K(@L-G]@9JRN0'+1-K')$6$$4 MJ"2N *$<6V^)6,;+H)'5L#+C=*!9U+YS FK9>./OY2LG1ZYDC MS^VP;RK=U%KWT)0R"*:D16R]! ];P#8$BZ/BM4$W1S:Q,XN'I7AZG*I;MV?_ M:3%_^#3]8733=VI[0HZ59)B)W*Z3J:O;1P7@)96@5!"SO.(2(AUV2.@G>'QG M@U_5H]'/,U,OG:W28.:TWG"3BXU^V!IF5R?"VA;8[,YO0OP8*SW(/5/63N&L MUO@FHAC"@$K:S(<"V,0 M!I5QB7N:2&#_4EF@$>>%1DCE_I'DNW''Y@,YS:)Z)NV0\EGR1=G?]TKO>M-# MEG51$ RTFOMB'NH-6OOJN7UVC]%L*FZR7\T?V?\UPEZI;[*OB^?UHW$E"F]7 M4]%T,GB4?P=*_N=I;KQB$")4&ET 5 MPL5M,%327D 4G$-^-DXRVJ:%WUV3-WOGSTA5X]+W$2@I%1 )Q M!"1#)Q![0!.70'P7P$2O[QD^@?BN@Y/.71.WIOOZ_/0T<_'JWZ?K.K#4=50C M5!KE0J$J7-H57&4=)2F(!H:A7""#H4)>!-4E9&Q$U>B8[92,:DYW$DZ_]=>U M(/7,7L'X!*^KN@!(N8HZ*6?0-5.7I:]72)W77E6F7J M-,*]G^?OW\7RQ?G?U;9N^'1G7?;=>M[/+G!:WV6N$%JV=-5(ERY37HK5 M-.JH_XKI]>.K(:>L9V[;%7;?L^4F>U7OW?YE8U!66Y1M3>IEFRD5OCW4>8_7 MZ2W*O5^-X)FJ[]>/&WLJ9R\^<;,PP 6C.^G@-'H11S]^8"2]LRO4^+ MAWT^UA^?\GG=%9T,:->57^U:WQQDO')%H8'* %28'!#7,$)*3 $C6K&",&0) M)X10SL@9&Y,T:F9;/:,3BL_AZL<="=#JF31B@(I)R^N"(7'ZW4E10Z?9==E[ M(IVN\_+8P@-U2NL7XX*8K =S;Y;58OG=>3:?MS'@'_Y\,LK5BYY^MY=\KK[: MOZXJ5TAM,;<*+==WFW;K$Q>)Q#$K@614NGHE)1#<$*!+EWJCD"BT5T._?M0; M&_]LK+O)MO9E>P9F.PMOLM;&K#'2K3GWS;S):D,S9VG4KE;B[X$?\;W=[/;, MEV\SL1'%&OK /VUQAZ0:#EP,H@]TCXM']"(E]!Q;.^5C6I1+X(^IM!S"?VV$]/S*\%S3L+7V/VA MEG1AWH.:PZ[F^\/Y: N@1U'G>'W_"_G)_O0?_];^Q?[/Y4O_Q[_]/U!+ P04 M " !3AJA0X7\4:%*, \/08 %0 &-D>',M,C R,# S,S%?<')E+GAM M;.R]67<;29(F^MZ_(F_-Z[5*WY<^W3V'HI39.J-,Z4K*J9[[@N.+N81.$& # MH#)9OW[, >X$*2SAB&#-U")Q@2)L^=S6__]L__=.__#\ __'JX[L?7L_2Q1E.ES^< MSC$L,?_PQWCY]8>_95S\_D.9S\Y^^-ML_OOX6P#XM]4_.IV=7\['7[XN?Q!, ML(>_G?^SM-%JIAP4F34HY1F$PCD8EI)$%QSR_/]^^6<5C(@/70RGO[^S_6/&!;X S$W7:R^_=>_?%TNS__YQQ__^../O_X9 MYY._SN9??A2,R1^O/_V7JX__^>CS?\C5I[GW_L?5;V\^NAAO^B ]EO_X'[^\ M^Y2^XEF \72Q#--47[ 8__-B]<-WLQ26*YE_EZX?GOQ$_0ZN/P;U1\ %2/[7 M/Q?Y+__V3S_\L!;'?#;!CUA^J'__]O'MO5>2JO'/\8+^/ONQ_O['TQFAX4/X M4JE=_>OEY3G^ZU\6X[/SRCC./1 MZLDG<;&@Y_ILR-;,%L>!:"AY:&*4K2 M6 *,+DAFL@]6=D#\W7?>I_VN>D_FZ8?9/..<3,GU2\,\/5+U?1A??>+'\S"G M!T'Z.I[DZW]=;4H7>EO..I#?6CE$[E]^(*X+SN>8WZUU\R1S*\Z69&!Q];7M#6/"+TZ62DA&T9;*R\D"RX0HF"H"W?,!-TA M+.Z]?"M0R.G^)#@02G^=ANAA7P5_!VN08I @&BDX&E,X5UDR!PBH='XJS MK,O]XL'[MP*&&CXP#I)KS]AX,UV.EY<_C2?XZ\59Q/DH9N6=,I[V0.:(=F\A M:I. ^Z2U<('+TH4/\?"]6V%!#Q<+!\EQ$!CXB%_&50C3Y:_A#$?.)U\X!A[<4^L_)G*T$_XGDCZ>S MB^ER?GE*L=G(*,U5DAEXX87@G1!"(IZTX2PH'8-1L3-X/$O*5FBQ0T=+=](> M!'@^AS_?9A+?N(S7N8TKJQB8B?9W],1]KFK)+B4(H5-2*7$"@"AR*B#L4D MG1AV#8[;UV^7\&(O!!M[BG5(R%AMEN_G'^:S;^-IPE%$&UTN"8SPY'@[H\&+ MC)","4*K9+3IW'8\H&$[C PX*]J9@(<$E ^SQ3),_O_Q^=JE$H5;;TBG(I$_ MGB,'LGT,R [:J)4I4MJN87*/@NU ,N!D:4?"[1DBU0*>S#&LZ.:.*U:WPZ(D M.4^9;+@!MBL[;()C(7=B.N^_<#@8#3H_N+<">%5]/72I @>P;!)TP7#G!D>,R*NTY:"5("(X+<#J2*\0X=^0M%YV[."AY^-[M0##@_.=!@NP9!)_G MH=:X?+H\B[/)B)$;'% B,$-_*,T8^$+H9;%$)E0H*G9Q*'+OI=NI?\ IS_U% M.! #\.;/]#5,O^ J5\M*0>2:0;8QT"Z6:[J-!=#:&N%8YD)W 8%-[]X."0-. M9QXLT$&$#*<7\RJN]7E>!3;IX&(Q4N31Z.A4/<4AH:2<(#B>(&>?C7%,:ILZ M"QHVT[ =0 :?ONQ P(, RMLI/8W$,?Z&K\,R7+$UBM*9D(, &VK"7@H!T51F M.";)A!?,=^%+/D?#=D 9?!*S P$/ BCU:'A^&I;X93:_'/$2R3?F!GBQ"50L M#H*)&4+)Q:>@F$G=G:[>>_5V)5J#SU_N+\Y!H.'369A,7ETLQE-<+$:&266L M\F!+MJ 8S^!4#9@,X\)B1A=-9VBX]^KMT##X3.7^XAP$&MZSL[.P_1R%%R@+4\+X(D1J$TF-CB!6E@,%1M)V X=@T]1'B[> M0:#DTU><3&ZHSTHK%RU8BK2@EAJ1Q=,!2BU+),1C]JX[DW'GS=MA8L#YR@.% M.0@H$.%GM4QDEG[_])7DMGA_L:SW2FH,/A(<1;0Q@=3UB)?[ %X67[?%DIQ5 M!3NYPO!]2K:#RH SFQT+>QC0(]EVZ'@0&G/O<7X4"N!?PT7J0P^5\8YC_13Q8C M),ME+"/DHJ_P#9%":V5K2B8IG^N-ER[VCR=>OQT>!IP [4*L@T+&^M[+FHE< M>.3."F 222C"!@C!67*:A2<_B>MDNM@MGB1@.W0,./O9C6C[KIE8)^%N$7Y] M*4HK7H),",D7#4HZ!][+!!1QIYQS4D%U4C_QQ/NW0\> 4YZ="+8S%R<9^!;6^9?_>IW5P_WXWX M ^^E7RS@2PCGHU7I7347[\M/XRF];$PV8[:^:W8#-E_OHP;N0)JZNTCI(8J@ MP3BI,P\"0]K@M5VON1(6<86#JW>N%QY.EHOKGSQ<@;L0MZ^5N7['R6)!LKUA MM7 IO.013*GGB"IK\"Q)2$83(ICFG#=A]3X9_=QY;X:):P/4@5=70%G0?4](N@0Q2\ M$2N'R'H0D#D-BZ\GTUS_>O-?%^-O84+L+$Z6IV$^OQQ/O_S/,+G D9#%F*@D MR%PSQLDR\!$=Z)*X1^TM#[X%A+:B;@B0.@@'L]8J&032/B+)9IS(>ZB/\:38_);K&RW>SQ:T=ST4$R8,B71=#00<2 MP]DHX!Q3L$PH<7N0VR66]J2WG[8@[4!W#+4- )TG*=6+R8M;+G^>$SO7=3DI MA"1M)(.L? ;%L@*/T8'0$@W+TL1-[2,Z<+.>):O?S?$HR'CHF'6GI@& CJ+N ME4C^-EY^/;U8+&=G.%^MX'M,,=12:Q% 8^W2I%0$LN\6O!7<*^L-FB;1X5;4 M];O']@'![I4V "3^-HWCR625!UHQ=V>!C6Q.G/%$M)L@:IH?P6O!@=92L>2@ M9K^IR=;A^'N&IGXWV3Y0UY6"!H"U7V=+?&C 1_6.OO$E@*E5!RJ2=^(#&?), MJXA,N'#6;.B@<3C(-A'33P.O/M%UL$KVA]5L&2;=>'!WQ+/BA\+L=[,POQ+[Z1O6JV?71GV[ ].O@3G% M+_4PI-/@X@F^?L7E#6O")8K,:@L3MC+E'EPA+[9P9Y))2']N: +279SQ70K[ M:6(VA)"C6^4-P&"^G7XCJF?S2V)AE&1)&"0#RS3YJR9:"-;5^C^MO!!,*EY: M .\N$?WNN]VG3O86\"!2NA_F>![&^QXU1IF,V=!MY'#4;$%;OSMH]V#J6AV#P-A]\C4+*7.M 9%G M4)S$0XPHL"%28%."L7+#?:&.SS+[W>"ZQ\W^(A[ %G7_Q./QN=FOLVFZXLQ) M3N;4!0I41"'.:-^EW5C3/A^X58'KR)L$D-N3.(3CJ$Y.QQMI90"IB2?2RZ/ M'4,D_S$7;DE:44!4JH!FFI:/\QG;9">>H&<(9TS=U%ET(.\!P.;].=8.M],O M[S L\&.=!?2^_$:[=)74R"4I)/H$CG9@4-Y;\,H*D"8&39$'.K;A3MOAX'F6 MJB'XVIU J#O9#P!(Z_@6-[)2%,4)1D00MA;?9E,3O(X!2X8+%YPK;L/]A:[. MP3?2- 0?NQ,0=27W 4#HPWQ&*V)Y^6$2R(.ZRAJ$9BMEX!01B%!/ MI8J0M!UK!U(Y*^EWR'B3]-)S1 W!X>X$1)U)?A"AV<^S6?YC/)F,7"RHL_=@ MC*]7OWR$&$T&U,P)Y3!LG)QQ.&:N">BG$7X#?.PET4%@X4ZJX8YO[Z,PB!DA MTI8*RMHZ*DA)8$HEU,[Y4)J$ZQNIZ:?[?0M_YF!9#P(R:PY&QD8KZK2@0,@& M)0NCKR(#IW50&+F(MDGQWOKU_?2[;U:/OI,T!Y"]>3<.<3P9+\>K1@5)N\\M,D]5NXV08$ M3R/M$'T, EO7::H/X?)N'8)Q-F"V"-*F.EI"9'!9*N#2,Y2183(;NB%VEQ6\ M3\Y@,'60NI]($!X@^4$@Z,W9^61VB?@1)ZNJDD?2&L5$,6"4$KC-#A1'73/E MI'YF!#/1:-,F2_A=ROH]MFB$JV[U,0B(T5*97VQDA7.EH\JRDYMIJC?\XMVIJH#^0\"2O=SZM<<73DRSB.>@F%&>RY!.D_> M(H]56.0RRI!T=L%P;IHDH;8AKM_3CT8(ZUPK T#:IGW=!R=T2)"52* P.(B, M/$:?C2M"1";:N.Q[.E3-SD@:H>A B0\@ ?KL.KB3W<<25;+&D-&M>SD/#'PR M@D(/)6*M3:,;5N"%B'"_O, M)*1,,:^R3(!3ED.@N-=&S6/6K2Y:/J2E[S:QW2CZ\>W*@V0^ -?[SCR7-?V, MQ6SH12 Q6E!&TGI29%Z]R456SH)LTAKV(2']I@\: >8@:0_"S)SDO&JN'"8? MPCB_G9Z&\S%Y7R/)*3"H[320&0U*5T:L<\"Y8QY]B=&WN>NVF9Y^LP"-T-.% M[ M/"1AO([6."N:%'=^G[1^X_]&T.I8(X- V6-1C4HVF2BG$,$*VIP-.8O!JP2I MN*@RZNA]DS.]QZ3TFP=HA*(#)3Z !,#WPHX19\*CTXK"3>GJ+9S:K:K)/#W\]5K M\RH4^8#SU4#/DT4Z%"']K&Z@#(7%)(PR3$ZX7*3QJW;D==W'J%C##V? M4>A$1P-(,MSG:CTW]N1B^74V'_\=\RA:ED.I51F2D=T.TH!S+ (W+"J=2N*Q MB:__/%E])R".BK2#=#)0A+U=+"Z($YV-#EHR4"+5)HLQ0@C5/ZB78J.TSKLF MF8FG2>H[.=$#LO;0Q4!1=7?>=;9%9V;(X71!KZNI'5EF("Y+C98QQD:-,9ZE MJ^\,10_XVE85!.@;4%; MWXF,QF#K6CN#R(S=8>K1QF]L"=X:#R(:BM"-EA"+3Q HIF;D66JFFS1N>8:F M?LL;+VN Q7Z0EA0XX_S9.>$*K M=)1I&^;57")S!D@L&3SJ!#Y857@,&OTVE>CT_#L0H>\>PN,I @:21M]#F;,. M)3L,9*Q.,]<<+%[/SL)X.BJB#IXLD?;E.LE9>P%>)P^%&[2,. ;BL@X.",!"0R \Z ML&"*D#*D[SDE3SR[=]4?JJU9=Z+K6_,?2?CT]J_D:+_&;SB9K;H#?Z0OIQ=X MQ4\1 KTK'D2R&91A!FK/1T@Z9)E+<(5]US_=]F7]G(LUPD;7PAU V'RSN5*T M@&_I2S*=%-HASP&TK3/?LU/@A)4@BB6[:8+(H6U5PPTI SE4W=_OZ$C* \#) M%M/3**&S&6C--#0*.-\T/3F>+E2MP-=ON5H2&*\%],5"R MK$4&N;8WX[1ZX-UJZ$EF3YH5/D]2OW>I8^X].&CI1Q""DW\+']GOBWD(?P,VZ&^FL3P??U8&=N9!>@^$@5L&'M1I<,0FL4L@+ M(DFIB6':0,M :K([]LWWE/4 X/)V^@T7J[X_:Q[>3LE^T4\(]HR+D@PD&R.H M8"+X0DLJ.:ZRLJ9$T\03?XJ@@11;=P.<3J0^"-=HU<+NU]ET=G\I7.^X+FDO M0DX04ZFKH42(9)O!.J&5<<9KT:89_;-D#:26NB,CU)T&!N#SW%K2Z_3:>'I! M3-T64;W",IOC^G.?PY^X^&4\G!E'1W936'B8U!;.-7+%\M^U<4 M"97:3,11;$-["G!%_N]JL&U02M>^-21KFR*VN6?]!#T#*0CO$HZ'R7P0>_BO MN+SCP/K BHCHH'BLF;_,ZB&% >.0A6)%X+Q)LNP>%0,I\>X&*/O+=P"6Y;I3 MT?4MK%=A,4XUKS>>7"PQCU*T4JQ:\!E5#]),AB"U ZVY",9E87R3\57?H:O? MX;(= ZA+'0S Q_L;CK]\);I/R(B%+_CK12W_>5]6K-VYZ_"02_)=#7D3=XZBC6RM/M:)J M?7OE>^QUWS7HF;96@0D5%6HHM%>2:U4G8:7((1=-/XD\Q:W*^?&_(08ZEB3Y,BK3(7SZBJDML6$ [CATCTJOG/?91>A#V GO:%^ M+9'3V=GY;%K7[;J2WP:O6=)D<22.$"L['HLV_2[^=9J@8"J#W4 M_11R#I;] (#T@(?K GSMWEJ^J^6T.M4Z(:%>&$P.UZ%N$VK$CV,05]SHW&NOX@))^ M<=.!=I^^'KZ'J > E2?::U\QHV6=VT8VV%D>:2FERD>]-Z00K=%&F=3DQ.A9 MJOJMU>H>0]VI8 !X>MA3^XH+)84TTCBP,1,7RB%X9@IH%7BTRDBGC]+9? <$ M-:M[Z!Y!'0A] -#9D"7AO.3HO*'HH8(_Z0*AB R)1>]M%C:WN9TS\#M0JI=N%5@'D)4 M%C :ZPJ7%*4V.5O>F=*!N-5[0F-38_QF>AH $-].T[P.(WV-Z[_?3A_G13[. M)I.?9O,_PCR/:,URZZT")6KUA^(,/"U9,L^814;)@FAU_KL+G7V#L"EJ'A\; M-U/A !#ZN&65X[$$QB784K<.[NO]?Q%!)$]!=WA_: MP8.4L#>*SG$^GM73@_FRU609Q72(FM9;*M+2[N#J2%P9P6E)_JMQPK;J^[37 M))!F[ME1T728&H8%IW6/QM<79K,EDQ]U)[3? /#H\F44F M9?;53R;_@ZTOU84D/,0Z"U,&Y5VC77972OLMY!\ 4#M2XI!Q>N5_U,KTD0H8 MHRP*I%+SA^ MA-]0E;L#UJ\!.\4OM8;P-TH0?SV2L0^D=.!8YB$C_29%8 M<$T*VG>_:=/LHL0QX;:_\ >T>=\;P"6<$=$4(%J1_ ]RWJ.1'D+P2D09?2A- MC-N>B?5F=QWZS:SOHH4#4Z%OIKE57IU89DY%#UP6<@U08IU9(RG\W7Y M&\G^[?2FV\Y)6HZ_K>?37XM!8 HV60DB"49&.-=I6RB@\,QLKL5G;U M[U*'CK"TP;EJJ;-!>&#W'4A,5H=0ZKSFP$%E3Y::!PFHR0^0UF4V%.^]&9I: M*_U9!WX7^0\M85U3B=,TGN ]EC[/=I4F"OHO4QE"KL?P.BCPR600O!@K79V) MVL3LM6"FWWJ*(T.Y=S0,PJ"^1GIW&E\E)V4HS-!2-E*I=4E)8$:"9-+%DAQ+ MOHDG(?LUI_Z"8=:2?7M&U&CCSKL9N'VO3@EDA(=56_,N3L]E\.?[[50(Q M.I.4\J"XJ!-_G8"HHJ'5JUUP,C$T\7MQR%9OZM>N#093W6ME$";LB?0T2B6M M\06D0^(CITB+12NP+&HKT*:$36[.'G"DT*PV;# 0[%!G@\#>;],YADF=7_YS M&$^K'-]/[_:P<]G[I!,M(5TOA]8FD$Z3V#L*F/>5L/>4<2/(Z_U;N0BQ%SNBA3.!2C0VUK52"2P&BG8!RY MXT$X?1S$/B9N:)=\)YKO+ M,"=! 5TM9U<\@:)]!;PLHI9*VFSH5QX?]&%X(M ^G):AW9'I%(Q]Z&L >?7' M'%?G>4K_B-R=D2=;+WG4D&- 4!CJ'B 5H"G!.%.T:3/YZUFJAG8#YD@V<5^] M]&H%GV;GPQS/PSB_OJ+HJ@GXR32O[E.LC#T%;UJHG%(!7;0$E4(DA]L[\-FC M")YGD8Z$OVW('=J%F",!LW--#A2Q*W9N@\(U7SYBL5XZ8$Y$4#&)6G#D06N9 MLJ -N+ FY?W;D3>TVRI'0N3!FAIR/'.2TNQBNEQ\")>KUD+,.X&U#95,RI'H MN &730:7?'92.E2I2:.N[U(VM-LD1P+?(?H9: [GS=GY9':)>'7-X-K_K9Z( M4LY(Y0@=M66PLH9!D-X 4T8[7X+%TJ3?URY$#NU*R)& V)'6!HK)M7.1TOSB M/FO,<1]C1G#*V#K,P4#4] >/0A:91,QM^GYO3>'0;HP<YXBXX0!85!6K>@P\Y0I8VD<3@KI\<$Y&'JVV0 M29QGTU:CG-$&3I;?"DUKKGA-+HGR@*IH9"11#$?:M)^E==B5M1%\R4TV[^U)[#<'?OR*\1::&\!8 MMB.;!9D8%EX;0L$QFC=<6EK :<#CY%<%X;*R5:#_78D=2"=CX]T1Z8K MG0W"5GX(E]<=5])_78SG2-S2:EM>?IB$:1V_6N\YGM>/C%QR1?D@ 'D(H+PP MX$3M(>BXY3G*4D23S./V) [R=DUG<)D=17.#R(5O+\J12EX'F1A@J4U]H@[@ M!1-@54)N;-'<^WZMY" ORK1"92/-#7<'7Q3]9$S ,7GRTCT';Y@! M+;)W3$;K3).ZL]U)[=?+//8.WI7.AK&#SV<),:^FHV_N4FE$T#I8!])D!4H5 MLOQ8"NBL1&)%1N.;M!K]+F6#W*\[ \?#_;I3/0T">E=%G*M;0A_F8Y+:>>W7 MM_9+1@EUR!D5%",R*">0V#$>K$@660D\MSDG?):J06[&K2#7G7X&X15>4[YS M\S%:.SYJ)VN)G*F]HR*0-\PAB2RU'45VPO MW9$LSA?N"KG%EA9HCK6[M"-G/!96DHP84I.L^?8D]EL9>62@-M+< $*;RE;] M?\T8? N3]6HDB8T30;_^XF2:[__@SB?7S78?'RJDR45=OV_^3%_#] M^I&7T MIA0D)5B2M/,D>NM0T\83:X98%V!",1$L1QV;= XX+IO]KHUF(=6 L?+25](H M.R:DXPFR+0%40 O1,(H'DA6FA!1LFPO !U'=;Q'R,'&^DR8',V_G,)9-XHX1 M;R!2(I8C0X@6#7!+FYXVW'+3I/*D/7B;U2L/%+R[:'(H'5(OSL\G*U&&R;4H MWT[+;'ZV5N:U4.N$6Z>S!>9)E+7U-+&F'&A:L F]#ZVF[FQ'7[\5S,W@V$([ M@ZB"HF?1*JI=_2DX&,5 X:=0J^G;BKQ^*\'G0%Y+2(73'R;8)FF&!W3TW+&R MA:X?53#M+_@!X.:JF&MU;RF/EW52Z=MU46!^=;'\=;;\7[ABC0RQ9YBB!O2, MPDA#L620#L$DIIW(2A76)(.Z+8$]UWT< 6E-5#4("*Y\@ <[_\GR-,SGEQ2) MK0?F2)Z=3M&!XUR \JH >;("M'&1L1B99TUVRZVHZ_>215/7K5O-# !NCYS/ MARZGK O4DYP0;02EO8"@, %#ABZ('$2;K?-[A/5[=Z(9R#K5QP#P=5B\XZ7F M/$J*+\107>TU=V/R@+@8L;$%B1[,4WL^_A.E5L]';:0X5Y-/\X0[Y M[\O5,4R8W YZN&V>%DH)TE0/L'A040AP22J0NF2+QAD3FN15.Z'^X /'4-W6 M]^6JB)[(&$7NZO X":X(!TI(0WZ$I/ I!Z-"=#'J-M,7'I'2;ZQZ?'0].E,\ M3#D=5@$=P8A])J-P$2:O<1G&D^Y,VH/'-C-PSY$_+'.70G+>*T#G"B%(6PC% M,Y#!4XQ0:F?<)O[,(,S=I_05\\6$UM3I;$*_G]5U]0U/YO-ZLKA^U3376YA/ M_/HS?;4@0NIB_+QJJ) 5ECH6#")6=X87";[F$PS/GOP<9HQH,CFD>U;^(-66*D8B("J5N%+"%9E M$(6G$HLIPFSC&]'S[P";OGL(ZJ<(Z#E;W3,@9AUJIV=T?<3SBWGZ&A9X\F6. M*^$\9.GU["R,IR/I;;#<21 6.4F("7)NF .M%/,^(U=EFV;[6T%N:ZKZP6$W MBI^UUD*/T%JUR?R5 GY,[Y;YK_6K"?X[ALGRZZ-92W'WCYW/X'7/X\#7,ST+" MB^4XA1!Y)171W]UT,/I;+%7U M9=SW<_KJ/S$M5U:]4!!?:@-_I^JXG.1K/__JQ2:?"OIHA&B2>&G 2\]GO\/P MVX:"E0$LERO2K]:Z,<&$(!#0,B*95C=X7S@XSUGTBB8MMJK[SVV M7ZPUYQVNKP& [K'PPF9Y72]-66^)8:&EF6M/9V+42:E 1YUDELF2 M)]L"CCO2V:\UZP 9#\?O-E33 %#XU'J^-N3H='(Q@TT49"NF/ 09#'#ZEAE> M=$A-BJ.>)ZOGV;LM$?'0N^]./0,&VPZ;Q[OQ%-\N\6PQLJ&P4K0'DUF=V<4I MG/>80 >%IO;9+;K)W-0NF>CYHN:P=O7>T-%WD/$1O^'TH@ZDFWV9CBLCOXPG MN%C.IGC5H8 "M(OIE\7=8G=,=Q1P>+CU]S4:441 MG&!.@W2Z1ER*O%!9[]X9SXT6GKLVE\>>)NG@TL+GQ%NK0U_1IW\?62E"X%@[ M"W&R[ZGR[!T9^>B8%HYY*9NT;=J.O)[#]F[P\JBNKWO-#+:T^A ;T)?Q&XP1 M[,L8EFR+0:,@.Z] :93+*!(:$PB8VH9TQ7&GA?7GP@LOUG[=++D6+ M=1X=Y%#'9R.O8SB3 T^!F#.<1U::G-]L1]Y@C>$N>'EH#!MH9A#=9G];X/OR M9K$@W$FZ$H ,D/8" M]_/YE,9G_4#KD_S>:O9Q=Q62XF-],T5\ME%)DT*>8 M4=O:6D1I"*S.0DI:)$:.@WB8[>OJ8GIW3/0;#C?":&]:'@#"?Y[-\A_CR81X M?DN:G'X95S974X>O?W7%F-'!!E-,E7 !108>HO4<8@E6.Q&+CTVN@FU-8;^' M+XVPV48_ P#>)_Q24U4?\;S6JCWE6;!@++*4H>2Z7Z"MC9F< XU!!)M9CJR) MS=R*NG[;538"7/=Z&0#8WDXIY,//X<^'?%A=G#=U#*&4"53M5.@PDP^K(T/- MF3&RRTZD#R8!%BH%4:%).6*^]XL2I#=CH8S9P *6O:TY([[&6P@,7II!QRP9HXC\]2U?<@ MM*.AXV'U7UVBY]A%Y"N"STZ"8D%"+-4 FF5WAA7/1Q/C=HZ+G MYAK=:7=SO+N'J/NN^?MU]@TGK\:SFJH,YZM;TM)X%A5C6 M(F! EQB+:'+^GB_WG7?TC(?]M3;K7H1](^$#SE>]JLG4OIG^_?+LIK&"9URJ M4AQPO1IY0U\YKQ6XF#@ODP:^VZ^[VY*!(LD MKD0H4$26M=P?@2)B!SJAURDRY*;)'8R#*>][%F=?7L]Q53X$C%_4E?F^W.2G M?YN.EXM1E)D^6SP8I1"4KB/&E8\@R%Q[XZ(PMDVF;2,Y+],'WQ,3#Q%YN(+Z MWDYOSMPFJP]BI@TBU7)[9Y(KM#8AU7U%\9#(.\#:@,9%H[(SF9FMMM.GWO R MS=AAP.E.Y ,P3]=\C%@N836Q$YUU=? 5.9)""+!.92\<5YDU:<]S34#?]S>BAKH59C'M]'V.0K:\)0NCG2^1UQ'1S-7KZG-E#9=?;K)I __CL:V[/3A&=$Y%P;I2E&"8S7R5B MP)B@-0I)$7B3%.6V!/;KD;= T^,BQ@:J>C$6:A5)[W5D_>2SVEBK380>VV89 M[I0U%K0C7T@9\HJ\KTD'YU$DEZV)3,R67,.@P#,,P'DL7IEH=9O2G*VH>R'6:@<K,CU2.3&AG=GGV\CY/Q>CW6&:5U)-KG\1E]Y'WY1#]=E'5#@0?LRR(] M;:?D2'"L?YA:S&D%%"7(67$45N4F^.V8CW[3)5#& _?[XP*C*RPK40 M(GB903&DK[3(]*T)Q=CHU/]Q%8K=*7^G L1=-#$$6-VKK%'>)9W(QQ6&I3H* MEX'3S$'DF!770=DVU==ICE?TUYZ55QPLKM90%"P&08LFZ$Q,!)4@ADS&4,;L@D]9JZ[!\IB* M_L;O':[8QR@Y4,I]NQ177'P*DYLB;),=YRA=S3'5RQT4Z<5B:D&8$)$IESS; M;J#>XV?WKOI#M37K3G1]:_XC"3_4L8+3_)JLYF1VOFY#L3*@5_QHCE[(($$F M@:!4I*"_SOT0@6-DVM.^NYU[N<7+^INOV ;70NWYQWE)AC[&6=?R)/Z6N=# MKJPGC\YB3 $I*+?PX0F/D@W$N\;-FM? M^RX+5PLK&)*'T1J,$N1WYUQ#]VRA9":3E=:IK4HBMH/-4U3TMQMUI-U9UZ+N M&2\G9S@GRF]N!'J1F6$&K*.X3*F@(<1$ZDT8K>!>T7^Z LG]5_>(C&[T..M$ MJ /(B[[YYBO*9LZ\F'D],KLF4RW!3-01N=*7@+#**E, YS=:Y\'96Y7:QR^\Q^G(GNE7R( MJ :P\)_PJM[=W">0:+67WD$*MM01J08"RZHF!:67/&KAPA&/@=9!GOGN"9;?"^X,U]V**IZZY7_QQA_U.2Z>>?4.;PJGMF3IRV93G M:*)(M ?K%$'5W3AH;B%34,83AB#C2RZ;>K(4]^?Y;+$XO9C7=3]BBCLK:+4* MK U$H^#@1++@74GDD60TKDGC_JVH>QF%5+O@:.MZZ;V5-("=^+=I'$\FF&]6 M_FW[]Y%.:#@SY.EZ6:O.N $7*'B-)HDF^2]G+ MJ) _R)IUJIPAH.W9H8U2:,4D^:"82_5!O0;/A"-@%,8ULA)QH.,VFT6K?>V9 M^REEL#VH'WO1)SFO_@Z3M]/5K9/5G80N0X-GW] F--B>J2.'!CJ$'*S*4)@B MAZMFYKP4&7RI'<6"ERDWZ>+6=VAP2@M@O'Q'KF>]QS1=X BYY#X47H?QU)&W MGH2@"H+U3!;'=: @_*CQP2,27T:0L NBM@X2#E/7BTF+W/\).1>O+^;K^W?C M6>[4!F[UIC:V<'I1@DE2@F*F5M=F#+4(ZF4S(IM'PM=YLXHU7 M<=T/Z?/X#,L\G.'&NY_KNYYCS(]T.5**G)+@ QC+:\Y2!0A1"4"T,64AG'1- M1G\UY>IE6-Y=<+N3JWE44 P]&#J].+N8$*O?\#0LT]??SD_R?])GZO'GY]D5 MZ]<"NQYF^;Y\GH?I8GTY^L-\G'"DZGX8E :*#>K<:8H4@[<18C*^N%*L3VV" M]_:\O8PT4[O5C*$TQ*7+ 4D@, MU=ES*9+ID %];=J(IFQ5)M&.QI>1[MH'[T-2[M#WA<>[7D3&N"03S'0D[E*J M"9J,D'1) 3-38:LBP&Y-_'Z^3>]IM&;6^C"U[0_*V3),CAA9;ER:G4:4S[ZA M322Y/5-'CB"3MRS4.96264U[=QUYFKF A'6D>4[>I'^ 5I]OJQ;"Y.3\?#). MX4HA%,/?.D!O2L&T7+DVMQT-1QA(/EPH2-P84(9G<$)YB,)XJ3&CQI;2V9/L MEQ$#[H*\)ZJ3CJ'685PSO7^;LJ! [UB!XAQM,>1C@U.\D"2%S-SG+4=GM;V. MW!I@1U'^]RXL[Z*)82!IPP4\2RZ)\U&#=%&2;UN[#@5I02O/O=<,'=\FP/^' MNK"\DV*WNK"\BY3[CI(WW+H5S'/D1*_3-0#R&,';Q,$P)XM%[6U@6T6W+^/" M\D[:^LZ%Y5U$U[?FM[E3&XF;'&,&K:,')3U"=)DV\F1S+L*PF/E64'BA%Y;W MQD;7PAU HN'@!IR?EF&^?!V65WTB=.$1=8&7,E(3*$%1.ZXPE!TF_:*6U'W M0B/8/2&SCY7>27\O!93/;3UKV?,13\D*D^K\F-JJ2CH#7B&'4+QB"67*G W2 M!;EBX(4Z'T>$=M#%%>\^=0HP>1!4M#E=&O(?CE8>,W1RP_+BG7'_%Y62V M6)SC_--76A/[B.WA([J0RK-D=72J]";,ZZJJQ^>KE]S.<% YE6(M\%*G/:_F M/C,C(2H74NVZQ>PV':IV;QOR!$$'=T1Y\-S;"1'*F^"3Z7*GX#6[D#0ZU-:(S, M&KNZ.QX3*!T8^$01%<7TW#,77#+_AYK05N6S8&:CIWP5X[T[FSG@>0QSJ0YU>7FQ^P[GOJ6<[U:K_T]29B'>T2 M0ZUI9E)+)X,MILE-CH8\]3Q!I4>HSH:)F\$NH5_#&5X=X$M-=B@Q!,Y7$\F# M!\^5 YZS,8RAB:%)EZGO$=8OF >#H*V0O:18YNQD<_0-$10[JO\1\/MNM'$ $!UX.*] M/7U!48?NI@(E2P&J& <.,8#5.:>,UOO2Q"WNBH&>IVG]PS@$^R'BY:^$D[/9 MQ90"&*]0"BF!%ZM >4,>Y/!0).< MT#P"$X4\5A2>MGXG05I9&R<;>F"C,I#GR#HJ0FKJ^2),#LC&;OOHINAYCHWC M8*G:"G)/+;F1AH-2*H,GTU&/%(RT6BC>)N^R#9:ZR,<^*7IZ\:^S:7KBUW<: M22S6_DY"[5A1 83W=5H76?RH& /R@X3V&J5QC7.R7;'2=X%A9WA\.CO;B]9[ MOD1W6MT"G),6EIT?41SR_J]: %GGR9XTHX#UFZRGHD[YUP7("IXQ*5#@F< M9 A2J.*LUS'C-GFBK2"W-57]W>,[7/&SUEKH^V+?SY_^QU5FJQ0M4@H">+WB MH$+P$%Q6H+/G-CD46F\WSNGFD?TIOI&N9@<+KF]U_X+S]/L5W58[2P$,+6J* MFT&1),#S>AA+VW]V3AB-VRG\SD/[NY=Y!)7O*[R^E?XY+/'=Y>3Z*JE3/,B8 M)6@6'9&.$FK-$A2>:NO;)).46^G]_G/[F]UV!-4?(,*^M?\K+I:8WBWS7^M7 M$_QW#)/EUT]IC--TD;INW]=.P MZTA(Z5S/GPVR^G%T??TEE70CH 1%%=<$)^,IF*(:ACLYJD_)6.+G[U*WP MH%\H'O867]]Z_W7VC60POH8LPOWG M;J5[\T)U?X (^];^QQG%[]>^CD1A";A@,%#$)%EMR44F*Z-*ACNF?/1;J?[. M0[?2NWVA>M]7>'TK_7/X'7/X\#7,ST+"BV6=@GLZH[WLNOC!,D.AL@5KDJH= M?3,X+\CSS8&$D0KG#V]?/.DY/ONBK<#A7B@XNA1RWXFIFJM;)56TB9&IQ "M M15#"U,)>C2!2+H*+P$KX)S/ST, 3Q7F#>8@I4FK0NU M%$^FME5C$.@/45PFYWB;.TO;PZ?W!-5^&GNH\SW$U[/6?QE/QV<79]>$BX(Q M"N(V>_*'+2+$(%3M@R:EMU[)U%G'RGMO[EGS^^AMUH40^]9^^/,.X5[F7*)" M8(%;4$X2X<70%LHBC]$DJWEGIQ7WWMQCEK(+[>\MQ &4X7VFS[TO=W;!]9D, M-U8XBH9Y" Q4LI8B(T4*=$85-(("XR8#BS92TV_+JH&X%=WI:P"@>RR\L%E> M5VM**8K'G?= 7OM\BH-$,<>9,C2<>VYBDUZ5.U(9[\'_!T@XV%Q9D,U]1Y: M8_HZG4UF7RY7C! !=Y8W,3K-[\:IS@6\B3NOPT%:L\9$27 I)%"T')Q.&GB] M,HG:F^0>8/&IF'M/"GJN&FZ)B=FQ%=0W"C]=G)]/+A]RD+1@BI4 .:9940@4M$6ABL#M-K>M7M?OH*CC6:+.13^,$17W)S'D[(E.E<"[ M6,5C,X3$PDV9@&DB4V(EVAH&N30W]M0HV>04^D)55 MQ4OP7F8@IRZ8:*,QNK,"[ITI>EW_:8)( MNI#'CZQ>EC":6/$1$K?%VE#(X6MR.?\1);U#Y5#MSKH4==\>T(:)+S:P(K++ MP&S-U4HBWYD:$F#@M'Q*%G8[WWG/83G''HBRA^Z[$-T K,3'V668+"^OR[Y< M"BXI ]F0FZ58MN!(!&0Y"PN*6U&<;6$A[E'17WUN&^NPOX@'@(_3<#Y>ADD= MUWHZ6RP7[\MOT_/Y[!MF$M8YSA_>2C\YF]'/_KY2UZO+J\]G62? JYS ,F:RMY:)-D"_1T6_:?'>,3'K2D%]NVD_3V:Q=@&X MR;J]/W\^WX_!U*K]5-U/MMYI:/<*P)FU.3N3/-O.B=OUS?TB[@ -SXXE[KZQ M=/KZ/PSGZEI&,B3FI8"BR:]1Q5&P8C*"#8I9#%Y:OEUR\]YC^SU.Z0@%^PNJ M;Q5OEUSUIL0DL@'R2&L-KZM=X@("1I>M*=SD_-TF*1WGM9L=DG0$B>X%VS=4 MMCO4(> '&V6"@L2,8LF EZ6.-1+&E* C3]O=J^GN/*U9UKHCJ'0OV+ZA)2L6R'2P>/;J?&U<#BZTZD/J@,'.5 M3_'<,<^X(5'4+)EG!B+CLA:#!H:QEF-MM^]L>'@_[F<7BGI2YWM(K6^M[UVF MI N%@J1GL"F0,UV4@"@B<5J4#8[SP-EVE_A>5AU9-TKOI%!L%PWT#;/-U4Q: M.X\N1TA)UU*W=2PF('-%.[9S/,BTG5L[G$*Q[@%RN.SZUOYV#I;,G#%=?:N4 M''$4*6PCB4$(V:)16>6R'1H&7 G6/3JZEVW?:%D=T[T*"\R_C.FKY6QZ?5S+ MN.;.>4N1O"4N/&=D[&I/]I**M%9)G[>T%T^]HI]XIH'-Z$2& \C4/]%B\M9_ M/YU-5]TF/\^NIK/^-)N_7WXE EY=WKAW142A8^+@0M*@JF?GA<@@2^%")&_0 M-KD/U GU_;0V&%B U1\>7O8BN&-,E#%.UQBGR.HO,EG >6T!1516J)@L-NEZ MVPGU@VQTVQ)UW>%^3PCT[0;<;%SO;_8N=#%XF2+H7$>VDZV @"& T4JIH$/0 M7&VU_S]^]HO%U[[:G74GZL$@Y?,?LVOR=1*:I^K;U*,^ZXA\9V7MS"JE,-9+ MN5WBZO&S^STP&PI2]A/U8)#R(5Q689&(/H?Y%US^C#?(SQ0."27X- M3GH!(A<*N(//6,QNT'GZ9?V>M T%2QTIHV]P_7;^TYP$=L7-]:T;$TNA0 VX MS;3G.QO!"9/!9*1 KHADQ'8MKC8]O=_3MY[A<["X^\;+9OE]Q/%9O* 7W*U9 ML1*5< XX+0?B2K-:IDZ.H_'"9U>D=]MUV-WZE?T63/:,K#:*&4 <26)+6"57 M%?EQO/C]U>4KG*:O9V'^^RI"$4('X5$1/[6%3#8>8A("/$,GDI(,69,),M\C MK)\&?@--@72JQ4&B\IJ;Z]F;)LFLDH'L'2UD*6L/$)XA:VYDJK/:W#97,SM MY7W">B[9[10&W\78 3KI>Z-=C^##^9O_NABO=Y)I_C0KRS](SE>&7&3&JC,) M,6IBQV@/WOFZ'G.,#(U76\XN^/Z[AH::0Q0[:R?E01BF@ZW]NYLIDS%E$8OP M4+3FY"KD %$7!991L(R!Z=SF5F>73&P%7?]_S#;<$SKZ-J>7N!'3+,O MTW%EI+KC8^*O.LD)Q]]6LL5@?98N@/=UJ*GE!APS)-L05/&T^"W;MA!UF_?U M;5;[ L.LK68&88;7P=[?QLNOIQ>+Y>P,Y^_&(8XGX^7E?9;_CGF4E8BQ) LV MDP@IS*.83-A,89]EI22=N=JF]^\^WN(.9/:;1>X=KD?0[="1.XK1>VZ8 B.* M \6SALC1 P_9>:>\9JJ11_ ,5?UFI%\&+G?27-^[]6>0E1[ H)%1V(-3A5.2Z1^Z$U\)L=R-Q]W?WF]'N'7['T-C>@/R&\SAKXT#> M' 5=_>K7BQHOSLKK<+DHL_E5CG]D931>FPPV!%U[VR?P:)'V )]R+(RK(O9T M*;>CH-^T^##@>13M]6TU-ZZ^)TILKVX<3][4(>\+^O(#SL>S/&)6EQBX J<# M+?T:Y7^V^DOQ/W%'-^7#_,9+=W%8F0% MD[Q*PLC:+SYF7I/-$7C4+"@?3(KQZ$'502SU>_;9^Z(8&&:&9]37-5.K"Q\_ MS>;K'G?7#MDHE*1"3 C!\NIS<0'.80:961+>_KWZU^DW]5Q^Q_%#__NWCVWO/3[.,?XX7]/?9^NFG8?&UGOY] M(\Y(VO>I78S/SB??K;E]^(@?;TEY2.35DQXA9S>RL#IX&?-?#@D6[K^ 7,I? MPOQW7-8M^A.FB_FXML\ZB8N5 1LIC%@]M]:K/),U7]&]^'SDI:O,O\I,EDI^I_X=F[D MCB_N\5)X0Q3<#V,:JN)E&);5V6T7YN7J00V,S"82>S U(M"VDJP!C!D)9+2? MQ&!H+Z,-33),SCR<@]:KJ;G>P-].O^&5]U9?<(ME40H!V-=NX5COP[H(40D' M1=*2B3[8HK89"[NS=_\402_'W.R"A(>N=R?J>!FFI18QD3=&7\W*@U^])MF. M)UV8G2U>TL D[;[ E"_!1Y$-;CT9VJ MI/LO/7EB8UZ58(0D4TXA@&:VMBA,M?-X1,@)I2N6IZ*V')&US^M?CMG:!1'W M&R T5\L0\FC$&O'SD,-5\:^4WE$H25:>D7LI,(+GO*8%LV+.T[.B:;%3/DU2 MCZ [ A@>]=CN1#,#P-A'VOKGX[3$O)FGS3^];C92=&28$QC#'2C& T4AM@#: MR%@L@D399E#! 43WW8B[&^ \;A]P'"T. +&_D)=SN5[6/UU,\S47@AF1DE" M&3TM9XJZ8\ "UFNT-B>C/6^!Q#B"YW#=])V!WVX+N4T@8\C! MU6LXI7 MX^F7_QDF%SCRM;TQ[0<@DJ$ GSF*RG-6(&FQYAR1,W=,A^\^=<,).+H%QW9> MWP&:ZK58[WFV?@KC^8JAU^-%FLSJF>HHRY1B)N^D&)9!>87$&HE1)ZMX5$:7 MW&2/W9K"'HUB_T \5&,O(X5WDO-X7;SU=EI; ZP>WUWR[MG'-TC;;<].'^<+ M/$K&ZGT,%LEO"R@@QI3 AEA*\EE36#*@A-V&FX0;%\KUYX5-5Q_KH;X/AE#<8^'9"@84EG; M6L)?N](;;;3,(H4VU6L#R]HUU/_VB;I=E#$ 6!T4TP>K2A&6..2R^J3<@'=U ME(J(UF>*]H5V+8#W#YFHVPDX72;J=M'B !#[1#+(O/QO+6>$[]]NVS[J66P*'N8-$Q:A-5T'^<+K4") ;PD^:$/C">+(LHV M/="&F]YM@H>],KJ[**?#C&ZW:;2;[.#5!9FSQ\7RVR7,-C^HB]38%B0>F 2[ MUON&5.EM1B/';$LP"9#S"$HI1X"JOW+;@L_.1?96EZ (AD!*D0-CF /D6F5)2I7=).=;R>VJ]DURFAE 1-JCN K(FD331S%6 M)XL%UB!E)>;\?OJQII_GM"^_"HOQG3LP23KC*88!4S#1>N,20C890I2%>]K_ MF6G2:FE70@=LLG;!T9,FJX6^7I;5N@Z/9N6G\31,T[B>ZY&(+\[6X?9:,F%Y M\X]G#X1TP$EF6X*:6NF&,00?LX$8='$NN40_>N&V M]Z2.IUW?PA_CII6]OG,]O[_0USF 9"D,"PX2"Y86N2"O!$4!F[B5@G-FGR"'!\^[F^)B_JS[NF65O M7.&02A*UL*N0!0@&./*BA XQYB8)PYVH' A8.X3)%L%Z-SH;$B#7Z8>5Q/CU M9)P8,8; H92D:J.T I%;!SD'&3DS+NBV.;+'- T$;-TCX2G,':B6 2#LF2(+ MZ4H)TM:^/"*#,JO#297!21%R1JE=;K(+'U@JU>S<;1@[;T<*&P#T#CHOESQZ MS'7T&!8-*M6Y$I7K9$262"LYR_];3M4$.%V64^VBQ0$@]JF2'9^9R85B/YDE MB4^1^$*D_<1F%Z+50:HF8[__XM]/PG>E #!VZ!-"K+X)C?6.N6BWWD)P]CT^X/%$-;$AISTS<_6 GD5)O0M M?OJ*N/QY/KLX)Z;O-((SMN3:6](;P<@LG$3@*9!"2+:1H*-VW>-;V(/'%PYJG](I??CRE)P\?-2MM%A1:B]W"K$I ML%')%0A2TJZFO+?,8]*N21'8M@0.U:[L@H*G+W!WJ)Q!.,$?YK-SG"\O/Y#D MZJCKF['7MSR9Q#W/AKREZ#,HK3@$=!DB%]XGLM+<-,D"?Y^T'MN@-(-:QPH9 M0&KA=O&. MZH20&*3'$J7W_<5=UV"_V4-Y=9;K8J2D(,B6 OE((J ($W46 1'[ILD M+S<1,U3_:1?M;FJ]?Y#0!^$KW7#Q,?SQ2R K-0Z3Q4A&:U3A!<@"UEF*EN1B MO09-;(1BO2JYB7NTD9I^$X&'J_DIW.PM\0'X/S=,_&TV__WME!R\5,>U*1-" M%,K\[_;>K+FM'%D7?;__)>_!/+S<"+G*5>$(=]EA5^^.\\3 D+!Y2B;=I.1J M[U]_$Q0U4:+,88$+]-GUH))$>:T3FQD8R\F I$9QTYF;*:_M( 2R60 M4!(Y!]@4.8_(&??JN!UR#I=Y3\@AL4RB8Z8(R8&+;$!Q+\!AD.0^ZL"CJ_WK MFI0Y/R1B)Y2H\T/)OO(]'!OSJW!Y4J?H-A(1'@0A9G@UL(/T@[>T]3%- MIN0=)^NLZIAH41:A(**M!7MUE+:G]9E-'2JB?-+.[V05;'U%IT@Y5)/SP<7: MP6;T%L,2/\\O\YLO7Q?S;_CE02J_8CXX&T@P\:;_$DF'E3!/><4!2^NUZ,9M>72]PS4TQWB8M/43%Z]#F M@N"2+% \$V1Z!A>SWND@^^&KQHTR-3W0AA5S%QO0*EL\5>VL(O2?2%VWFVDL M]3BF!8!U?I[")&@SS9(V4]0LHW$Y-4D$>8FHG<"ESPU<@ZNC VAME=7;NU(9 M'[V01MK^'0B"73&VOT8ZP-=%2M=? MKB_#%>9?D8A(T_4 M:^7N%+8+%]\F2^NIO^]^OU6YB>X"AV*@4_]R&,R.HN7]T>UOT#W#3Y72/]MOHC>7K)*3@\U M!IEIP>H SGH/0;#,A(K)ER9E#R\1U:ESVG@#W5<;9W3E77,]_IY>7@Y\Q[WY MV%:7VB^2/_0M]N;U92&/LZ;E09"N-@'QF0S"5">R>N4<.H^)_4AX/WK)L3O, MK8 F,0?F%)WWJ2!MD(%E"$E:H,T-(T;O8VS23>:6@$[NH(_1X>9^<9!LSZA& MX&EMQ,"[Q/87M-HO=F2I>?Z+R Q%5@6204&PXQ)B0 ["&"FQUM,IL_?6,6C! M]EI2[Z\7Z7-8$I 23K]A_F-^];_QZA6A'O,DQT3.1+20@R0N7*A!VT2XET[P MFCVXZWW=#B_K9/\X2I./PIM#"[@/GVW%TF)><+E22;GZ8 M6%D\%RH!5R[2GAEHXQ7%DMR4XR*F&L!MY);M2F.OQ9:'0*ZUBCI W[NKS[AX MNL$_RYIQ==*KR1!];0U<,$+D9-*C8EE8R8WQ39J0[D%CKW67QZ"OE8HZ0-]6 MKL@ZE,QD44 RK -8I &'UM6^P,6C=\*%)J'0K12-G^-LN7K@(5;XEB<-86[O0N1 LUON6UR]*P]?]@%7D<1?YLNKY_#]U76R@.?SV>A'(+UNEX;T]+QZ"Q$9-I)ZU&X)NG:QY%].F =WE_G MQ>>U UG#$6U'0DT*(>ML0$!>R(1RKH["JCT+I!5)8?08FG33'P)J0Q1.O";4 MS+\C?L3%MVG=]^F5KS;5=W&Y>B1]]ZZ0&S3_-)O^-Q&%B^G\AM+[;@Q,*\L4 MG0E&TNF@LA404&9P*1DZ-&2TL4FN5C..QKV1/"&ZM]=OC(F1+JKL[T5Q+^O' MVKAM?KW:_LA,WOC-/V=3TDJZFGZ;7GW?Z%\2F!/9^ +8!L7@=CKGBVNFY#>V;%QCHP\[!7*QC M7@+'B+62K[;"%PB^.&8X1Y]ED^2R7NR<+8?68A%FGVYRYE]]O_^;-1T7?X=% M7G=QCU%D7Q+H:&OZ@I)U$'V->*@8E(HEBB;M> ;CX*SMF'W0^X,M^408Z"#@ M5;,D_@A?;NK;T#/+"N>0K,ITJ-5>LR@\K'(F-*809)/;Y8=$]%)Z>E(<;*:P M'*J4C@"U3NU.1'KQWD'BJ;9(QP ^10-)!8.I>,YTDRWQ,1DC9XP>K,XMN#A MMF-7VUQ4/57Z;XL^&#$;DX&8ZSQS00SXE )HYHHN*= >GGYDSSWWX#XT?8B" MY@-)JP--"_;^XS_);7G_ZMT#)J25E8\Z2E%B;<1'3 @2B>-0BT)GT2>W^T[P[!M& MKJ<<$ 1'RZ\#D_#&*KYMHI%2%#)S!44&,H"*(,-82P."F^A--!E+D^#_(RIZ M*58;T\LX7"T=8.IPP=VS3^\OO&?D0[@I9 VJD@]/Y+AG@GI-;_P5Y M($XT:)OJ-'')( J70!@K&:T1HT235)JM%(WK+W8#PF$UUP$$G[LR__#QGVMF M6 H^B\PA; MM&D2XNW&KGTB?XV(+R779M[,U>9'$KA(VICH4*LV0\J>IV?<7D'=07 (K8UM MZWWX>+$,LTPKYY9ZGE*R9*"2,$2N#>0Y6:K"@A.<9&*(>I%W,N^>/'HG^)B? M'CX#R'ULU#Q$_MWNN^8C9>ZEK_%&%24H)@,XS 62XBADJ1,)XD[X>>$E.R') M_M^!I*%TT1&F5G);NSCO7[V[Y48HQ7@A1KC3CMR(&P-U-BD&6;"$W6Z% M?_BJG?#E_J_#UP!ZZ<#8^B^R'*>S3ZO8([DFDKML@==16\K+!,%5+R:3E*QC M)F\.)1_&P'I P\@N9A>7#8>JI!\TK5=9S>W6)2;PCCQ@8II!B*SV@->!J6QY M%DVNKQY1,6Y,]F!=/H^) P3; 2JV+*;5:J$%18ONW>RVPVW$[%F)'+SQE@YI M\AF\)2:#M5ABR#SZ-O5.N]/8!:(.0<)NUT5'J^4L$/?GW_,[LY#L(40#S"=B MK?9"BI[XTPD9"D\;=IO!L'O0.&[T_Y2(.TPM_2+NWF#89B^\O>ODIT(N*2$" MLS4XYVOF(LD4M"Q,"2M([FTFHQ]-^LC1V"ZLMA,#X)PA_\=U7>%K=2TOOH7I M917_;_/%[_1OKR;.""Q)U[2O1') P2'2[@*RN"QL*(G%)OU#6C'4>5K P, < M:ET,B9(.5@MQ_Z5>7,_37[^$K].K<'G#V ="P^(;9N+KM^LZZN'-%O8;11*4]G8*,!"7M2VGER0EM\M]5K!\ =:@%?7WV> M+VH/@XGUH=)T2?"B!N"N"V ^;[Q33=U._>[B#O<5&SYB9D9];C"\&+6KI@N +GO(,25.3D M&#EEFW3K:\=2YPD;)U@JXR.E@TNM2O.\_->\!A3>S.BY6#O9$(27=>3>U?QJ M,?WT"1>?IY\^TV?_H7\P7>+7ROTD>$OB5P*RT+)VZY U?%K L"!,B=$)_L.V M%L>3T7G61QL7).IW;/43CH90$<(O?5E_6% MRPWKG$P\[I/("C)&6OPZ*O!26S"BR,BDX#*U5CT=#+2CAD M"WC(^PEBVQ1&-^%FI[7A M?^:U,2H^NO V7I) W"*!FSC:O+R9+:_"Y>7J?G.2!4\:M0 A2 .J) %!909. M9E4R<][SW1+6!R5KMQLP]I-A?&3UGBVP'R39KGZ^#S&\Q6]X>2N8=9G)]>75 M].OEM/;Z<,$F0?9A\E4X0@>(,620)I/Z?.!,R[;8/Y#RW9;'SW9#W#](SG8% MO:9C\4MM!/I 2K_/P^4%(8&D4__N WT\X4A*XSQ CG5$L@ZD-BX1)-K@+/,R MF]VJUUM3NML*^=GNF/L#00<>Q4[=\_^8S[Z1;8AYO3?4:34//Z\-6@5)U.HO%3DX MY F8M.B8) .NDP25 M@JCCB&O8SYJD0A3(L 7,7Z"IEY$3HR%FWD9]_2)Q7?;'%;,ZEP!:"#+Y6"1/ M1F>_RD6)NM GODEO@!>I&A>-@^E^-TP=H(@.4%7+((B SQ>S_&N-R\Z_5I[6 MYMJZU!-C9"Q' 87)VHV#K/-@:W938-Y8$U,Q3>J]=J"M2X0=@H2G#>,&54L? M8R7QDC[Z]#O.KJ -\'5[F_D)++%^[39(XK"?L>77Y/P1 \A];-2\U(>4^ Z)L0+*1+*6>:X92+0. M(AT%RHNH@CY-3]CS:M5_,)*&TD5'F%K)[6GOT6!H?6AG $NL^ZIWM24*DH/& MC$O>)N'TOLAZ_E6=EW./A:\!]-*!R35 A@#+07.>)'B#N@[@S.#K0 P? M__MZ>O7]+JE .Y&E$P'(Q(]DE%D!7CI.AGY)SMBD8YM&F(_).'H3J>*J]0AT M+M\\^8_Y%=[G6_Q)PGM%_^"O"2N2&U[('4YU(:!@M 92H2^2,Q^BX;Y-D?NN M%(Z[U1R!CB?;1A.==)HL^'#95L:NP^41R8 O/&WH/>8E8AOM./07Z$L!*WPF M PD1@DD"7(Y<>6,B+: SV7%JFT',OUXO[FK&;TJ@'B:GOUZWYLD3C8B!I0!9 M%5,'843PNA[$WBI?>U!>^#EV3VHG9;.P7_UU"!&X5U@/!$..NW'D7$C\]XN.#M;.^\4\(>;E;Z2"YS>#F&1AI #05BJR3)#7@'@!=,DRS.1! M-1J#^"/*QHV<#(C08770JW4X__)E>K5:;V%&2W%6&VG@+$WQ,//PA<<-8A_N M2NY !N*#]UULO._>7;A/@X^ZZ.0T1%:+_;)UM;NAAZ@CZD*G=[1-DB?VHO+$ M*%J%'H?&TOJAC1'U'.FCX$IHYZR,G XO9LGPR^2 YL@@.:Y0ZNA];!(9. !7 MAXOD+=)!7Z/5*['?N^!&)LQ9!_#*%U!1)(@Y:O#HLH_TH6V3.+>%GG$=D':X MV3S]AE!'!X;46UPN$=]]Q9I1.ONTXNKM-,3I)9D)_PA7Y'I=?=]@T;M.Z Z=$8ULU=G'?]-MT5F^/=V+.%#HF M46*=OU5C 8:#XP$)54):+0S*V*1/WUZ^7W>U%N M<".XCB;0,1"L7'1*0O. A*Y^LTTTRJD_B;MPTT[K+ MKWGAG3=),]R%8#77P(TGGS[0XJPEG9!3#<7+Q*(4/X+:GN\\)Q=C'ZP\[F?6 M1@4C'IK+Q=7D X;+U\M:*5>+V5*Z_G*]:J#P*Q(U:7I3-X?+M)A^O4G7>K^8 MDU%[]7U5)))S-#PY,@Q6Y<*R1BN#S<"9R"R(@";''18>$?)@T=%/FPON:$K' M06A3W,S'4.(9H+6FQMYSN$Z2%7D M=YM4@"=OC4%>6-ZM6.OIL\<)P8T$CN,D.SHP-.._?,9E^(KA+[SK*A"U5>A MQ( MQJVR$'7B) LZD&,('DI6J8Y;"61%[H:-S4>/$Z0:"1A'R;6#,.@')&]WFFHC MO+"LS7+J_VJFR;=P6=V/YW^[LN:$*9P.2 $):Q3.2007B/':K(1%LNY,F^G= MAY,\SGEV"M_NQ.H\6^#>FGPB1VZ9!J\U+=(<$T3%8^U@)K/62>DV5TS'$#UN MZ.Q4P!H$SP=HN0-$_XI?0FU6]G6^O"_?QE*;[&4'KB2R05TQ$(U6@,9([DJT MS#=!ZG/$G","#X'"?&"]=("M7^B5TZO?0EK=X*Z6I:\7LHK.E:)K<[/L.'@? M#0@3C-#.VNB:5(0\)64<3^*4Q_*1XN\.0&NSV:JDDHD%K$^^IJ'4SB5D]1J5 MG$RT/)AIDJC]'#$CWRP=J> 7\7* M,?V-__$Q9>W\W#;#DF9.K?3:K!*1E!* MM M-E->E):RII31G@#*UEE#3DK F$0.122QV9%L& 1M$C).;.N4ILI1HN\,.NME M)9-/G,4,2=5:)JD#\2(\I&2*=SGXP)MT=G]*RK@'UG&J?0$G!\BY Z2\G<_R M?/9F1D^,8?;7NT)48*[\O'WSZMV']<[I=!%>A02FECLIZS*XP )P=#:;[!7* M)F?73M3U@Z=#(+"9"#^X/CH V?O%],M*0+?M^(HK25H+(M"&K+(Q$)+2U;C3 M5D2C2QN7:8..<8V?@8%SC(P[@,C;^7+YZ!!_]?V/FF*_.NEO?WWC4\8@K2HV M09&&I,2<)"DE^J)-QB)Q.XD[ TN=L(#525W= 7'.U7I_:INJ/&#": MQ]KD.X#G60#+,@0M(].\B0'^ DWC'GZM8/ BV@[720?P>C/+^&4V+=.;?HZ_ M7X=%H,/^=M?VRHC LZDS-D/M5EOK18J$HE2T19=4-O.8AIJ_]!)9/8'L".T_ M&< TF"HZ -;'Z[C$?U^3/%]_J\5"MX,)G#7!99_ *I9 Z8+@:IL,+"H6984B M6[(%HK;0LQ.4S#D?C4,HHD\\K=><*R[E7&M %-FF*I0"D9&L1,C>B&+$@T'R MC1'5PQDXB+Y_C*$#A-\?BNXNHA,*R4@@K(9XM3<0 XNTOQKO4] LQB8%^,]2 MTQUZ#M'TR_@Y0.QCWYV]L$6_O6LM["2S&(2E,S_2-NVEA>"<(^N2!V:9TD[\ ML$QTY[?MA!-[CB=7&X&/C:!5O?[% L/'KR'ANY2NOP8R'R?%>AX2"<50A[P2:+2\8L79N>!W.!Q;HV*"HY+\KM#U>XJKMX#H#>B)< M%AF#AF16K?,M.:;)6BC,:%^TX][+G4"QY04C)MVV!<40 NW 3OGCNIZ0=RGQ M)!MBZ?]@NOIS_OMB?CW+*_ O)S:5PDN6$+.2H#CS]7@NX$1FGJPZ)4T3;VI' M^D9,(FL&LY8JZ@!YSW4^^H S_#M> M' )'9WCPW %)SB2O43K7)-JXE:(1+TZ:HVH8-731R&PK*Q0*7CMCH:O]L,A.C,%)L4O'B^$0MDGAB/'(\1!WE)HZV-&>5$&\ MF7VC7ZU$^<=\EJX75?B3( 77S!JPL;;K#=F!EYG5G@N,1\EHM35),]B-O!'C M"OKE9-WF2@BN4N^=/(9I%9!1I>18Y-V@?L0N5O0E9TG^)II:^QH M;&5LOL$8V:;S:Q+E!TPX_5;O-.YXK)-BWN,B5=5^PHD+#+U5&LA<)9%&9FIA M*X(Q'J5!*?+F+>*V0/XQ9.R&O+.,]Y],.QWLB+]BO'HS(ZOU>C75-"RGRX]$ M2\CO9@\3=?E$"V>E,@R29/42M98+J%C[(2&303/C9800309NF3/6VZ"PB?&W.XF[ M(?!,;R$:::H##&ZD6=88T76X_"4L%M_I5_\5+J]Q;71,6!')K-I'6)ZJMUX+ M*1/6D2'2)F.SL&TLPIU)W V#YWH_T493'6!PRP"0B?/+(P E- M7GPHGI:49B4U =P6>G9#UYG>4PRA@RYN*9Z=VS%Q, SE8G M_VJR[\?/I'I+=8'1F=PG--7!^0U'N9K:U&8ORY/&-!Z.\S,XHHU%L=D%%[X!)7L==A @! MA0:A,:L<;"1P-0FMCS*)\7Y,D4MH:G*Y4:P6'D<)@4NR&B4MTZ23**I-??\F M)>[A_J7.YWY9]+7&4<7'R9+ZZF_WV3V\*$B#9$ M2]NPBL16G9:;LP3CG$X!LTZ;G?N'-[=>H&_DRL;C4/""O3642CI#VFV\Y2YO M)3GA?5*U&SVQDNJ [E@4&&0J&\9Z(XHRV=%/$YL#E+8;ZYI/'G8DYC/:/%]GA^I[7 M2_;A(TDK#APK4GMBOC#.01EIP#-NZ#O/),.8DF]R<_.4E'.:ZGN,E7.D$CHX M?#Y^IH-SU97RCH-0M,^,CD\DGQ94%AFB%06(\.(,-R6Y-L6K3T@YIP&\Q\#H M2"7T *-U?=2;&?G%./$%58I" =I PN"9J)=U6D;FI8BB@U)-.A@])N. M!9_#A;\_=/P-=&;XJ=X&_CE@[NDM])-RSA8ZTO4J@"H20I#< 2;I6$#+@\LM MP+/?MC/XY<>(/OI>(A_,]CE95/'=U6=+*'ERPVLN?&$9@G <# LI*ZNU:=/YZ:21Q\<&X;^P1BDP7WRCWWXB M+->^%[3T+0ECER79(P9"2RFL<3LZ!%G'WQ.L9&4MF7T'.*6^Z#M)-=HT28_<@\)W?S&' V M5%X'T'QQZ55)UL3DA!B0XD='"A> L,''RO?,9 M0L_)C6VV=QZKP.XR;G;@KRBN5'86!'<*E):A3GI@D (:HZV1V&8 W7YDGI.; MW&CW/%9YYY=I4TPPL;^T?[LCR*EQ28M3;R!$847<]L M!?5#S\JE]D#(Z,!Z?N\E=\_)N=I^;>>-'I7AW !*C(BE*65 M%;VFE65-RJ:$:%B3#+07J3HGSV0HP!VGFO.S]'Z[KNWD_S&=3;]AZA=F\X])S7S'O:4>*R5 M.X5=O)--P^;\Q+"8N1:V8(PZ]$73X% ,N90DIB>2D$&A8 M$W#N3^K("&V'FUV*KX938N\P)3%6GO[\>SXI(:0D"X/$ZM3[6@<;8XH@?;:8 M96 NVI-C\YZ^D9V:/@!YH+K.!84$*YQ8J7E@65?AU?/&<:B]^B$4%;U"'2QO MDO2U,X4C>SM](7%OE9T)%G^;7R_JU*R84B"^8NW-XTVIN=P1A,^,H^6*[*"Q MH%@)'/G*I2LD[JVP58I$$=G1:ADL.""SL1X3)IE)24V M2=$YG.1QKUR:(FF'P6$-U'HN 'X0U0]UH!63&:0F@7IB&7(6R4MN@S!- MV@#M2>>XVVMW4#U0@>>&SU6L7\=0@I<:DJ^-*:0J=4QV!%:X3\H*K>7)YBQV M?$W3+4;W5N*9H71U#R!<$#EE,J1$)&F651]-LO-%=#8)DPTK;1IO[TGHN!&T1K)-8GS+*0"#4WM 1SU! RKQ5)01KO<^2^22K0OH2.>[73+43W M5>$90?3QC4%R3+CD% 3MJW=:"D2,B>SO(H*.AD75<%3?GM2.>^G3(U@/5^89 M(78B@]&Q+L)B2VW?YQE$DR18K8LR$C5331(U=B5PW.N@'G&YE\HZN!AZD:^M MMPQ>%XO<%:"O"(K[0$:,XK7L&$NRJBC>)%IZ$+7C7A1U ])!E-G/E=&V,252 MJ!ADG?7JE:I3EPPXXSC9UYGY)(./NDFDZ9A1,7*\'*V*L;O07WQ:(%;:?R5+Z()V ');N'(. MDJ:CT6<(REG(AHY&S[)5^8=[UO./'OG.]7A=S0<37%=J_W5>+W\G/CME(DK@ M@;XHI30$+3((&Y@-T@2Y.6]G%\7?/'P(:8D3-: M!C,$!A-XCZ!9+ )9S?7;]2I0/#)?Z,346!DB@4#(6D(IM/F)P%*CUJT_I&Q< MN_)XY?\(34=IHD-HK;DHJ(W6M.),MG2:UKM=+Q*IWW.7M'&VZ";=M9XGIS,0 M':?S'R#J 5T */-??OMW23?4'R27CC@J4YMPI(A>C1@BPM&^6)MFVOSK12- MG XW^ $WC.@[P-#'Z:?9M$Q3F%UM+HJ[;NSK$/+-1=3-YU>8)\($Q9$78FUU M^9 "N"#)%RB,+$(94(@F(VX.)[FO>,N!F-GXV^$RC_G#S^_"_O2N1=-$0:P MZ#HJU'&(2%\XF6V*14?N?),SXQ!BC]WUMFGC/AK^)ZGB%?V3OR8A":VM220- MO5J-(Z[KS5'V^:6UTI[ Y9$GF:7JVQ>A\LC[E)W M?'++'? E)L;<#]'9R)E&R((30JW6$#EG!%B.2:?BO6F2U3?.?O@-9S/#X M*2XG/D1RM&P=&\U("A@9D&LEP:7:_RT7H]H4W&REZ SWNGV0]'2O&T(S'3@: M%VF5U;;\@ FGWZH#ML&/<2YA2*DFN.G*3X2@"SGUS'G+8J13HW+ #:JG3KV&C_BI^D>_X_S3(GS]3,[399CEE7^V7F\/AD\>V#IB=;W@DTUX'7<,OF\EWY93ZK(PT7*\[>E0_3Y5^OOM>O MOY$LYXL'(1^?DW?)0.(UY!-K]U,O39W*B<[X$E)LTA?O %K']2V: K.5QCH M);E&Q-GTG>>,O"4TRI%D>2$K1UJ( MR(I!S9QM8Q<>3O*X-[=-('HB_7718>_^G'@]NYI>??_7-..]>?QN=F]K72PP M+-_.9Y_>3K]AOE@N\6KY9O9FEJ??IODZ7/XV7^#TT^R7&AU83''YZOO-M]_O MI5,P)5_;6CKF(BB#"GSB"J*U'C59\$(TZ2IQ2B;';9K2V);H#".=K: WI.C9 MIRFY'3><7\SR[_-Y_GMZ>;ER1NZ9Q."L*\R 7 WI<=P!_:8 S[(X%I@/OHV? ML#^MXW98:8SG-AK[&:*:%SE/Z__#Y8-?'G&1.-S+3QY(V%T4K<,+@2Q=:;4" M'CU9%\P$<*IHB)*5&+,4.;?)J&H47OCCNJ95OBMW1>>WYM4DNJAUSA:0_JN] MCR5X6M+ 36U@J*(RO$G]_U:*.@T1[(.(S6UP&.EWX&_=,G(CGKIOWW%2"U*U MB1I*KK-NDQ 06:Y=,604)KA47)-6>]M)ZM2E'P)(1\K_9S@VG]PTG.C$W/;> MDQ^6.PF@]3FI670*"<(BVYJX6BO4'4M@ L;""PK>)KV]DS#\*GN=)J\GXQS]?I MZMWB(RZ^3=--E;B1)O/JB"7MR&HP6572(YB4DI4Q,%9V<6KI^0_01C]M(FT; M 2/#J+7&YP.*OP_X5'=[S<%R786LA1*TY 087R/]W&@(0D8@!EQ&+);;78IN M]\'04RK& =(PBGV*DB.E/'99_IJ+C^$2E^LR/!2A,,,Y)!=RM56)_, C9(%D M0'&A).Y6E?_TV:.K_EAMS8<3W=B:_T#"I[=_)F/S5[(S+^=?;[;5EL%"^Z9"%L')'" S\F9BL=E'O1,4=GC9.)Y;(VP,+=R13Y3[VSA2QZIH M;K5URB"$KK7DS,0Z<3<[B%8J8$6%R#A&6@]#'2?/DS"RNW]"HV0 %70'HO4J MXXXY%PT#74N^59(9O/2N!C68S$)IKG9)9SH01F,;)4,H]D6<'"#E#J*.3\*F MMWT'DDDH::_TA9/;*(2!8),"CF@2XRY9UJ0N: L]/>'F$$5OZT][A-0[ ,\O M\P5MQ.$*_[@+F:T9\4QCTM&!YZQ&'6K;"H\DG!2#0QTSNB8Y$ELI&L_L:0*@ M823? 80^DA)6_4Y>72^G,UPN;U?$:G?6247OF2?+OM1)='5 370$5U /:;FA?+\!2KP-EB*"5BK140@)O9 $AE8G,TXY; MVG2V>DC%R/&^X;3[?+7* :(>VV.GO14?[ZD")9>!NSH+,X"R6, 'D@-*XX7. M/BBSX8!M\<^?/+J+2X-#=#0?3&"CIK^MZ'\UG==KP/ 5KZ^FZ3$GN52SRQ4H MCO9/Y3D))<@ *5NI>9 "-T?<;E']"R_IXC+]6! ,)<0^LB&W'ZUO[_H96:$E M':H(!F4"Q72$&,F(RRX6G@CC++4I#]J!N)'S=T]MHPRMK@Y,E0?I^K65?;W+ M_=?TZO,OU\NK^1=O*8O MFA4NO$<28I-FKP?0VL7!-R!@MC>T:**]#@#ZRWQY]:[41..'$?V/\\L\*299 MZ>KHGF)5/40D.!8Y'2C\_H_ M7W&VQ FKG3<\*=[6OA_*&U>;628(6CGGB@FA34K4BU3U53O68"L;2B.=F':7 M]-&GWW%&QNHE,761OTQGT^6J@/,;WO)%"\7F4!C8(LAD+:: 4R0V&V0N4<84 M1),^/;N1UU=YUN"0:Z"C#K:VNDG7[7E-?FV(:F61P4,P4H"JO8LB?061!"]: M^Q@W1^X,=TP^)*2OXJ@FA^/!U\N9QXE6B_91H*,[)F M4]&.6TU';J7P*AC#9)NQ7T]I&7<>='/T'"O]+@Z]7Y'>G6XJP2?6JFQ4\A"+ ML"2-.JJ:]DL(O*2O7]S8P.35Q>T9[[^"FO_WU-'_\#KS[/Z9-O M]"T5+%[OO MQ\^DI%=AB?F7^9=J@]SL"UQY#%*2W:$MN4Y9.*!?&#")7'8G \-&M2W/DC/N M<.CV+L7Q.O@Y^N4]:E=4VQ2=JKAOZXM/7MVWFPC:E_<97F>90Y&>O)! D*XE MR>2]1AYXE#Y9VV3Y-RKO>R+5FWL=[6AU*A]J;E,F-E6&**($(6V4F(W+LOOK_"6?K\)2S^6N6BH)=),"N@"!5 .:0# M/SH+/GJM.$OT89->"C\B;.R9U\^FR;)!G^B+#.D'44#'Z(L2-TT@'&5L5I:T-C7>94S=9U^HL) MH>C$ S#K/:CB.;A5%_2/\G_GB-O_D M)KU72,F<-@KJ@$C"?Z[]DK.&9'5B1#SS;)20#GI4(2NGDHXXYF\$Z&6RE8KSBKV/5.A]: MQJ/GQJ])OUAO@*DX';G68%,=3ZRT F^R@,"ES((;;^2&5[8M,_[Q@\=3^4!Z MF@\DM%X4_FI->TC:<5W;>-0$;B4+G7A".\@FH+"F1)UWRX??>/!X]7D-%7Z( MT'I1^"^WO3:*C,$[ 3Y$$@+!$[P7 :S57*?@I1-L+X7_LH?"!\^::ZSP0X36 MB\)_7=/N?.'9UCEJZ$PM^I*T.Q4$QE!:)YRPPNRE\%_W4/C@.6N-%7Z(T#IP M*I]8O_>7;*J6Y]0IW=$Q3XZ+^(GQ"3AYW#J9>THI<:B4@+2YZ J?M, KK7;$6FY37OD149U&O Q7_ M(SP=JH6?H7?M^C?+^/WQ0(=377/_Z/TGO^W>2R"M+[T=F4$8:]*D4'1."IG M>;*.8ITO8[66&IN<+CWUM"TE:R&, Z_)3%"%' 'O9820(WW$=7C2[>U_>MH> MCJ(A>MKNH[&10WEW#1T>;@ZKP!53EIL<'+ 43!V7G"$X'R%I4Q23(?/A&MMN MI>+\NMONI?OYT(H8-7]QQ<;3H^;6=\J,HR6]>U6(C5+O/AS9PHQ%M,&A]7F7 M6KS=\+2-BO'BA /I=SZTJ$?>?R[(*2;*;QN:\9S((TJU/H*3S9EYJ%GP C09 M6#X8LD'C+N?]3B!Y_.H1D3&,'N>#"+4#)_'U/U[?1;Y5+%HK6@LE6E"\=KH+ M18$U@7M.G"C=)(GKGH3QXLS#PN)(X8X==+QX?W$;*XV^UJ%[!"?0UUAI@9@X M@O0A8PQ66K-Q"[TEWGC_S/%BR\,J^1A1=;#P=TKJS^A+D=R!M9F17(@GEQ*" M==;EG.BIH4T5Q%!==+IJ>WR(M=I,71U \) ^+))K]!:)Q1!J4H^E]6:U!!V0 M!,J#2+Q)8O[/V45G+\ ,T$5G'^W]#/'.C3FU8X4]=R3CY-'/0\33.@C*# 8M MA84LO:J;-(<88J#O$D/K(IGW9S4 \Y"#BEGA@LX*9!;$N;>J]NY X+I$7K1D MB/\3!!T,14,$0??16+=!T"!R=J@T<%';%6EIZ@#D -JI*#(S4L3!1FG\1$'0 MO72_4Q!T'T5T' 35FJ-6UH E1XR67HZU_56UO$/(9&EX97:I'?KY@J![Z7>G M(.@^HAXSO%$K!1;?)__\. E).D?\0F9(+G_."+X8"\62%1HXUU8]DP"QO$7' M$M/_^VG^[7^MGU@!8F]_J/BP#_!Q_]8>XYY[J6Y^E!P[\#EW[0\GYJIJP,(/G9REAM.T)T)67Q,Y((G8D-7 MW]PG\"Q$6J9!:U0,96P2CM^-O+[L[N-A,6^NHRZZW?PQGZ7K117Q#2>31"N0 M(6.$AAJUME* RW4*'RM>>>1)MFFEN4G(N'AJH>[-"?;'2/YGB(75!LA_3R\O M3Q7TVGS?R:-;+S+<.HPE&T6(6CI0RO':.\D3NE@0.O""\:>?3Y\%>IY3 M A%L+2$/#F)6";)QR5K&O-Z\O/R?,-;A*!HBC+6/QKJ;Y+ERKBV_D63;(;B:UO2 MB %"KK4'1B3CC(K*[^*!_ESC8/=2[$[C8/>0<@>.X[;!I$([:P4)PIM 9JE6 M-01C/4@=T-6QDF&G..?>Y]P9C8/=1]$[CH/=1^H=@.?E88*D8,:01]#)L2J@ MV@'9.7#:>$ 7U@+9'<^N9OL?%:B'-$KZ>_??W+WBW MM6;!@HH>>*F5WXR^\Y%.^^RL*8ISH^UN?2RVO:$+=^L0CUD<08,(BT*92)4!D@PR7*68K0[HF#[.[J8/'8L#@8283^GQLMA M?70I*"$$E"PX67"F]HH+!EA&R;,KS*0V#1N'NISK:OKX41;+T.KJ (*W0=M) M-%SKPB0DHW4=S5?[Q?BZD]("2CIF*9HD&M\2T,41-:!J-R_8#I%SI]<@%Y>7 M\[_K,4PR^H5(FE[5*1EXT!7'UF<-<7VQ&Z$#74W<]^.\OT"314J/60'72+L- MTD83I$S $ADLVI9B$\$;B[8[HAGM0MOW%$5E+Q[^TY>E[(.L-#^AJ MYCE, E#955.\#$'+ %[$I#-WJ>0F 9X&!_0SJVK;IO]A?GE)O_H[+/+$<>&* MJ?,/N";'FA4)Y":30+CEWKM20ILM\#!R^SN4]T'0YGYX I5U9@]F*+QRTVV:C4T8N", ?>FUH K MO& X#JB]@W'Y%1?3>?YX%197@Z!S#Y'^:S&]PG>E+"=D]$;&(SGSBJ2JI"5. MDV$@E' M"$%X#\(90[Q:I=M,'SN UG'OMOK&[$'Z[ "R>QPD*J&A,X.!*=R 4J%VN!.& MQ&DU*PHM\B8-PP9L ^VCO2#'@]RR?WWS]>?_D2%M_GY48+^, I MB-\O/I%6?@E7^&F^^-[ C]__Y2W]^2-%T?+RSQ27ZB@^PVR-6%H#'I,#9I2, M5@F50Y. 5@ MDOOS[_=!TO:RI*:JZ^!P?RZD^WZU1:]COJO4TT(6BY6> T])D)'M&!T*Q4%F M,KE82_1=DUY/.U'72RU36ZC\V.X\4F_G ,;;3JS:%RW)1D%C(JBHR>?+3D-$ MYX)@60C69'#NCO1U%VHZ%AG[8N\ -76*/LG^G&O_:_B^7+-V-P_0A* \ X:Z MU(2T4.MZ C@F@I$=<#B$PCK%HB'6W#.LE:"#,B5# M]I&6LE(%O$H>@LI1>&-\+"<[G+?0V%TH\R18'$)AG6+Q];^OP^6?\]\72'[B MXL_/8>;9,XQ:)F*.#JP3I>:-%UCEU*%Q4CI:>+J<*MJ^&\7=A2]/@M/AE=DG M:K=9XV_O9_@A<[8( ZF4RJ-@X&HK"U^3SS$PJ %)K?S+[A\JIF*J_7YL0PKU,=9B\25Z XR3%*$R!E;[4I#%V;>2S[$-F= M)3HP9'Z,T6'T=R[8O+U/2!999BC!6I5!9>+2LUQGG^A8DBU:^%,9IEN)[,XR M[0";A^BO VQ>I%7'V0<76[\O2'2WW&B5!#/2@8R.#AOK T2C0^U&:UBR,:HV M*?TOD]6=Q=D6?P/JZ'#$S:_"9;MVA]=QB?^^IB>]_E9;-QQRB?CD&8.T)7R1 ML*%:#6Z\Y,&L \V9)*,O!N%!24G?,5O >&Y=-H0GVV9L\!:"CK['(_-XCT.ZT_>(XY M(Z;3'68?'/Q@A]E?YJ,WC20S"QI$^AR5>?%K@JNG8)DOK:+.U3F;!ZO1KYD")DL$5^D+.H:[M M.T+>::/9"30[4S5F^\AC%3]OK84.VG41]=.[_E)&<1%MA,!D+0DE?RYF%T!P MD7VAM:>$^9$%\\QSQX- (ZW-AQ%A!Y&8S9V6_MEJF61E1$%%-GZ,M:E&X!!Y M=A!"U(%%HU)JT^+Q>7I&OD$9ZC@:4NI]@F>]FE) GH6JR>^QIL$CR47G EH) MGHS1$F6;5OW;*.K+GCE(WS_&T '"[P]%ZWW4.T/;J-1 G&A0,59VZ,1F3H;L ME67:GB(VTT."UD":?AD_!XB]/^P\B'QSDWGB J*2-:1$S#BE!;!BF"$;S\O8 M9NSO%H)&[B39^ [3.X=X.?5]/(2\^V\\P>)-I-DI>)6<_"K&S6)%F+BI&^1 MK'*VFGA-;NNW4M35'G2@PN%%5E=LO*W].KS[]<+Z_F7W#Q/GR_ MZ5>W(&FEG-&@SZL$0N++('UG(A!37I7,69$;=RM;'*P]7MJ5[7P<<)K*N_T= MP_J#^B622_K__3__/U!+ P04 " !3AJA0!@X4SU@* 2.P &0 &-D M>',Q,'%Q,3(P97AH:6)I=#$P,BYH=&WM6VUSVS@._GZ_ IO.=9V.+;_FI7$V M,XF=]M+73.)>9C_=4!)M<2.+.I*RX_[Z TA)D>.XV_3VKG9W.].\B2(!X@'P M *2/?QI^'(Q^O3R'R$QCN/QT]NYB #N-9O.F.V@VAZ,A_&/T_AWTO%8;1HHE M6A@A$Q8WF^T6<3\EYV(T]I'!YW4].W]G:9#A=Z8ADA"%..JU>S@4GX\EJI8/\%EP.U$R2\)&(&.ICM3$KW7V]NK% M?VAYK=V^>_:L9?_U:8+&F$U%O#CZ>22F7,,'/HY_FS]GZK?]RDUQ[9 *L; MB\4D.0I0/ZZ^FVZ=K]/M^;.7[?Z+%R_P>[-MW6X,'P*^ZUVS=^MM5N[ M'L!U%D3W[RXMI2&1!O WU(;%P)(0YC*+0XC%+8\7$+!,V4J8E(&KXT M1D[=_O[AMCTEM?]+M+Z.V9V\G@H3O:6G<($PC&,>F QW]%+)%&V\@"&?\5BF MUJ#O!(Y&4[SC!C>>PL%:?&_+)AP4&N@L_?](MN_M?8UH,]Q]$; X#Q)&IBBM MB8Z;*.@F;B2\XK[*F%K8A++&?39+Y($,^9W0&'J28)W#;Y;$G58++GDB?1U@ M^!LJ#&Q;(?<5#^=2AC 09E&'P2G RUYKO[L5LH]XS--()OSYL[W#/L!2(MP* M#5ZQNZV5_7S*1&RE=X1JF89\?9;>4/5.C4F<;9QZEX(KQ>%,L<^<984*WX,7 MOGR@P,&:L/]EAINS]^[^IN;_?XJ (]GA6I"@=3BC:HEKO<1[MAYF9XN*"UF7 MLI3YE5#:- 8Q0WW?XQ^?I.UJTJ;)3*8J;V^[O6I-\>Q6SU49Z??UV4^6N&"BT M#:AV"]YD,14&[1[4J #?YITO?7]3I;_??^][BFB7.Q(&4T/P)":Q>?MYC>&$ M6D58NGN(X#,4JO$IA2L:HUT8*H9TO0.H77%ME @(^^?)YP72K5V08]MZ*M&S M6G!N4T)=PS.&G"EXK[R"P%K6\0V*&IDZ+;=%\1MJ*B)KH YCJOA,R$P#Q@\D MEJDD#HPLDV!"#<9,:T)*P1P(%2E31B I%PE.DS=%\UXE,I 9ITZGX4I[F-Y< MDS6V+;@Z\#M1CE"QTC=@J2:&5,UT\*=^&B.'4-'3*64*'!)H;D)E9 MF<&#$;5-LQAE1" +:ECCNL9)NNXM8&F*8=\J4BZZW;A?$R"6(\)6:[@&X!>& MFNXH2B+G,0\G""83,;/4T5\.DP2%,5)H.2=D(5^!2V0#_ZNT^<<>=FQ"+EHC MVIRA&=#A)^3IN.DY6U\R!$OR(*:#V2=H0QNT9$_2&]Y1!WF MD0BB2C2C)3Y=8YR3,Z'MD24&,%,XO A<5'@PR5@@;.#AWTL2[EAA]4EEKI+/ ME-I:G<*':U"<6Y[DX7H>_$[#8CN]D^PW%SI"%T#;!/B"2#)./],Q&&V+Q U6 M.(13QHBE0 7H=,VY)&T3&4"S*;[$U90@!L*Z/#ZFXU]K]%""EKB0B8"@@.Y> M9*F\, [AXO+1D-#U.E#+!UD94>)53E3'%$*G?10P[#F=/:#&T1-%\VE[3.>F MP%S# H1DR"BUDDC._+D\:$K2"XL_K/7L(3@Q^'I%GB[4KC._X2;$!7=M;L6M MHTY0?C0XELIM4[DL;;3%GE5BRFXI=R](=EUUQD?WLU@;">(KD:#<='(YHJ=/ M88?; DDB#)A&.=^CQMCD\PRJ\#]12QS M?P&XO4GHH,G'8X*CM99#"VYIO PX!Q"<2R*.)B7+LE:T+SYB2@]>(0B"F"E[ M=)'+K>&0 'T:AOF=#;CBQ,/P92>X7>J&*9)$.-*43[A<+M!-@9J_"[4".1>H MT#3!M79!1RR.[3FWXU$/_:[BP'J+\+*&0JW63#]BH"ZS->5.@JZ+W&A8PJ5 MPU-0B(6V^%W=$XI[MHV"\:2\;>*UVQU[7<+7_-\9PB&F0[:'*]&D%HB7DB"# MZR"FUJZPMR:,'WAM5PP4)4LB(9;)!*L)2D"6?3C63V.4#+ XP5&5$J%:*2L^ M8:H,]RQWIZ\0,@_S*T^LEAZ3-F"_ D!8_<=EV')HEP6-[Z8 MWC$>IFP*]:UDO,PMZZVS)H7@2YAWI]7 5LRU%N.I=-?!CEP]../5:U+5VU,[ MC[_&?"WCS/!^[A*MU6M6OW.CQ7V-5#DUF_"&KSB[;; Q)K4C%L_90N_\=:_K MKWM=?XI[75N<=JJ1=35LU9=Z4(ZLE;PKC^'T9C5R%^2D"/XNZ!<$ZY&(/1.M[BFM+XARCU&,8 YHL*IT@8B$4O:UB=)%W, :<(LHLAI1G'[/K"OI=+<(W",9.I M@H,N[8*ANP-YPP&]DM,QM)*)"&R#O1"T[+H_V(LT6FBZ\8EJQ%0/+XJN0,I2 M%+9,OSY''T3*7.AH-\S*],0HN?.-USNV 9"EV2<2MS*Q!JD#)ZX16(B$%4"L M-I-<)&1S7=C@&@M[&[^&R,?G6!G4X5-BKQ'8)W;4ARH/ 716'YM1.'(MBG"-Y7,8GL)TM MO-3TJ\1!'FV&1M/BA=?U(YX4(Z3&9]YNOO&R%JA\P*BY=^.P=]+7]ZEKY MIYF),/1])M>S@4^JQ?;<9QU1,[VBWD"JE*Z9$-P*Z;_@AV]DE, ;#SX(E&&U3[N)VJSXW?G'K9![B*&A(G;'&J#3=M]6 M/V:S:>W#IONTJ/W',R,#(P,#,S,65X,S$QEQT9K-9>]9K:S/IC&\[I*K?45I;: LG&A?G M] 8_@8N+[\Z_;[78E4ZJ' K'$@/<@6"5E<6$?19@[UBK54M=ZG)NY"1S[+A[ MW&6?M;F34Q[:G70*+A9ZSCOA^;SC!SF/M9A?G LY95*\:\BTFT9GR2"*S\1I MO\OCTZ2?].)TD"8GT=E;#O^-T,@.BH<^ULT5O&MD0&,/^\?MMX/2C692N&P8 M=;L_C!I>[N(\U87#P0QV#E^#C@U-#NY=BRLY*8;>GU'.S406K5@[I_/A*6IO M!&V+'C%/[B9&5X5H)5II,S23^/!X,&@N_EBWW3T:A;:#KO\W(@6ME.=2S8<_ MCF4.EGV &;O5.2]^;%I MWV8#QG:!8;$T.[+Z]OQS<\WE^_' M-Q\_/#D'+]?C_O:5O6FR7W16L%_:[(/$46V3)6"<3.?,9=R].1BEEP(#.66@M0->R?E2\;Z$S,2M1?^OEPKUZ8YZK8'?EIO6,:GP Q, M)&_7^R=N<95Q/?,YNROT3(&80#,LNPF++33:4&BLM#@$EP7CQ1S3FC,5 MH*=8>WT91A1PEN.3D5RQE"?XRC"=8\9W.LAM"!20@+7 XZ[HM/A. MH#$XI/(U',<@@40:K-DH5F#WD +)-)QFQ%'P_]9V"@5D(.Y-(J+.[$$V;2 M9>B@+2'Q!I+>$DW3 MV<8C?!XOGJ-+Q"5/?^?:@&ELH"<4,0?,!)$R&-XMAL M5MIED6*.\V4J$J@3L;@"BB;B6%)>+!%*% 44'4H]P+Q&F'TT-$:2\#2X M21*50@'$MD8 ^N&LMR?A-F.ITC.[ +Z!B;0..;1CG%X&N]'*Y@I^[<*8#6M? M(83[>POA\=IZOSDX/8[>CFP-TII>42+3:2KQ\= >>3#<,&[ PPYA)&,%! \& MB/5829M1#Q++,8]3+J=G(6VBM*VP'V5X@P3.RY1&)R#PM66'"#O[ M)./%!-A[3)ZWE4*)J,=;T> 0@A710(2G\"B)R1;C%V"&23D'!C5@ %$-&\E@J MZ>;$;+8-2^'JL>QA&B)M372%Y/L"=U\[5%:FQ#"QGHDEB3;"&^#I_@0*)%@* MHP5;H*0P)!'TX,^)Z BIJ)9V'06K,FZ7 M%(MRM(\C$+YX^?FH"\N<*7D'JCXT>B3??/84/3MV]G.G/'A].V5_TBT6@==\ MR*:4W%?!_Y!8";[?0+LV]@1+ZSCN"YPV=LET_ M4F>?2.8 OE*Y8(Y>B=B'1 M/J_D$$,$*X6E2H3_T^YD$=?P5R71?!_#59'XXZ6C_V^(7Z:9VQG.>X5\%_FW M1/S2L08=D"02$&TU2UEN3&? [XAV!/[KB8=G[OXH?G&Z^$T8KO>0X5!I2P+F M CM:6.;?)_%>\WWL8NC740PWSWTL$A];Y0@GG"7O3%WWMI[#OE9>L[\[UO=( M7U*#R:V)2 *?DA&+_L>8&K3-4/UE,=5J"D0!"CZI?U,R=1:'O%1Z#M@ZRW3( MVWPM)!#"_P@_:O][?I6_POGU>9[]QN=O#J*3[NBTZ:_!['+[8MLEDY/@M/.; M^_5I\8O.*Z<777S_\";&: =#DZ)X:6&X^#):&8[ZCU9CEYS$TEPJ/A_*PKOG MQZWOT P&[<%@X*_1.(-_8F%/?<6F':[8=)S8;#P[;7>[7VA?Z]SQZL,0=+6A MY,6[1J^QZ+$ O=/E\+B\7P9!/6/T:D==)RF4E(V?4])!4=_;"/8:]!%_L.ZX-%+#.P;*_W(D>; M2]+Q:>Y9-P"WW"=S+/W[Y]?:*U1JMUM?>5:MU/;EF?YO\]BOK-]L= M-C$\L]))G7'5:MU\JK':S+E\U&HM%HOFHM?49MJ:W+5(5;^EM+;0%$[4+B_H M#7X"%Y=_N?BIT6#7.BY2R!R+#7 '@A569E/V58"]9XU&*76E\Z61TYECW7:W MS;YJ"#EG4KRO21YQ,8BZ,$RXZ(MN MCW?CX>!\>,X[P_->% W^W4$C6R@>^EBW5/"^-@,:>]3O-M\-2.%FHTZ[ M_==QS=T.AJB]EK0 M5O6(>'P_-;K(1"/62IN1F4:GW<&@7OVQ=K-]-@YM)VW_;TP*&@E/I5J.?I[( M%"S[! MVIU.>_5RWN'H-"T8F0=#*_P"Z@V/[QT7P]AWJ43*#1NE]I^O]O7F8 MR4@ZUNLTN]O.[G@<$Q-IP@OF(H5U@2 SMOKJYF]Q^O+WZ,+G] M_.G).7BY'O?WK^QM'=58RR9\B2/660S&R63)W(R[-R>#X?C;RRUQAC(W:G3( MU9P+@7'<4)"X4>]M_I*!_L1T=)J5OR_7RJUI[K2; S^MMVS&Y\ ,S"4L,*6Z MF;3L]X(;#$2U9'>0:^.8SMA';5+6:3=^9SK!'"O@0=HZN\WB)J[W^2M;[^[1 MKO0].9HFA;HYAR["18M-Z?A%:*Z]^=#-;!$9H@;@N :)W6$-(ICL]EHEUF" M.<[7

JT*@3L3B!BCJB&-)>3%'*%$44'0HM89YB3#[:&B,).$Y<)TD"H4" MB&V- /3#66]/S.V,)4HO; 5\ U-I'1)HQSB]#'8G5'#7^+65,3O6OD((]X\6 MPI.M]7YS,NQVWHUM"=*27E$BTTDB\?'4GGDPW#)NP,,.820C!00/!HCU2$D[ MHQXDEF(>IUQ.ST+:6&E;8#_*\$:K@+_%(0R,ZOM#H]?>$ MQL%I=2="#D_(!P<*!M=<"L(_MSKC5'FXQ=@ADDY!P8VH (HA(WDDE71+8C;[ MAJ5P]5CV, V1MB6Z0?)]@7LH'Z<(];<$A58ROI(%V(\GW]Z0LJO8Y/JHAS 3:XQ%, M [PR%(OC0W&5V0- =H%&ARTE"?8M>]'\ _F@RH/C1[)UY\]1<^.G>/<*0]>WT[9GW2+*O#JZVQ*R7T3 M_.O$2O#] =JULR=86<=Q7^"TL2NFXU^@RC25S@%\HW1%&KD4M0N)]GDEIQ@B M6"DL52+\GW8G55S#'X5$\WT,%UGLCY?._K\A?IEF[F3?$O%+QQIT M0!)+0+25+&6U,5T OR?:$?BO)QZ>N?NC^.IT\8F;+N[3V'?:V\YGAWK!^0OB0&DUL= MD00^)2,6_8\Q)6CKH?K+;*[5'(@"9'Q:_J9DRBP.::[T$K!U,=,A;_.MD$ ( M_T_X4?//\Y/\->%TU<7W#V\BC'8P-"F*YQ9&U9?QQG#4?[P9N^0DEN9<\>5(9MX]/VYY@68P M: X& W^'QAG\$Y4]Y?V:9KA?TW)BM_%\V&RWO]&^U;GEU8K M>E2@=SH?=?.'51"4,T:O#L3%X\F8$W%!$EV^PP$>T9^-U!8FN[.+R>^@YF#T M;8/V0(]JEV].^AA]_G/S>L@*?R]I@H/""JPT',XG\P>VK'+\Z!9@<](C<_EW MR"3FU'\B#69?##(#"C5?=*]F$A+V<940/P>N_")7ZBA#X;0\7J2K#ZM9IIG? M.($L-RAGN[/>\KGO67<"]]PPW-"3ZW G#,R,7-P+FAT;>U9;6_:2!#^?K]B2G5M M(N$WP$ P1:) U%1M2(-[O7XZ+?:"5S5>=[V$<+_^9M^D0G61@K!W M9W;FF6=F=MGND^%XX'^\&D$D%S%$)BRQI=5J 229EV+&NU6IFKNLG%W/*O+:6J8<6<9]0,95CI==4; M_*0D[/W6?6(8,.3!?V W)QR63,>V5>KI6_MRU]"+=*0_7O6[(;H"%+RJLUFZZC5:S%39;I-&: MUMMTV@QF-6I/&W7JN(V_'#32PNFY3";7,7U1B:A:N].HF2TWE=Z*A3+J.+;] MNU?1\WK=&4\D+B90./^:Z[BG2=);:9"8S9..]L=;$#%GB3'E4O)%IXW:*[FV M4F)*@D]SP9=): 0\YJ(CYM.3FNM6RW^P3?O4R\>>VOK/4PJ,&5FP>-UY[K,% MS>"2KN":+TCRO)IA](R,"C;+)V;L;XKNX-KZ<95[VT(],4NH47COU+2_H]N( M39F$>LUT[CJ[W\T @T+%H7LU&%W[%^<7@[Y_,;Y$]E]/WO MFQ-S8,)D--!N.G77KOXZ#O8GT!^.K_S1\ <#>'2Y6 ;RS&["^!S\5R.8]*]? M]B]'$V/\YYO11^@/?#52L^W:UX%@28@@=!SE]8,X[*EP/Z3GI^/9V(_G10(! M3Q(:J-8&*R8CD!&%=TLBD!_Q&JYIRH4$/L..%-);EE7A(@E,.%'3GCUMUVJV M-^"+E"1K_>1XIX":SKE8@&,;[V#&A58Y8UE 8OB<:P:*J(7PEH@@>O;4:=I> MW:GJ5E<%DN'D&$N!,V8"IK6-H@8G:%.7$.R&PKCV8P%:"&ZK'06SNFIUSS+ MP"=K#$X5C4H8^O8'3MZK\9PE) D8^KQ?8Q50*%7(W] 8GT(.E 011%30Z1I0 M0+(9OD^7(EL25"TY;%6T/&0Y=KJL*=Q(R%.UI=B6N3-3Y4UAQH2(*4EH9HQO M8[J&?J"CK/*FBN,$\7/;WJ.H;VCNIR0,<2-CQ'0F._7F,6:#IDQSX_3AFGH' M:Z=ANAI;'Z-:Y.ML&6/R!LBT6&7-)I,$_;QD@JI]8Z;"O4.C$X+9*\!Q3\+3 M#4^^)-\F\0JR.&?U!M+DS%.T_Y\J!VGJPU1A"=;F!=&5GR4ZUB5["%.U/\4" MI8A25<,DC@$GHPU8T8K*E56+TEY6.NPEH3XEZ3J(LY9QSC.>4J%7RG:JH/D@ M;7ZP)__78H<9U4IOB+'0)1J;Z#K/WW;>01^S_]MW%&OF3DLRC>D.+)H\9"EY M*:+E\S=3+D(J%"@Q23/:*;]X6\LI>6^[#B@G0Y:E,5EW6*+=T^L6)TW7-5W7 MU8=-B4&386E/<1 U\X.H)TFF0K$U*M'\F(7C!O5WG%#5+S#!78R=:M,YF []SGY#=8\FGUW2?M( MCU0-;+2\3'_N[+$V%#PTC NRJK403\AXS$(H'3^Z !P!Z+G"XX/V46<$U5%. M4L&P^:78_>AFG.?CI]\3DK*\JP;]$[ _*-8! &*2W7A\7"-M/16\%_=)7Q]LY_R_"ZG(VA,5,'> MON#8N?JH[)L;9]_X[DFS\K/WA]4GSF-SGZ3JGW#U!+ P04 M" !3AJA09@QOH3+[ !_BP@ $@ &5X:&EB:70Q,#%Q,3(P+FAT;>R]:W?; MR-4F^OW\"DSG3$;,@=26;+7;[4S64DMR1XEEZ[75R7G/E[.*0)&L-@BP<9', M_/K9E[J"($6YG31@8]:\:8L$@4+5KEW[\NQG__E_7+P]O_WOF\MH42^SZ.;G M'U]?G4??''[[[3^?GG_[[<7M1?37V^O7T;.C)\?1;2GR2M6JR$7V[;>7;[Z) MOEG4]>J';[^]O[\_NG]Z5)3S;V_??8NW>O9M5A25/$KK])N__!D_@?^5(OW+ M__7G_W%X&%T42;.4>1TEI12U3*.F4OD\^F9_)_?[.0 M^.P?GI^LZI?W*JT7/QP_>?(_7WX37%3+C_6ARE,8Q _/CI_!I?#]K(!7TQ=, M1?)A7A9-GAXF15:4/Y3SZ<')Z6EL_B]ZIJI(,=E5Z%"[O<;O;]^=W5[^! KJ_.WKUV<_OH4_K]Z^B<[>7$2@MB[? MO+^,SGYZ=WEY??GF=K=HZPW[]#MXLIFL3,[J'TZ]#WCV#H_#Z?NEJ6HU6YOY MJXL5C \N">?SNQY-YY8MB M!$5S\C3F4_ 5<2 EN!R-I,)Z;@+D+1>C?B!=8CA>*CO\80X+U+Y455P"N3) M41R)Z$)FXEZ4J,/+E=DS"W&'1HRJJVA5JCQ1*]#]Q6P&VZB*!!HQ3Z(;F1?3 M*H'3X:*$.8GAG$GOBR*-SE6]CJ-ST#%PCN1*1"^>/?GN:70PH)76L]2KH3ZT MU5#/O5\H6,F_-G#;Z">9PY&<1+<+68J5DMZ:WR] 0ZX/B_LK52!\0%+#WM'C3,NH%7XIU) 5HYRE:;3-9 MEK#,8,6!\$@R/\'N4&DC0&Y0F8LAZ>T;4=;K7@UT]Q)%10E;*LOXL,E@E\", M#^RLQ#D'G=.KH6Z9]2,][5OM["_3!WEW>7YU>_;Z_>A>/#13__SKY;O+L_=# MD.78Z'/4[M$\*Z9P^J["PSS1A[G,YV)._CYH_$JB;1Y'J02-4ZS0T8CI?("K ME[),P/E7_^(3'JR$UAU799$V20T6!ASX68,R$-,;UA[O($M?NCW]X]OPE&#*2%FM#!"HT+L'>5' 7$@>T-Z>J6"W6E=$I M*TDV!"D-O.6H.+ZHDPI5A#83M02@3"0V> <*!.3'J!?XR@A:E.B@> Y_99NB M%8.#J\"509\&W!GXK,"X-NB2O$DR"3ZQ2%3JB2(^!\/8<)/.8XM5$UZE3U<8 MS*PI\;)=1^<*QI77BGPF_QB5X'/#\#:W!/YHRQ#9 X!1T9EK1X9#%@GXWZE MO7JOZ@7-*YBD2PJY49C3Q@Z/]DF3M';#@$S:-V__&=WB%GCU]MWE,#8!K%]2 MY)5*96FM*UQ 6."EJK1,P'A1XC^ !JM )FH415AH]LW#C21PJ5%:9K"/BGM4 MGM_O9W$=/CT]>G;:5I[FPR]"/H[!U3O^[LG+B\M75V^N,..RG_?S)4W-%DD\ M/CKFN1E0C.$,%%\#"A:\C?UX;V#Z83T@E7&)G(!<,,6I=_([1+&'^-^YZ-:N#%0Y\?11%KS"8GPE8 M%]"3'.?HDA(=.2.#KWOF,!N((QN\=6,1I/U[L(1.^'Z/\C-._*.ZE%U_K\^QOW=T4IM)[*D9S M ,&,>Y73E@OIPJ3WV2SA(B["O9R1G$# XBC/4>.-.;*407 G@?5UNZP M?CKDPYJT?:_&O-=!C8?2+<*."=*V<59>P=F26,CH E$AU0,1H*])8I\-66+= MVO9JX ^([4(#&5!\T?]TL2Q2WJQ93X^.1RFU4GHZ9"F]X3!UKT:]EV85)L(> M&!*5M20JM"3@4PU\@W$4.04VED49^!&^!9\I=C? ;Q $S]/8O'7T#[E022;] M_#D:(9APJ] )D17(.^UV^+.J2YG/ZP7\,RU,B!@OU2A_<."\VX WL91@):64 M#M"#6$\P1R+)#:N*#('\Y.;,^2.RBM[2/Q'Y!Z^6U_1SD[? F0'K9S1_[#;] M;N#;%)WJ7HUZGVT:MV!R>+0(_$M1*,&D363.THU&O?>97R-#O[2Q3!MEN,G MHC+1@0N7W\.]L&7#6X^^.MJ^/58%5Y_]4$K'+1P*!8?UZ6:%L'%L+3LL:6JA$O8K\'B M%?V7JLB#*]%L1$9$?/G[8>XT)+ 2X&=P!5DA6X#9;3-ZJN)"_!TWXF#U:>9+/3H>-@-W M^Z%EOMCLY.->[)N_]&0]=@\253CET+,"L>!GSC-_+>Y1/]6E0O0KN.;PN]QM M4ZO/O31>5<,O5;7@R-M#FYQWY4>U;);>%WJK@^3S\;+$VE56J[1/N\:)1=<1 MU]C"<\U0K6(8;2@'/7PR/"-J@'0,>D\LQ)WCH#I!'2!X$HS&PW/P>)H5+2@);4#)Z&\R-% "7]YN_1CZ6:RG*-WT$C=O&7 M$[Q#N89?D5V#^PQ_*LNR*%6UW)'-^/HVUP#!3H%IVJL1[Q?*A', Y1G3WZ)N M:HSAETU&_['\=A4ZRBG5.> 7\T9AOCO7*7+>.."]Y?"2"1EOE:&K(<^=*PQ@ M=\"#./H)9KO$RJPLCDP=!6R3)JN5^Q/'(S%)#UXAU5>@#]+DZ+4GB@'.^LG@ MW'.]?-5,D4ZE,F7.,&A95N:1'Q22[(&7414(PS0?_T2N.(X:/8VF7L"VQ(>X M3$;RT_D-//2GU_2_U_"_KUY=G)_%3B?=4-E%]%!,,@X/GQ=]?(D\@SR.I+!CG\8L7)]'!R3$][?PH MPFWR_.73IZ36(]$E&;WQT\/0VO/_8N?L7S'YW#?&71*Y%5,CK/ MA%I6^K?M9ST_>>']'&>7SI6_J^0#2CB6O*#X1 ?/3EI/?7KR1!P^G_J_!J%S M*ECC0$'(>[5]MA62]&J0V_S\0A?PA- 3%/>NS:WY*%;:H,7]3?_ 8LDFFQ/] M*MY%T@DV6H/NP!H@UA%T&J[GX,B;'N.S'!\??8= \E%2K:0.$.^(DHI+/(KJ MUR6J \3\H:@67VP(:)31#1D='O3L1SN>Z.JF5P/>._Z#A?>$2VT87(M$1NOH MO/"R] ZY@"5I.7&O(K^5!6=4.XM/_4I;TW@ ;Y3\VJBRN^IVCP>F36F!.64G:+MFZ@TW&,8G>&'JHJQNJO:\5^>A1L)A>@>P83?+VZ/ LN%%06PJ3\U\-:&1DL&PQ M:Q#I.9M3>),*,4$SHE0C*&3KZE765(0W;'U.^+RV>@])!Y84:X]248O(X,O8 M2KQ=J%)'P:)E4VL&=C3!TJA9H86W]@G@8HW[[&0TR+&O#Q(0I@2NRB4>+J($ MF[ J&-<4_'#THQP5T? 02M[>'VH9;A?>6U>?HODVU>8;.%E+F:I$Y8Z+FGB% MW/?F4\R&$Q$"\7U2#01O9X8V5]$"!@,;S,P<5F6#BD"GG3T%5:*MA3 MH"; .2NYS!<)'>&]\*F(-\\%.VV)K:-E5"RJ"83FYH5_N8YNS)HLN*>>A3F" M==LC0OUFR#XK,9/HX:V:TJ"&B8,TX18"J<0KE08DMD"5VBOT< 6Z;QCJ3)MN MM%R\!$=69%"#NM(<2CBG!\KBK3&]9E"2)MNFDVW1R7N)=L1)$=3D7^H"%)=\WY$ MW;RMNQ17>/Q85-Q#2(!!DRQ $=5U9:HF_B96, KD?1*LQ_[%T;)B"L)-S]A4 MAU@H@0T*1XXG?RL-#U38-O%[->9/=WA:_LM_2U'&^C"@Z]#D6,'C->U'O4!6 MZ(.G$PK.RJ1AF\3\? EC6F 1%MDTL"6Y4=_3XSCZ6Y/+Z.D3V+K(2+NH:S;H3.PYJ%P'%NC9'U?*%?>Q M^^#QU#^BM\!7=4X.#Q\<'"6]&O!>-B<%UG2VQ)U])*3W$OO/'!R?A(>?/O/( M[,P3?>[]3>0--L(\YEY$]CP<#[L^+?UXV/7WL$/UT7&H3"4H\4@?*IM0!C[C M@GW&/:(?.L:V/$[?SJ'Z\6%$LXWTX^.9]BEGVO @Q(Z*K5>CW>- BUZ)*1Q# M[@7BZ ;S=\$G89+'_Z:3CB[&LI-?M _I<:URB/$M%WX\>/G)N"75AE+ MA'HUSKTQ=?!_^6'2E*6D4>N^-0B2,V651*!2%HE,FU)605$(DIKD:5%6+I?[ MZN(,LP\;M>^V:"P2:;&JW0^NSO\*1Q^SU.@5_\D4H&" _BI/099AUUY^%_U$ MD4J=U[&5GYQI.@[H5?TZX^0L]!:CX_:Q&F3X14(8&ESK\;Y:=IDCC8"/*69 MP09CX+W;:WKK^MLU[C17=(5WFRB"4T&V='9+A6QLV2'<.-@?!P> 2MHV>[TO MX1ZE$IE7CJOUQP9+%RLDO^Q@U"$^V*B* MBJ;&5L0>>LN=L?C9KPU,"QS@SDGJL +@@-6- NE3_/._GI^U?2?XB-VDZT % M&E\I"GRK,X[@W80OX 7HU MXCVA5; %0%JOHO!-8O,YU01>;?UZ^Q?ZA]LOZ/A&W17(11-^SMU]85NQ_5_5 M3;IV[<=T.QUB84:H(N.[VAWL,4I%6UFYEJ.X ;G';RT9)T_0R16V,F9>6F36 M).H?S5Q^]>8"O[@^.XN=/V* IDM+;B-$59IB::9MK(=W[YNR])L4:E 2[1A.V%)R9O<9RHEU2.SQ,NEE>I+4<)#W# MHXA$GAP=CT0B@<0.$/J]*;&LFWHU^+WUJZ]7SY$+LHHZ]V0<39M:-Z\V'2#U MP6+Z6)+1C?5:%!3WE#<^]?CYRQ9OQTC6X>V# 4([M91%A'J6W MOQ][!_O".D#,EA766I;4FET.CZ0 L8?"-A']L4GGLCZ\N#_\:S% =FXS\A;'F7XQ"K\%7&,' MU81REAJYVP($(^@I9"(+DT&*4AJB*'*]98%8\%_028+DS@L[-7,1-Y\+ZN'.JY,*V'8R]9 M(FE6SVW5+"P>O[B'X*3V<=6JX#J&-[J3Z1EV,G5]R?$QFB#"=0OP],PK);-T M@T:ER\JTJT(S@AU2ERM182\\?TX-59Q?I=X+27^(2'O4K4^'!ST+HU*#,GS; MKE_UG]*N6QUGJJC_;;ZD5I=8C/_5ZTLSD[Y+OT53CCK(ZJ#A =;:Z]FK,>\- M7L.WN+PKLM^Y3.WYWM"CY\_Z)1W;&G+6,EGD\+3Y.EH9&MT]-3U\1&U[L:DL MY)2T@ZJ]:4MS$:#7DE4@62F*='-R)H(>J6"W6 ME2%C0A)C)I@#M=>4E$U/J6?,U.)K>S7?6W;C^V0ATP84->J27@UX:\%E>#PO MBU3--&(!5WDA=#R]S5GJ9)=E M6VC2]["&L-=ZDHG2VP9=5R+E>%I()-FKC;D:&+BW5O/&T:WX(%/1;;3BQN+O MPV#!&'9S^VFP>"$;2+W\N$(.\"'YB+T:ZI ;D;%R,IP&74D(ZUZ&@7J?GCC:48(Y_\;SHRGPT7NJCS(KT:\N>&?R4C_,N3U>$"%IV1WZM1/RKN MYF4P;(E3.VO<[1=MSH+QA*KM2=!1\)W@#Q'WN)P:1JNA,O^['AN6\9\# PG< M2"@NA=*?4P?MG!);2Y#BZ"V%)L];A/O(!3V=>#]SE4B'*Y@*L'2(L2&AV8-_ MDW&]Z[Y< $T1-G\H[7A:;_6KTT M3YX5L"J2Z45M4(L, 0 S_-Y/DRH>? MVG][:A(_E.4=:)<@<=!Z*">-,M'DR0*^CUU!9$P%TP7_,U557:IIH_^2H'LS M^B?2R93\J?QH_XE*C?Y12K6<-F5%B0A6E"*]PPQ215:WU\:"O\7B32K]AF]) M\W80Q_#@L0N*28486F0T7@KX<-2GGCX=(OC7;/)L#0*@$2&$8 $)&Y2[N86[ M7S.2XMN0V,-715/J!.Q4>$ MAJ4Q ?X!NY&RSN3I1 M9=(LD;,*!@]NT/L]WHSFMJ**&AU%11!V]X^0([K(>"GDJG#3L&/LK-WU-[F&'PF$'U4Z44]W-N"CXCXW-JN/%M#]A/3S8MU? MY:';;;1'Q>9.M;>U'5R!$ M(H72!$J?!:#)ZZU=]3H:ZF%3E_9'Z>9'LCD)96XN\!';2QNR[<3+3@ M9I64'_B@@D6:HM>"?_GG&O7.0BJ%%C(ML"6K9O4?Q]@<'9_NH^[H0 ?IUJ=E M7:PXWP-#[K>6)H((US;RP-E)W8MVPW:-7;&)4R2AMB/9)[=2@*0G:J599P0# M&#,4%N*@)FEJ'P':P=7=LXUY_H!$FA.G+9@M.1\-(VL8#;%"I*4Q1?)[Y#!.%O%]\;L5Y^!0(\RJ^5WR$"N/.92K7M M>I4CMFQPX3X7A\J+_'#53,'0UZ;[JE2R%M0:V[Y:= !^(C-F)PFVSHP,($4WO_%=6+^ MQ3C+Q0.78;O=(L_U;G. &!?N0N=(+E>9HRCT.WP8]PAY_PQ$$)9:$'0'3U9T MO1VJ6G&9"+A.JYK^M5SA4IM_,NZE(E[5I2$@M'_Y;,JQ1Z6L_UT18&@)LU[@ M#3_DQ3UX='/)_SQ<%/>P *6 58R*24^O_8 C#S<@H>X1#!W+LTE"MP]? O? M5V' .'Y:BGM0-OH=&NP*MM(U->#$?%!91C$^?'EDJK>$])@ 65&XLJDPXD>0 M@-BV,];&K<YP1=.SY96S_(>97I4E45,SAB$((M\;J(F>TM)5]4 M5%4!0F@7'^42 Y3:3T-Q_PG7+<^ 7F9P+]UO;%=[; M<'R3HFS= Q:7!0M;H*YQ(19R28,+A1$=!)L@)E'A!8BM%U\)["_'41#-FL>? MP"6Z(,"[.U[E=^*V[**&'EAO$).WSM0'CD)Q!8%5$E1&AG>^A_6I,<@%(KA: MH-K!P@7$"9<%3'^D0<"WP3ZVM^=FV!CC0GY XZ6E>)7)FWC5Z,$]$AUCN0 M7=*KH3X@GP=PJK<2$\,"+9B\3*]&^X4!0WB.0='T:KB[)WFB_?&N7&UG61R8 MW@4ZB)3^I.RO]HD9 2&F*B.OQMC5HF2D!;K>][DLJX5:XEXF@4)8ZZ0AL\UXZS>62'9VY9]2YVU!$8?S>+ MZ8Y>.4^,Z4\:'_/_FQP.OS$GLZ>F_ZGMUV)X*0+?Q$Y)>][H]IVS-$:\W5E[ M.L1"B:%T\S5:?VB3.P@T4#S4,Q4F>%A&RQ:\E;!=;)>BQL@F8;ZKAE$J K&0 M\@XULV;711VLXV-82:&6&&/F"DRZ(#;$/F):25V=&9RO(CJ )TZ,3C?'IW?: MF1LQD5PG>(0@E)M),WNXR8^KK*!CC,-6=-]M+\HGE%OICZ'[;:E%#J-+ M[=M2]:HW#7P:+@27UJ^E?A;8ZI_XM$C-$#=Q#W_@LO'(-=8(NZ9%IFL:U?5C M(B#GM47D5,W0"(,V0N6 S3S&$]2=H ,LW\)&<5RAW*OA?L[<\.G1R8$<<\.> MG ZOVNI"+,5\4*01)A4,S7>3[,NB=E#LVFP0:=JN:R,F0-V'UA(_CM;ZW$+C;=7PHL! MB."G/D+!)S$R',7[\FH:RLK+EA'9&I?/B]G-A!G[Q'*&$7/K5 M7P8 *:\8,VY!DE!?6BB/CYJCD$-GSWNC=E=-N2K8F[:#CTTC2UV)J7+S5@4Y M^X()B;M>$>]:&-U-4#XL >O&/-$8'OM07=*IT5Q>52<_D,I7G %H@O89^.*U MF;J.FE=>@'/$$%4ULB.'78#Q83JQ _;E^?7YA);#2HMN;JRQ3J'. M%H?(=YGID1_;0G$"?5#!]F,&;,E<:V] '?PD!O>BR#(Q#&# M,*,7_W>O!KDW@R*7U-22 BCZYEB@%HB7AJF2>4U,307M4DF.;$O]SG-M)=C\+;%M[A0<"L#("Q-BRR MA6&9]9<_]VJ4>Z.7 CU!,@)?+J>2N.IJ1!M5'< &JN9H=4 =]833$\.#X%W> MB:SAO(])(/5JV/LS!'=F25M <=L0B#.,.D.W9Q-:)CO9DHZ[>G-Q*#%+SGE? MN255'X#6=^?I_!S=WL,>-Z/;C,.#^%VB1%5,V3H\^+8S0%.>M$RC!_^@:MA'R<.32%LNE4G! MD)D?N.8%+X/Y1:0([/=!R,(7./V+XEX.I2"Q15PZ'@;V,!@>GE1CC'LUU,\+ M=70,T'$;D62@T4'KBA%[Y GT\+!'K\043FV+C>_5D/.,\ R:J@>#BN5/V6LQC5:9DG^S57U2I%Q9 ML4F]W:)[#[&6FR]M7Q51K@Y)V[+O.E[4U%YT#-]#P[9[O!K6?:26&[6 U0+# M@W'QV3DI5W\:\JV@4.(?;W MRNZBTE78/BFP7P*"FE]S4%.5$P]B/7'48E61R6S-E4>^D[31^-(PDXQE%YM[ M((_K?0/V\)_>C_^E(_/& .+^G5Q/FC1E=@'.2,1CEE^F2.B6A(E MPQDVL#TX.::KSX\B7*#G+Y\^.8[@A *3Y&C"-/)+ZJXI/-=9=/PX(=^-/(?@%[P?CB#;@.4G.JP7:0 M><5?X*V78"_9SCQFXXU5L][.&UX*G.*M@ZI)Y*T7I+1NBN5*FC]"LTE_>*9% M'/#Z(6&IAQ9>'[6+IUT& MB$>@[@,.81*]%]GPO+$8L^L6''PX71\:G##S#35Y7:[Q8_W/:"J(]PC- ^Z_ M4(FLA3 F@FA[_5JW>=_H(5F%;1?@;^K"@8!.)$PLN44F-=K#PH*Q4-A?ZST+ MA9^/A<*?MU#XRU7"&$"';10:7G,:C:;B[4DY(:NA3@1<#O=CX]?!BRXT\E)A2(<8]!5'H(3-B/ M;Z3;IN*]WH"K@NJ[\FE@C3N@E5V19<4]E>U2-2^R[^-,U:IN$(D>=9X'?_S# MZ?K)@#"]>$JP+ MQ]!4G6O9YLK#ECT^8^1%)S_D!BUO<-L.])9N9,1#@B^Q4@5'E:H*]+$F52Q! MC&?\&L']9M3D80J6;H1M1*-D@62]E K2U([<1U<0N1[.&LES89NHC@:7,[@& M"/TJR@2Y!W^133D\0XO$7")3'FR'=:%;YGI4[*9WL2F;)"2D3$WG+U20IL%O MMM9?5ZXMEN9ZIX[-1(JJ6Z2@R56 XI@;2(+\B!VTHQ4SGX7?=;70\K-1VOK M-J%G*6<-:;69;GD&OCPU9.G\N6(3F#NPV(.P\[Q,&SI(6'PJ_58@(WF'[%C) MR.4JG8!*!1P4J>'VT[RNK$P:Y")7IVL-5)K@' MC6Z-#F^BQT_JG39%%1WT8TM_I957K&#<>N!RF25,*-V&!@]1F)!E!=8&7L8( M*3)%/J+9HXT+[ER?*BUNL6:B;E(2/GJ4[>+G$413BXH2=@^+D6-!W< 8V@.CH MO84S'QZU7M&(#* $-Z91O5N/>O&0&5' 9^:0.![(M5A4<#R;#&.5+J M0JQD@ZD9S*+3*6:,?Y=[MR.$AC+M- MIEZ-?&]#?MEDM3K,!>==XLC]:\;I4N:+EV3"XE_+!OQHM<)_DEF04XC ;IJY M/S>.2TESJ;.9VH8*![^!O: J"E; R8S66(-&<-5,W1$R MT?&A$\QFZF$W6AM!<<48TE41O\HO3Z_8*1/&WCG2;MZI:L)P[AUW=:U M &1/?X[38Z;G^Q"*VCE+O7B#+6IN\"6J^?KW+%(-K8IVL6I' OS!HE6OUG37 M;3ZM#C7&]JDP96.%A;>#CP>^@X>&)-A6J#?2>6P1T).!"^A76J8WO(7JU2"W MK- 77/8XJCRK\IX.7^6-U8\[JQ]W5#Z&]JY7 3E:K6Z'/!OX#AE+(1\HA=RR M"\86))^"+/Q^1!9^7F3AUZ=P3P>N<+^P*MS/5X ;QAW&BG-/YH<'N[LZ_VNO MAKFW=%_A,6H2<]C3>@:N+8&?\NBOHEP6N>9,']U$)Y_# WI<7;_OU3#WDD\8 M-$HD M#1-OT)!KH"13EJ2B>)PP,X7+VYZ-4P'Y'R V5Y)T%8YD9=XL.XUILC M#G3^SQ3"[RCT1L46%V>(ZTGEC&HL5!Y1K;M?[JV)8%W4PB_I]BNX70&WQA/" MS;G%!>)@[T1&A0?;Q]*%.>""@ZT%*BW0+):OF[HV:L-AK1V%T%ED9L"V 8A% MPAH/C:(UT%E;*%'C-/*O1;1:P#DC$D(SP7<'F/-4A(V"/R@(T1OWZ]0CN\,C9'%]]KT:[9_(I M%2)2(,*H1(F\9B6&2HJ2)KHIH>P>!#P?R: Z2Y-^FDCBIAW0G[S9$P1)\.O'X":;D MI&&WQY(E8XJSG<-LNX=I=@"EL#E-!<_+I#\4CO1KG)9N4JZ6Z B;]28''QYX M!Y,@\MJPNAR:P@/[ 4Q357DD:_K5-6 GN&FLZ=[FHDR)#0&K2,MBM5AGB)U( M(L;QVD(AJO-?P=X4=6/8>\N"QXWR35# CC?SEF^_M_N4'4&HZPE[$.05=PI MT0H>3.]9K$P2SJ,Q:8V&CH$'UDE5;JEP-HNFQBIUG1DQ)=F[GE^46K-ZJ[!Q MU?8Y;\_V:/@YPV]XY*:XCLCI$-V*CTC%P(95KT:^9;H?Y:,<'YV.8?NK=8F_0+;34J02 M).H#UK;(\DZ!K:S_),X:\K24/Q4K/14*:6JM;6 MLY?FQ7A$QO['"%3^!*#RBQ&H/%*@[C?WFO9?$TR9!@&F!>O$P!=4CM177.E& M;#?JUP9+%3Z@[E@4]Q$SU%'1.9'JF#HV(M4D=QEA%]-L1^G!UW?V#1!Y:.2@ M5X/=N^+&B.@Z=A+-A;A([,)_<5UF'*6B%K$?78\-?2[R+>8HE1P<54M*%.@N M&UL%/]:Q=T'TF@[F)K[=:>FP;E!C%,O;R,,#;O[M_7FOAOG %@89 M']+D%F 81^]KR?QN2)"-._"+!30\'UU:7QL,#],(V@!1PH,J-1\%]%,%%%R@ MP4FH"5+T:JS[D2$8BQ#D\;[$

ZDL#8=57H MJ6-98-H:^**RK"=P!^91]?U"36YB_E$8KE48-585V'^F36E_BA>!84Z4QT3: M;NB.];]K19 ';2%3K[Q$K? ?&M$@8TW:AK_^M5',"P'CG:EY4WI-]1H:@.Z0 M$!V8*76I:7C+!5*K>PMS#T^?<+,%E#2^$5*T$M1%1\5$52%U^LX[QB8I[KZJ MBX_*^].4%L3MAWO+B2N!'HJKE+@6>3,3R()):T;>RPJFR"3,:;SF#_P:;FB2 MWH;$!GX)SHCBA<;@7KDDA F^7WA_;R$]/,GF'2MP29(63"F.?@6' @LL#*DZ MCLW44?ARP=Y11ME]##5D,ITSO"68"@U*(H>)NV(P]$AI&)5R/4WNBS(UIJ0W MI$U7,1BO64\6<5J:*L%IPEU3$)YY^SP\-CNUT^*&_%'+6MWCS" :*8*G,9*#$O M(*)RS>&I= '],54T5J4ZM*U#;9ARA%&"EL7R;Q#X=*G,SAK^BA%8Q$'C8K;[3^ MW0PRJS5=^,/V[6(JK#,*'91/4](P[*OY:KYK:N[@FI3?U]XRF!,^6>'BL.Z. MF_79UE/A4.%?.$IE#I&#=&*#9)K873.S"G='@O':&U+OW'6;7XV1G9W?S+0^ M#9I(5763:@JLUL)H(:)_VT6G+V"/B3G]DZ#']*]%D:5N:KPY]5<5I%8*K]F5 MX80;JZP#K3R\8H-K47Z0M,QAK:N'&>_5:WQ1T;SKLP'V,C>TUE@PT%'##L?: M'%MG6(P_?+ D(<-V?7WF=:7! MM#IXP<2KC=_HVI_,*V M>+.Y:SX)TWU1>82[![C^%?C2!9>Q'*?C1_@[%L(6_92LPI/*$ MMGA1^CI Y0;E8VC^[1=<#T=UTYII$OZ2L)08]R^:RGY(Z@'L-/Z;8@JVP8P9 M<,'ZJ5B",:;U$UY8H1E4@I55%LNB@@G+,-%$D2:/3TFN%'PW O%\*V=XY3VV M?WNO!OMI85H#:S.16AG!X"MD5$//@H.S*N$*3YM4 2^%6J/"<7PK/L@4P7IP MK>T?[_(;W!':ZR5?< C-9@]Y;FO?Y,(\,HUN M%ZHT_:L//+8U/8Y@#/ W#YQ2O<'0P1^B&G!."F59<<]Y6*VF*E1)#37%QJP/ M5^'_ANW\_,G1BR]E-X-GR7N9,X2$^&QT/M/VJ<:O8G1%%R9.G=?H]]NKV9^> MK](MNNM[>L[X44*%] MGFN(D-9)"3RO&I?(6Z)$+]%4I*"!IK7N/M^/8X<>_/6U+H^_O.E?%/?R3@Z" MK"YF8B(B\B$+Q32MM5M$']78J#WH9J/00D_DRJ4UC89+N&,.QV<%I7.IGT<= MG6. -Q5E]%\-F!6(U"#@XU0:'X-^8LU!QT:RXQZ\A4>30:NX5*NX9('M#:I@ M8ITURO;BJL3R#)SD62D990<>)2>]8S8B,;:NW46P(FLXI.((C,"4,[GWHI2+ MHN'$K_VIK;U@H]&,A*DF0#Y\0 (."0>S^3C+TT.'()Z'[0-P/-J\=9=FW>$5 MBB7,=L.( 5IIS"DD2K,I(:%-C7P?K74*&E*;13L(P T-A?@P'20^3L"LOU/H MR+2V_TJHM,L@P:7>6&15>>5*#?./X9 W')2#,.G!+Z"6")"C(1"[FP )9#<* MFQ N);>[]ZJ&L(4AR[YU0)B@R]\6FL+:H[T^2\CVQ0>_KP5JGW04/D_X9L9/ M(9+IHC3M1F@:\QQ+KL"+P&72;&]\:A ^QT%)9.E65*_!C:8FNF&$L#EJP+LL MRI26YAQKT,[0&KYIID?1ZZ/H37$4'1\?'QX_^SXZ<%SFD_C?:2FI?J- M4]@3(^C! MOH;V(EA>>J!2,3A 1 M%=P_)PPWVR';HQ\'8 ),;,!ADYD0G*Z$DAU[;?&V=D%#!?8XR!2>7U9=[58! MS(M5(6(T6_.UNV(X\>9KA.['UZY%YEJ+Z& %H^+H',*A:F^X+@O!1(!LO90N MD$2H8615E&"*$ZX9H\\Z[P7BZ ZXBKC\8855&0D43D5Q*AUD\P-?*[$N2A"O M=*ER114"1:DY,C$Z7>.7[HCDJ FV0Q 9B%!1SH7I4E,Y7KIQO7F]%R9@@G#P M6BX-\!.IO1= MM[CT7#;.P"O<$CIVJ6-K[QN5X-C9KVJ#'^ M]AM&C3*C;]"Q@I,=WVU8* 'FN3WS*5G_CW"?7+-+>T;8 M5":"F,3UG%8RTYATBB/,=&'LC:M?PC];DX:,[A@4PML+-,5I,-YH:;[@+S"Z M&W0P]**0E9+KL%-)2H_3$YCZ;BK3OXW8 "G2P"$''>IRJZZCVF:05.%;;!DH MBQ4!NYW!99Y..W;9Z+"J0&N*L\8TSUN>;N8(ZZ?NR!K#D*O05AV\.J:8HYE M@W,J*A._)?P]5^!SF3OQ[.N5,6M+0LCY(C(C&;W%%G*\(=,^J!V_7!4UAH%B M,SPR]0+"*DL+Y34'X'=GC]^5='OEU/@%AZ;U+$N.<9?[WVU'"_GQ./OTXVS6 M<8BURBPV]"!H'=R9C#"-?]^'G64WM%)^H68^0#D.'=EN@-UC2A^;&3U"7 MDO1E5>!XX0G,=4<_,,N,$]&!J].I=2..KM:)9BX06=#)"EE$BN[[[A+0/=78 M\^=;5,S7KK#>%#5:D!A<3,U&LN&EV*8EA6\!/SX"XW4/LL(IRPH/22ML*<9- M4AV3?"2LTPT//]8<(E4'B0A^I$'"=A<9<*L*1F:L7O]D#:2<5'OA!@@[8W02 M_TV141 KZI=D*O=!%(K<&H*_43AG1/6)^F6F:MU$9]*5S#<]8[ GE([&KS39 M?T5 MU^+>CE0WVRD1ME35VSLSM\M)U80GT,R,Z634ZLFC543W*6><@$?N_B.]_7^_ MC?L5EFL,K[O%&[!K?\+JG5O=Z>N=K*0HDT6O!K]?^4:KKL%C=3$EZ-H2N_#Y M:ZXWN&3.+=F*J5#7$=0;X[EL!H->*9FE\0//]6F>4\W290!YJ*49B&<3I/KI MF+&^0ZV\U 7UI/,DZ447-%KMH '1QRL>0 6-M@SE2!)%+#5(9G+V4PW3KTP M+8-!=:O2N^2/?WAQ_/)/?_H3_/?IR^@@^!/MSQQQV&3]ZFA.>,^Q^-;;%,-K M@_&F23*IDN@L46GTGHHLAM6NWI%$O1)3$%+S#FQ8W("W)OW/P*0(!=[[+IV@ M._R+!N$8&-GIT3%;:6>:W@(,&.]'6=FNA M]VK,CV*;HY(#Y39NI0FY,?53P%LNB3B-SE/-:#%EB'L.A_!"9#./F)/S,]@Q M&OQ-F]_5'J&>,M,*Q\1N],?D=+'2F$XT\VO'T+27J#MXMW^/>D/AYT7'^1UW M#?R\2.5'3$0H9R&UTR@, X#;HV.=>DG_<%VY?# \N MU-+;O1KRWMW6EFA;!Q8@!;']6V>P1_&^ACY4- MP1_EWI/[X:$-]'+>8NE&3=9)KT:]M^@S>3)L(+.8P]O'S1'AYFH%VFVJLQ[R78VA;7>$17%(C9/]<7%_'ATXECG*G: M8&TQ,:FY@).9LG3DXY@&+J8)1TW:0+-N8I5J4AP:3X-)P>$#[IJGVTPQAR;< M%DRI:?'1$.157&Q,YI2^5;LJ%QGSN"<2W H)CZ92N1;(.E5HFB8Q"![Q\H3V MMP7!@5N37Y-RO]X;0XE93)QB+GE:"*/D!E]L)('5 1:EZ[6S)0&>Z7.^J/SPG,G=084 M*>ALP6E:T'7<\):AJ/HJT]-[5&V!:AL@@(%D_>JF5V/]C+G1XR='QP?IV-K8 ME]+AY?,)4-*K@7Y13<$T0J=70_T,.H!PPG#>+C$LTX(+CGH _C% /5 SD4BO M!KL_S@[K&05#:JEPDL&U:&JIG!CP3+DHO6>E*:IJJCSUNESZQC?U/JC\G[4N MI5ZO6>>7NJVH1NU1[8'Q%?!)8NDU*XSS6G"M6KJ:IJ.&"@#_99 M4W/39OC<$: Z>M0N577@!3"""$93JPS5T!+,:TH!$H(JC& L\IA^O ML'O )?:/N$ 0,XTIUJ4J0]RLDD4;.03 M#^HMFT);"5R"K%G:#B3+JZ&1(+Z#0,*JXA"#B7BLJI7$-_:'J&DWL,.![7_A MRR0=RS-5+BUWA-_.TPR51'W.5.3AQ^9?,]N&M_(8LLENV:T-G'$UIEQ]MV!X ML%5V"ZBH'@G.!Y5X>E0PZ^G1\2BJGJ@.#[]ZPX3#O1KJYY30XZ/344(]"1T> M>I4YT'HUTCUS]\@4J>Y4VE SE()2=LA>*\%2KA9J%9.UF$O]1P:&#<4$NC[, ME)BR3Q!\;;":9+]L7DML7%BN/,4F<=0&N 3QC:-?*&L()GORP5VDO_,0H*GM M/D /X%^A!T%L,([22W+/6^K-XGJN!/ <,(-^\EG#+ $7I4;QZQ13ESH725UA MN,QZ5<"K4+:Q:J8F],+EUL5L3*3XFWMXH,V;!>;QKUIT<[T:^9[0:IL3K_$- M=+4/NML@4',;1W7$H8L&QF"8"RK7\03T [6H*>@+Q$3 K3Q^*6HWC+R!8B:1 MO:X&O5+J_ 'Z99E"L-%2!(16H M=FH=U/% &#Y^O/V8PC#NHK*RI;VO MOVI_!UOKU38N2Z^]D(AV3EH'L>Z6YW4R9WJV_ DHF@,U'OK^#AL>,G?+XO=J MZ/^F4]^>.H\^[W4MB#X7L5,9QEN1>4122Y!:=]^\E[#5X+\(=RRYSS.5=:2R M%I1=[380W<0GX$ MURO]A!%,)^0W/3B$B>5?OD?B$>QME].2.!V\H80/^K$3'YN D4?S ;!O??,7 M[[PT!V9["2:C3=O3Q<,3=W@% P^(6Z]>X1.MVIUF[6^U:[=-W [+=C1M?_M& M&QY\?=OJ]VKL>Y>>?;)U:_@%'). 2!*YPO-$YJDN2M$(-R_E/B,S%H$F%.X% M 29,@>Z()&?X1\*(%;9BO5;Q:HDG8#%%(H/ BM0%-JW65[KU]4/&;#+&M?:P M 490X0X]]FP$%8Y<[[_Q(!Q@A8RZHU:V@S\&N\,(K3Z*)JH NIEZR!.'1Q!> MT.$8,!1%+0A=_SBW'P7@^4MW+$4'J-\YA6,;R?Y\]/Z(CRN3F+7#QDS.NG56 M=3=$,MAW0Y>CF[,RI%4MN;TB_#<.2$?"+DRC%>LV[],!EK5<7YSU:IQ[;=6_ MB97(\:/CYR\K],,PH*G;SG(H[EJFIOT--30^(Y0!(Z )W9I@GS'<0/3%@9(< M/Q-V;RS$'6&-N"ZZ5E2[[AI$-WDR-5H? MR!0VK[!41$?]@OQOD>R1',%33 ,$ZY)(7G#*KU<#WM.6;FWF$![H"(H,NF]D M\P@$=H#87:=#>S7<3Z/O#K:?Q?"-N3%?1@<(0<55[=5 1W+DW^5P8H(P36#\ M6YB2PYYGPR-*;M/+C43).Q3> &NOG/6JP'WBR>YQ9'L?,*1(;9K(PP0AQKH MZ5Z-N$?$R*/0[Q#Z 4+!:#4'S8J\V3293#==1LB1P=_$FAPX>J.\>_(^0$16 MJ1+48P8'U*LQ[ZWF#4TP5L9:>&(J:UDN+5$PR'\J$RZ/E54-1HVJ%IK5S#+X M:M00%AC,.?\,+DW5+&7)D6]A*@%TXLPZ0H;I^%XQX+&4:CE%%F'R:CI+>]$> MZ[PGD2$KF,TY_CEQY, ^NW,<(J5T9N%6EG!G3%C?8XQP^X/A$1W9;2IF9$YF MGB^>0:9+UA#Z+3,PQGE\13! 1(I>QEZ-=<_0!'=6=X39+L%F/@C/0_=%[G=- MMQ]OZ[).1ZC7$7G'U2?1 7%%P7;EYP]-$'HUU-UR,*+"/=7S;(!XFH'&6NC$ MM;H'7R$.4_OQIM[ACT.EPY]Q*W..)&Y^C_ YE<.'1#N"1W^2%&5*X&^*2K85 M5=CO*[Q]JZ?[_K<&K;897AJ>I WID)O$D?SH!ZUOM5&+M3W\.J/Z\]3? /%4 M>AO^V*1S.:1SUT2<24E@G:VV@H33.J@?;&GUE%[0(HBP9B23)O+0"E1C)DG" M]R3GW+N%(LQ>%%K31J>LM':$J\?]X>V/ <)ZS%+"[XOA 25BQ-'9+7$X71^: M%YJ*2E6\1U;T;J:_$_CKY&W##P_4I N@U]YR%!:XHD/A1U M#3,,<\T]L'"DO=IH6Q3#Y<>%FJHZ^K%7@]U*,M2K43XPI>>]&NQVWB80[5Z- M](%IO>C58+=,ZQB\\,RE <+GMYC!O1K[IX7YV ZPAH=H!QK"$^X@^',"UZTK MY/=3)3:_R;+B'BTN?0[;,N52)E*M=%MF#\Z!)A(V<*:R>WV.^^!5E[)X:MID MV\&A\>'=:8/8:N-%?0NK\RG'ITM!2SFMR)&7DR9 :;]VM705!GKAG8F@R-U9W'V%:6>!5]./8@^QV6F7N0 M8:5+4=6'H']@J/8SKS$9L_F9#ELSU(S@ $J15=PF;"F(4L50A=WH-EI1]$]4 MU$UE6M+?R7(:#RRA2V(]O/.4N6;G8DZEDI[Z&0\2[R 98-5$*Z;1JS'O&2-; MZ74JZF0^DC,E[KI)AA),E]SJ5_*'0^YT]_8SWM#MH=7 M'-'!&]FK8?\&N(+AZ/1IRT"*?VE*5:4J8;.*$B/ZQ8-B4@9;:WHR2IHR.:2) MK5N/8_"0 M(N/JS85F=3P[J[9;&7'+QH@#C13WU;N-RZ:J9+554VU('17^=O78;G5YHSYC6O M#6<(,9"HO,%@%(UT*24&[6#2#04)DL93?U=B$H3S!>Y$)8DZ7(.69T*&SJ@@4N/Z*X? MU/>I9"2Q$RH&()D9!L&\RGU HBGR9B:2&NQ*>"9V72S3?9XQGG7NK#L=7KW/ M.^F(>^[DD(ZYQS77_N[HV2BIGJ0.KS3C'8BI* E:C/1>P1-?:L$H9]3F"D2Y5R_W M /1H$/SQ1Q%,/-C:VI)C=8*:9(>$D3')\0YJV[,;!.+]9[5@ALD-'?3=6 MB'S>"I&O\) ;7AD"J* F&R);"05!5&YQ-?0:,?>]H7ZX7C-A&Z,P[7%L@"$I MD%L(HP@K6=(/-+1C5QDMT:N.A;%;]L#PL*7OBK7(:F8$Z-5X'U<6BU$T719+ M 35.>U#6$3\V"XD>B\RR2#2;?E-8NM!.&I0 M)X<;IT),U1__W=[9/3R\^?O+011U?4HH\<48]@Z$L(Z/% JFX2]&NEGD%%=TB.66,&O MP=,CY-(3U.%!+K7O\@H1,#2LZ.JF5^/^O.G$XX-T5*V^Q X/E*@E]@J6:9FK M6G[!6(WOQPI>7UB_&QZJ2 OK$-&SCQ+5IT??CT9K**S# Q9I8;7EJVDK$-JK M=_B<>O89V 7347I]Z1T>PLA)+T4F1S/V:Q+7X6$%6N(Z/ WKBMTT

D4'"'-YM'Z5HW[U975XN2PMJ^\7,KN#=>G5D#^G ML)X>G1PL1F'UA75XN:U!M_8T'/O,,NN]BFD\%'P48J^#KSR"_N#S;9W//&[Q MAZ\?>I<@[PV'=/*.FLG73 -,9 X,QOG(L_-X%$]// >8OG1]QZC6O5=C_HRB M^FS,! 62.L"TI9/45DND7HW^,\KLJ%T#F7T^P.QET-5Q8 UX'VL*/!T3F*&\ M#C"!N=&%M%>CWI/HU!3#F;*3VKW5#C;Y_6C?QZ+E'3+_?"Q:'HN6?Z/2'&#> MW-""]6JP>^G*^Z+,4I!/.9[;G@@.,!>^4&7*W=MZ-=S],^":#X_X\8ABA--/ ML4%0<;#:ZT:K2J]56W0VPY886-8[2K(GR0/,D#M)!C=_AG7;W+Z'JHM[]0:? M%T W>D\MV1U@QMR3W<&)J]/%IAU$U2CD,$GP35#_)II*-F@A!(Y3*F$4:15- MX:W@QEQV[LW%*-6>5 \PM0ZN3KT<)+:N-D./B3*G++(828TS51CR!&P>*S4) MI&'O730P#FJ.J[3$IZJ20C=O@'\3<_!.:K.O4+"'EYG]^>C]4:_&N3?3U,\Y M-9%^7Z/!BV)[MH1[)\+GI58U!;[(,S5]K%<%MDRN6*C=I3>-+.LB>J>2L96/ M+]+#R^;^O)J5.+P;L1Z:QGZ4N7P\9L8"21U>-M>CC.K5<#^YV10S7?G]FK@U M5&)9L7+J\$!M.-. &0N[S^1%'1VHB6;42D$]EZ7$OC)WU+8@$RODRL)^ 5+" M,Z:@SHLG6X?"JC M)E_1D.!Q$@^'.UH@N+S))9(7)A*_(>,^A\_0:BIQ2#.%<,-4)JHR-M2V%CT= MS:>H4X3K=\%])8+)P4G!":(!KR11+-)E&9QD^[#1(DV3;L7@LS/A^LN-[^X_+= M/ZXN_QF]?16=OWW]^NS'M^_.;J_>OAF5O)DHG4SNE;+I%%IW#'RHE#X(4[761(E&@Y""[5LJHB3S@M'XM M>G<^9+SK_O,&X3_#WA@)W*EUWP8P:9\$@:K)&DJ*J#6$M4J-R M6Z?'K8-6N=0[T!!.>5NTNYW5U^=*;9'_I]H<,8?65S&99 MQ7EZR=()T6A&*3X1Q\"_YLZLZQ+96G/2BI"!W%^?2G6U)E=,A$]M2IM]<$( MNW1BPZE@MJS6:N_;V,9>\-N_O3^',;]%-7-+VUW>_LN6C^#;1F$R^^QKZ:.;YGFIM[L M"-#K>N8P?F@;0962#X6I#!U*[O*?8<;F9CC#TF+K6G M!WY^)V[:XO MEZ@P,,NY'543P3?WM,']PO]JGZ@'U823AF@(96C7Y#E&=!.,$%64!M/>W^9> MW.+>10>H'Y),E+:;.ISN<&;3G_A2GET$3YW!#SF<9.[R8Y-BQ!?-#Y7*E(T" ME:.7\$\83 &SEJDE&QBWNZ2K=.S]!CQ0$F0H?/M$ DLF.ZP3:[7RB0 M(C-^FFVTZQ:4B"0!P G 8B2'NB]$"Z!HA@<:$S,D!I=30_&;QU"4DD?3-:+ MG;5%*8Q.HE7ESX:CRG_FGH*N1D+'CO,:!+881B<0V""WA>Y&1MM4?L1V\Q5H MLQ66=]9>&\5M>A$VGS,(<8#I.#IK&4Z *O(":Z?J(<4*HTH*@YO,/&:=54EDE MI9KRJ[:L.6J\-Y/R$'Z$TWRGX#6HO5YTP"F](073SNUL]&JT#X31N'%:/T9, M#_Y!U:!JDX??@;1R*A.-C/Z!S16\#%[/& )#?#'OT.JS!#'624PX4..D'X%) M7FRHF,+!J7MR:[98UBZT7#6HL,N@(?HF8[FK*B:&=J]2VJ=F>< MT+Y%8%AH.9:R%F3O$9 _8N #6W&EU!:EL2[AM3;F,8A'S)&$UAC';(%G")X.QQ!\A_H]'8J]M^'# M@\&W,J[;$G0!Z@-6 9@)P$:TZ'&US%QG5E5D5'7>@YQ(6?/'(DD:@EJA\8?= M/DN>-O,EHE38W+Z,$N2J2Z MTR#P4H(JX*B@V1:V&6!XUI*?9L$29G\CF@Q,J"DAYL'-FTI0AS/=^)S& 9__ M4H RZ[[*RTK:MVB_^;A-O6WZ?$#;5&;8?QJ5\U"VYL[\?YCT=Q%Z41MBD-W5 M'JE85QZH"5$!X3FJ[SP)#_!PXX4VLV\R:$^X'6;R5\'SNM#)X;B[]./_VS#3 MXPZT._#[X>Q TYHNN@6SK9K)002L?DM.]OF3HQ=?BJ0=B$D/)>WQ$;HAMDG< M$=+O1E2Q!O55M48R<=3$Q?:73=U0U*G[/BZN;UTE#,[7>O^B C037EC% M/66A&J '>S5#6U3-Y<>%FJHZNNS58+,LM$33.2I4JJ0G@NH$+W0I>WX0AA/O5 MPN0?UALNV*?#^W!0RSM,)6PWY]3,>YM]@?R!NNDH_K0Y^P?''.^\EP_C!Y$G MG+1SLQ_RKC=D"D%TR'^3(]2V[#:)09D2 6,%DS<79*Q"ESECRV[B; M:U:B2(*WGDL$B.">7:X49CJ1FJ>JP(''/Y*%7&HTM,A%MD;NC"5X]C-*GR1( M'"E91,G20J;T#Q7"Z5!X\\XS(=Z<(1?1T!EJ.UM;8\ =4V9E9MO&BU8P]SCN M^T6!+Z?3T3ZZ\%[CMHLIQC.8Z$CA+W2.6\,A/?5%C$1;WX?RYZTP"^(C-V2A MJXQY^\O?X+%IB:2ZY(.(G/2G7J#&(77DRN/B(]54IT1 H'&.YQV;> MACMYK9)/#L2$5:Q^*X0$J+SA3()&/6V,=D-0;$5W@E2E 9%OTWTL==8)A%K< M;8#*/'AB\B#\M!2FI"QHU9ILSY3Y<((9!!Z4HIEA*D,8V:5>%TF6:V M(F(K)$$3W8P;>K*[9 C#@#6-F[)*='=3(^J)S9AG<7F6%STTP+:6UQ^^UOL. MM(P1?E[78;4_X%/>,VEV91^+/&/X4SKNJE!O'VH=M_N.//T!V[>?S&6.G>V_]JP"W-[FW&)KQ. N^;NE M+]IB_.M6T9;<_TU0\E__O^>N?WU_] MX^KVO[^ZJ=FB/IX-B8WGG<12%)D:%KFK/-6VQE#J"]!6!) MO7%EUJ#>BVA@+U'#.(M9+9C.ED$7"?K5FQV;\,L*ZEY-NE MCK$K; HALXP^S;5E3+K>/HR]"_S!IT_#J#^,_A@0PP3.$===VR-<@.7GV4> M M 2(^H9(+./7BH1E=PHJ^=9LEE:TN 8U+=LTBL3KW!#]CJ.#PO],=Q.\!-= MT-PJS9IIGZ*CD#;8AF:'F'VW8\]9#O/V;('P]ROQ_O@TQM?G>VP]( ?$TP*& MCEP9NS3P)GLU^NVGYINBQ@U(%47F^/3H0YPZ/:9=[JM7+WX .AL.SB(.- &Z MYR::ZBL"N_MC?]L;31 >NS$6LGI56O23$:+Q"1"-DRY#^*=>' +.'^%)YQ% MB1N(0:MP-T@9FE+$%W2U+4Q\XEN>7XWEML48.M51X[.+BRML'W/V.KIY]_:G M=V?7T=F;B^CM#7YH/N)-ZAGR6D-\C?.Y91.=#BG4?*:S-P.CX&YGY3IB)GF; MH[@K>&(,X].CITSX% ^+\E ?&Z>HSX#[!9ABB M<%R:&1A.L;'-@3YDH5WL/K*Y'F"3Y-,*A2["8$WDI_=U6+#:M#[WEC]"UF,J MGMI_(3(SWZ5X3*GLQI;>VYRTI#Y16H*9T='-YC?:F('M:.SCUIMSZV=_@CNT M]C9@AK-83G:^-76F!H'Z=[Y?6!C#,]IJ-K2_\=QZ_T?:RQVVYTJL_1N_DH%@ MZFVS!ZU4.\'*$&/]*)@'KEX*G#M];#]P,.\^U?<2@)9D60L;9JKU,-WGR=C( MIBLIO%Q>&/Y)[) !=_\:\$!80+>T>K#BEZ*$C3 K:NNZ=7HM]O%_VR# MN#PSQ*OP\?:-K;1L=XU[P!=V^\#7,(%-Y2L*"JGN4!2'H"CT2:J/0'UJIC+A MNC;=2,!L-"*;#!X>VU2FJ=FC8C0JGAKSBK^[=,9?WO0OBGNLF^W'>STT^]Z> MYV3]P;$9>-6L_M/C?GYT?+K/R&%ZB2!9GX-UL4(BBOK/W\*8^SWCDV@M1=E- MHKD9DPY=2%=HU:%O7117EQF'BI7AOFU[BZQHBIJ[R+((RD>[0LQ>XM\83=\? MG6ZTIJ+"6:\LK]7=J[N!E^]V[6%#UK:_YM=H7&VQ5[[3:?N+RW]_/SJ[/SVYW>7E+P_?WM]??GN_.KL]=7_=X9Y_!&$]RD@O.,1A/=Y M07A?ZE[=LB#?#0D2TL9L@2IYZ[K?].H-'E%6M+-RYN$VKMT>$<65[3&MXS*@ MA47>S. 0;#0!MFN.:4)*YYB53+U^&R4WE2'?Z4V39%(ET5FB$+K]:X/=%BO3 M;-)6XW26W>C/;Y&PHR[*]>94@(&19<6]^8AH(]:[@)N>U<#1)X^VVZ?]=PQ MSUOSQ97XNQJ$5CV>OU>;4;[03J.6>"A5VUE4J&;>A7&#MX7;5U)^@$F9-W#T MPD.Q>0AU,<>'A--1E*W9T/6H^%;@Z'[_DOIA=>!JX8?8'BKL7-+NX!DV+>G( MHNLUKJ+G1Z T$ MF3I2IJ83$X4FX1GPI:H6&J<:,EE1.,%V+O6[>7DL!$:"05U_C8;FUL-K0!GM M"Q,RNA8?8#EZ->3MI]7[35\+9+#KU.%,IG[)PR6]9"2:>E&4MOU0JY#3Z]3F M90Y\M<+XF%#/!F7[GZ VQ]UC=L^ 8N"WI4@ES/&'H9AY&^W.BON<1-EM%MNM M3V548:TA 7@AV#Y(UQ-3%DUW-ZR1((]]8 <6XVH&/R%GGJ,[*\;(DZ:GCD[@ MIG*$AI7(7"(8?K?2NRDV5-1\&193>Y1C)O'GN)-O[.^HL2*3UHF M,PW=V$YZ&>\>?B[=HUA\7T2$S$"*N? 7<"751F9@;Z1$BMD$Y%D=! 612(L5 M<:P1_R>8A4S52-1JM5RN:B:ETQ^W=26G9LP M"1%N5CB'!8XI?H/-!05;"18 MZ,1JZJA:+Z=%IFFM6%JXWE)QM4Y3P2N#T61^BO6>+1?/DUTCM^TB,<_,_"J[ MTVU1F,]U$.YO;Z_>W$;O;R\OWUV]^8G";E>W\-=7-T];5/7S(05 ?B+J5O(= MWMYA3W!YSS[4M5Q.-:,D*K6_O3\GC[I7[[0[/[P?9L.A1RX)TH!8R@NJO[ H MRS9SA/.^!E4_\S=L !B]KZ4L.6NM._OU:NR[,6RHZHS7,!R87[2/$ MTQGP'*H&1^^,,C,M4L>^;7II:[K7>:F)F+T$F*[,J/3URV63&X >W*59.B;O MUN]]V%?;+^NB4L2R&;@&M92MYL6P2*D(=C9[0!-4,E=%"6<1/!6,%^0P1D9L MYK6UX4(T&[T'M:]S9<3^W< DRHJUE)6'(,2-B-/)QCR8[^248AP,!HRI3S36 MRYHHM+&:?)L+C$Z!JEVW4;2.85292#A6IBU];8YOO!?;9O@J&ZRX(?>S VN2 M6+@GP@#.D,N=S@KS@GA#' G89G"0KVKNJF9PQ/OR@%7P[A!4<8F3[R@ M-)K[?&,]O*64#/VTS\'GN^H-;'W.OZC\L>CYM0 @FEQ%YCH.<[;1;7**W5?O ME'89D Q/)6J%+T(117H_'LH7B/48$M2&A82<&KM*6!_AQ9#R(KHK:HLP(,*F M57$/(D(17R,PX>_O%P7Q/Q!>P=^_7CO=3J9:XN+%;DV8==!,:BSK:N8BUJU- MY!7#A1N47D#SKO/-2'_0#RO8 M!)!,)VSO&3=;E^%U30QZ61Y2HHL> 7]( 00OZ(PDMS"<&L\!2Y]@3AEDZ]]L ML+!=KX>P5+Y8,QT\;ZT[>>'$%DZ&7;P1, Q9E2W7N ;B>B%!QA&UX"7FE/0(E,BOM" M^+0RL&,.$V-K5_I S^2<9-B!ATQPBLBDW-558!=XN%"RFKC=Q8;5-1Y+(P+T M*T: CKBO3\%]G8RXKY%\;4_RM3Q;6_>J!1-R^5DXK,!AU9UF-,C#=$F ?71' M5:JKIM[6!L@W[;Y*#JNM\>4!81100M[Y64FP=7HU[AV]QUG O42A6B*)1IAD M=6&?NF 7;^S>J+LW"MV]\;K(,?D7!_6UI<1C#^-"H7\J:W6OR4M'+A#<#GQ,,8NJSWEJI9\JQ':0C;CK_K7OB.J*]978WW&Z>RW1:5IS+< M5WS28LPUA\<]6,-M4!F<2^\2=K,'?"SLA#=.-PU51S'-*0*\S(W:O!&=UY^, M"^XM>+K/@J.9!5LG7>I81LB"U>[<%UQ*.JRJBD014":4@&HL*OW=)6 ,*?R^ MLQ\Z.P%76>#PP!XKN;UF6XU.UQP.I%XJN[.1^C2$_\NCI"E+Z56M\]W"'?FU M:T<96A95+>JFBIJ5KIFH7*]URP1"\5Z+@!C/&F\V9WHV+P)CO>6PMU,I08=0RXB%D:,F'ENXU5$5E'V')/E M40W;;+4H(,%K##^^WH3$K.-[*:-=0$U?5=@GK)VRX)OI2=' M:LS]1P0"O#/R(D!+)!&M%BY)=6OB>CD7SFP BQ"ZVN4132%?8E2Z8E/9% N^IYZ)WGL&:T(Z\Z]8S8+6M_K!TS1):B"1:6A M$[97L@R>J1?702>RO6[:JLT-T;=^6EU/>SB!B.\S2VGM"_-F>S&V_8C% J@M M+A &' [&/'-&#>O9YZ8R!-WE$/T9$T/9I&/>*-3IV JZ' =3'V3BI[KGE(#<=V M !D^K(M#^$]T9C$EO1KX;D,BX&8D(!M+>KQ]!W&/);-C4YX 9%?S0#4:7;K! M 1G4\H>V\QCLZMV+>9TG^RS*#HS:+8P>,#UD(J!J0]#'M9RO \!WH/--^)PP MA+%/X<$Z_-<&-@1*T'N[F,I^HW.1H>5>1O_5P-7@'$Q%A>6JO),H_&>J+;8< M!L1T#YL1'C.SW4?XT8_$[IJMM24'7.FJR4VKT#!_./*0E6&'\>Q^]J@?8\IV M^#"!/^(*NT>@W*< Y9Z.0+D1*+??W%?-$@9-U$698R2 \]WB', L4+A3&0XA M$TG.F>_WJMP&VMO%==KK[BB6:W%&M?*[>Y!&Q1IZKE5:S-DHLBA!#H)DLO]F M)D1@&E1ZF'O]T<:-03\I>;=1B4_,":1\'Y@@HU__J"/4PJQ#.3B_WE@(?/,6ZTS74=19DT*'D5W"?],*[O'D M8)FIMF>J..: LY@(:LFPK6N#A$V[) G$Z=M@ZK(%1V&,^/^P]Z[-;5M;VN!? M09V>Z9*J:+V1[3AVGYJN4B0Y4;*"F MOV"<1I. N:44"XJ4-B:B8PG)=%6%CMSQ !8M9E^DUM6DMY#.(Z2!M9OKEHX_ M\48\UA+QB>T0]6/5/:%Q:8=E$:/X%A:-3)9N;2>GL_EX4&V41VXVE,O&J+^Q MSGY'GI8]"K!O6CE*,#1L_\*FKQ%)'ENAV%+)A1"[#J?DTH38[=.OBM&OFPN_9)%T>Z3-I.<(+]MW7$AB@V(HPS M5YM 8!QJ#CK^ 8.B)S<D M/4LK,J_\FPPV&E<22QZZUZX+KG.)+7FQV,28$ZL*95&BOD="LD'U_]-XU'] MUNID][=J].O3=#VI:,$SE.@3"6PD:(D,OH"*;[EUH&_A:@Y'F^^0-$9JFXLR M>J;C#Q)V!1$H>X?[@E%!+'R>]R=/3.Z%D16Z&1T/1S-H3'KN+S]GDY[[:U<_ MOL+F89L&#;X$H/Z7__EY4]_1Z,\ MM*NQ/222:U%[\D:&;!A*PI&KSRL="*P3D+9:O,$)1201]X;NA0.;/G$A;;W( M/>'])P(CBO]HF/=A@^6@:W*X!&O8DG05[*D@,S6%G*94IDJF79*GAJR-B;QKC?FH6 M)XQ%#8&\NQA7=MS"^3I0',XJ<5T_TIN#C]6+E>WK-> 1J&L0:D!>1G9K!^LL M&84X0;@N'BZ?&I,1S>P">IT)># BOOLZSWE2/R1VUVE#L>4'1L6X4LY)4!!* MZ//*.7&#@K9==I'L]/4[10T8R!QP6:RH4VE9D=>#1VIE"70]:#X7]F, OV_3 M#%FY."'?'V)IX#:_EJS QXL/OUP?CH_05[N2=>:!1H1'[=O@S+ BP3" M67%;9LEXVKST@>"Q1T5^WT'R4CFZ>.](Q5=1^@TC!Y_E/Q9*$>2QE@1J%SW? M1^-OY2/R<2;='A /T'?8'@P=H@+2&_$](SB8=%/7;-BN5SKU&]"%.+Q&KV&A MNBT6VEHY546+EI, ==E6F..GR$@,(CRKUA113@BN-0BNEQ.":T)P;;;V+">T ME#+(*^U1>YWFOW@WGLFS+25[8T;.@M4_, MB-?M0F7+>5O5[&I\9%5HU=]636%-3L,#+,3W7A?&S:ZI#2XXO4/UX>]%"@S> MMS X>,2#8B.#S(N>_HUP:H+*$OB*8B;N2J'QP* R_.\$_I U9.?@A65(FXJK M@OTP/;"87#M74.CY,+PN52M%MY(04\9001_/?4RI.X(ME:E1U)/&DI/IXIN+ M/R*6@C,Y"F?8Y6PY)@S3$;D7-'I3AETRJ)33^W*1+5%_C%C0Y(9ZU55X\Q@H MR+'_3@_8#!&1%0QR0=7JV!"7VUEP8L"[1TM8&?;KF. GN9]1?N ?1U?N'_$_ M*XI2[JE]3,Z8!F\U_TWZK*ETUAF/_3MGI>S@%_MF(.:S:_N9P1SOW> 2L/>R M<@-1F.!E1PQC0K2>"?:(83%"_I4\K'_9Y\2*3M$A^H5:QAFV%2S]C>#/$9.) M)(&\+0$)?X6+@M1*\$7^0N\;BE'.:F ]FJ/XJ8W,B%%,;]$JG_M9*FC)THMX^S:&V MW'J(+&V;$:HMR0H.)(8W0PVOZG MEJDI40XPQE8D/JP]&&RA M5,IAL?6K[*ZG*2MP,R0\2DU,&:" 3#U_=%/><1I>$ '2O:=LN(\,/$9..PY[ M3F.<#$4KOD94G'RE._48/M&M&O7ZWI%>KB_J3B7 NE=J&4N=GAO8KL1)YG:+ M UZ?":YP+$FSL79#TE<.]!Y3UQZ)A>L.VHH?W0K)LLDQ=D-\]PT&A49?Y<2B M-AB7D'AXT!%G..0P.NQV2#LEU'>4"'A OH<#&AI%Z-UW)QVF'IP*'&K /M%NI,Z#W?1=)S*>'&<6M7^3LR'"YT+9&TNA M1>XX,8Z7T8?SZ-/EZ61BFG4; M$5@"*8KSLL;R/3C6B:K'1'F6\N!M>3+YC2T9*&M=XEF'0,JQ7#KU0C7%U3": M"0I>Y10RHZ:=X$/&M6XZZ5X3W0[ZV.GOZ89[=<^(6D^!@0W&#=6A_B8NKK4I MO#09P@U?+BXC.>28C+ [C6BRIT+)[6-FP],CW>3-[E95NO%G,-53A'>GJ#[=!MQL/6FIJ0N\Q$&Q%:J MJO&6M TB:/"J9)6. A,Q?W4=%T(+PB$TN5 .99*3U.J_A"[YHH?T??RC3/C2 M-@%GJQO)59J;LG;:@R/, 7G%*=Y@,,A.F4K/^F.QGUZ^QP^. S/^"O+&E5AP MR>T;\%^&[IR]FC8'KT% WMCGA/R5!>QL@>X0\EIF=8D%/(PD7]L/?6)UWJI; M+I5V&#"T.'HW$0";EO0(-8Q#X3W1)*WKSAP\N<8#Q*ZS09]A'0$B:FHG!]R] M!I,:U&IP1'"TT\^)(FS2F$(_P:G7N;LW!LI)A6Y$+4/YQ]!F>UC^]O7GLOD6 MR=DL""DT]>'RNQ4+?,VN)7*7#8>C$$I"(GFFJXG(+$FBM*2/"!TI\I^$ MS(O\JUFDDX2^LPTOX0C6'#0!3CNF3A\&\_$%KS2U#'$T9YJ'+K.D%&D&)XB5 M:EE-)\CO*"3/ *U=+F;=;9 MVLM6N*",'M/':5AR[^Q!Y^%2#MA0,G[%B82;,KJ)4_@TC^\6;>ZPGVB#OBMB M^G=[VF-_C],OO^)._00!"HF/$I$VX,XEPG[5TZ!@$T%@3A16-)]U_]!JV*RD(V%/"(8\1'W)_Y?.%8V7[I5 Q\VEL_+!H\T^G2Z<3EF M_@RE!5Z["KD[.M[$&-X4AIP88WP9C9==0T1]KJ\U'!A<(;9L;A5A]@ M'0AB,>K)UNZQM1T1%#OD?R#^CBQBY5U\AY(K*=N*^EO&Z3(KI*SE5BIS7)[= MJLTY!!2#NY^T%:/OU.?D)BZNB7/0LHQTU)V(0.>'2,R=8[8]G8)(?_G)F5+ M?S4/+F(C"I:'NL2C*VF5+U7C\D!+7H=D::.'_1E<>% M5.AAO 1A,FG_D]'LIBX#;9%QBP,BM(NQ7OV/MN X3'P=H]CNO(1AJ]1?Q'TZ MH4D(WI+!A/O^S*L *V>0,U9CZ,J+>P4 G1T+G0$#6CQ5Q M\3@?+NA3;KW2 :@.=.R8%,I??FHFA;(%"L41]4OX9UNYE<)-_*>B^$1#T=0%.WYDBUX%4 M*BIRB#&E\@B1"AIIO!U"[G'"^V__/@=A%Z$0VX[A/]![&=2YP7!(A!*1&TM5 M(2TGAIP+^@";?E%S $3IW*J:H1Y:TKK(#@/C&(AK]A76(;%&K*%-T\;_LS?> M6W]35^0T4X0]H^0A-5^C)KV"[L<*<^R&C2DMC>ZG=KW<&XUK/)W&?&$BA*Q) M;NC@PSMJ\+3R6"IF2QW7]O*6>]NQSM^I;2T^;P!%<'SR= *3.Z[GUK#MI-!=KLFH )6CBH2_JY@19O#!.A#]U3V,74+ M,H[HKTNG0-H)("UA7_'4SG'#*#WX,'"N"M# FX'H="_*!V1M#Y!..&W?3%)W M"Z3N5Q.5E QC*4>W8'/9MAV+]9V>@BFN]=?'M?IST&L98Q#0OXBS'&7^_)XY MA[DP 4$]@B):@_OLHX1Y<_""Y#:&RAZ0_FX2UM546K0/(T!V%^P18A "O\=1 MTG&MC4MX:TK%%CV$K6\.7LH9R*CYTQW\),XUG8T7W2QB:DW[H-+6)X?EMU1! M1'N*L-%!%#3(3-W%0BW+8% 7)BKP)?C"O&T(DDRY+2;I0./,=N3FSS0)OG$/ M/QU<'N"\32H==,BISL-CE7M6UY+4$M5C0[#$"'*/E$',K6OR,#'C65"%W>J& MFX/)^SUFU!E-:Y[+TU&T@]3=>,*FZY['E@X?6(UR)T^*4,VZK-$]__L]9%P^ MWO#_S6.A@G8KR+E?IM6([R.GNA'=3XW/:1M*R%RV1#E69\B9S.EG1S=E _C\L\=WB)V*$9OJ2]>P"JG/J^RRB!/7&*VKGAD9BLAIPL9LOH]Q0E1 M;!#%(V+VO%"@/>E G"C#8V&1?N8&"9+?XE- M@RM2@Z(BW7X,C^(;2-!DL V*P$^/U-LP+HY_$&H0S_\=GYZKR^CJ ]*'?GIW M=S\ZO3=N]/CJT]'[Z*/%Q\^GEY<_?[=+>7 O8&E'!&;Z(<[Q#'=9*N# M=8WJ)^3G&N3G3Q/RL]0I;^WC+@*%-(F0J<^I1LU)4P;[PN,>H@BKH!K#94TR; M QPN>!L$Q)E%%(N70"$V,ZC11F(>- H&8EF!V$XQQ;^PDYINXE9)53Y84M>% M]O$#YK2-*Y1URZ'&[84*(R%R9)B8\9\D$;)V,0^VRVP>4*C;-<@A!V2=LO_. MQ.]\-\3O6\P/&HF!9IW;MF7[)_>QVL"'TH4@]P=YKN<>](8I4\UV>%9@[ MX@X\^!Q#LLGR47]-/_IC538@OZ)+#)DBGP'&=D@L,@2"VS_.(E7 H5?4-@9^ M^J__\O*GOV/?C]LR1_8;OR[2RQ[@BSA@Y76YL&7]FMN$0 @"5W$&>(P".&6\ M:-#8!TX)XVSH.:DJ/]]7V;PLVB1760++FWF#[?RM-G/FL%J1P$F2L)EYJQ21 M\E&K$*A$T ;2);D7Y(434Y3^DZW>TF.&TYS=DG\!\UE4\35E>*AN^EH51/VR M+--L84IC1)VY*X;/.Y>)'.'KS.;-HKL;1?$U'3CK89R1\!Y\##+L1FOZ[E#/ MX(3EN:)FX;A[K).EQQ[F?4:#OM!ZV1,@6S7P!_$8ML$J,Z26@?2S;;%P?^#S M#.[&;9EPOIDLG=KMB9-Q'RCL;>N:5+YL<42+:][XTG M=+DV^/DOH,81JU?%J_OH'^H&$7FU?G.)9]U^=+ MG$IS:K^$[QG?U\OP:&,FF6;ZP*[B.AQ_P@SL_)#W<=$N8E XAC_2-N.5YE^Z MW,:0/9J&"-8%UO?1[?ZJ)WB7EHJAFQ ,7#K"H MN*8IE;4@.XGID>ZTGCG\X>#Y7K(/ID.V'[Z_N9GD/_>/)/F+[:+$;]M%QB7:\M'8JHB/2#6AX;_^\0@N)CW$B$W)( M7-S"=*2[(YAL2ZV6311!7*D'XX3>'V:();:,+ZZO,D?*,96TC?;"*MP AF^5 M22M8*"G*ZB_YKP52]GF%W( P5[LYM0L[[@0Z-ABJP_9A5H,ZLG/Q//?ZH12$ M*:\B3-IU^/). R\3Q$='D!Z9D7M%9(8:<4U1%QD#FR,1-UMVC0TA@.#OVD2R MWTV[N8$97M]$2Y!DV8KX'V!'#34EAY('YB#K]$^<@L9X;SH#>&*A=T[3RWJ% MW6O>7_<-(+P.3-% D:*(L)'&F3[-M%!7KJ5IZN$!C M1K&0@BFK'CK&^M'^>X4V\S3('A=,CBOM)/3,UZB*6N:5V(D]QY ML;%D4O)+%R%3V M7/##,AJ_D5KIC]=C%F8^K.1V"ZSE)K#@IB199,0V&*P6#=F1^;X0WN_*>,-: MO$90/?_AX-6^$?YSQ1;[,;.3*M+VG63B=(FK0"W;-O!QXN@^#LO)8C_T* MB3UA2Z_OPY2Z(\;<$D1''CLU@KPI;C7B )A3&Q,..,%=6.[!X&@09K(5]=(/ MNAN*U_!D*2KBS,551/L;XR(J9LV,R8_>5DDIS MWRCEEX]^RR2S=ZQ^[!SDAP=O-K@4;9<3Z?AMG+=\2L._;__\2<9O?FS#4WOX MPZN#%SMS;+/OY-AN__R^Q/1XFI6QSC^L3%O7T $<5O2!R]>O[T.W;7CGT.[( MN)E!VV :>4)S/ G-\69"^4AAC*PR, MODW$D@,3:OX^A-,DF[1LVA'A]$M9IM';& _)N;HNFRP>4=N(,[>[=:=HANMN MN[4T^P3L%C%SE]4W'*GC:\@1+'L+N[)B[17QZ#A,PLWO]1.;3A?86")1X=UV M<1[2DDMV1J&XN,8=6]".]71D'Q@^W_G']8))P?*EGN&N5*(>X;CT"T+Z8235 M[TXD4^;)DO *IRN6X K[)M(W=.F351"IXE01[PQWTDF4_*S$-![-1;K<:QXZ M>-7535:EID&(WZ0LB/KB XCE7=Q"?#B9JI(GTV.A+9AI/W*3)9/,EIZ$Y.O6 M;;]!,5/3(?F<.A-9WGD<'^%]&A>KZ"Y/["Z(7B?*)TCOMXB!T O3+\HLAU,1 MQT?%[J2G.[;M)/)]JYU5"_APGL0$ZXW5(PARUD5+!*>)I,@8'F2J:G_MP%+ M;AN-15IR=XT\SI;,)W&KJEZN"NP3 FK=$4,]+QU3F5)/F>)6#?N!6J6PU9OI M^:4W%L%N9KN=(B9,8A$6C?"J=[BCA*!+>]F;,^Z)1-0CGB81;"R7J9(IK>N? M3+?S7I)E6^U$H^W9!?J[/9Y$7CG!9'>-<^A2V_ZP2]L_%3+UO/-/; GK?9K9 M 9]IE6?($FTB"0W0;:^#O-N8"*#PU3! MMRT@Q"W: 36N_XN,:/*V'" ^EEQW99\G^&1PQAYR@TQ8HC9T.,%LU M[&'S^*W+7]()8?0',-9@.4GDQ/O&A@Y%D0EP]*R87[W@)WXPQ%'$)O21:18T MK&6K6T4](N;T6XJ*@&B]QJ:-382#<9)$NBD$UG,&.@D^G0 >3P!XO/AA GA\ M0X#'3DEUSRRFFRS)D[ACR+LL'>L3KO*SU)%0<\^2>T!8S?P/YONNH B"I50] M8U-'*%VHJG,.?R')@R(H*Q8HBMB MCL>8.2^CLR7L(9R8<:%-8.!:A"!JDY@=.-#'W!S&(=95TWZA?4Q9<4J@^K\"7KK'Z MT6&<"!S_[^[Z#+5P/I06SA^/?G]_>G[U)5F%<2[,D%PY'%-#YD\K4.DPO(_Q M_8@XE9X(8>.\ML,^!M_IC1_9RFH2/QOB!7YN:P0YU-$)9KB9IPBU?T!0X<>Z MXGL/,0+"2#W#,"(CXRJU@!%P83;^-PA)F!]'#F7G%HJJ<4])IK[/\APG]A9S MZK_"3[$>^>JF;&MSW[\X8<9[-:XTLTC/+).JGD2 MDT9,CHA7!.X5FAR%TJ=N(F+>.9(1MP[8[/D*7M/='1Z.S*MZ< FYS"? M.[3T9OVL.3U&'UI8)ESN(WXWMK7Z#\:*5<&HC*?^(S%"4^IQ$-Y>AKIX"=-J MY$SYE!$Z*K?F!A&$-7BPQE.'G'6#TMG7]J]8V?.9\[]!HAJY>;2!0#$-_F1> M5J#%<'OR>%6K?]/_<$4Z_O[OKB[ 1$*:U:L\OO^WK*"%IO=*C/RG%P>OW_Q$ M8?*F@O^7ZO%("/V 0^C_ITE[_OC#P4]O7JSY^]H?K_OCRY]@5-_DR: 97QR^ MW/#'_X>6A)<%%KM>Q<7_][<7?QN\,O^2OL'_K[,?MZHBHB7YC$^!WLZF7/T; MW D,2F=II&^6_)$U=^>OOF)W-#V?%C$F]01[AJZ_CR]_OOIL?B\'%#]ZZNS@ MD=]^:J[D>D X;BRC?-&VH3Q^/ M:^=$1T9'I#6\#7M 'CQEY_K'ULU#;_$E>_E/V*K#@V]TR=VSYLQB1S_TJ9^WR2 MN=,%W+E]G^3R))?'+9=?3')YNH [M^^37)[D\KCE\LM)+H_U FZ:N)D$\R28 M)\$\-L'\XR28IPNX<_L^R>7O52[KV>VZW'XU2KG]37=G5R[PQE"I79+L7^MD M?$/8Q3_C6O=+::JM4!*@6,R[#&>E[=,="@(;2R*PN; FS]CQEAO)B?R4-Y<&OK0PYAS MHX/SK6WE*'Q"@X6#E-SL M<"(W^X;D9J.U+[^@SN]!1;_;U7ZO#P\.7[Y\8K7?RX,7AT\MNUM?[??ZX >I M0?S:U7Z'!S]N7$,/2Q IIJ_L>[?EE7^;?MUF^K^IA3?A*G[ MIPG173D78\=N3&)Y*@VDFJ3ZAZ;X]FNX) M-,3CA=,='HZIP]5%>1_GV'5NJP;[-4AJ=PCTM"/LR'S6[K=_%L,- OJ[AF(O MHI2;!N#7L>GC6@(XZEJR0;BXCM)6A0U]#@^>SUQTK:RJ-%;SP%E+^ _JPZ*1]Y5X\M>2.,D_G>ZOQ]5\D*#::6\IB!WG\WOGVD0+W=3:(NFNL>/ MY9^<\W0[%DBC4WPYK.^Y:J++.%>U;LRL'R>I6)AGE34E/$@6@<%D+JZ8^A4% M4*4U>,EMSJF^^.'YTW*J+PX/?GK^37*JS]\4_*G&SKK/;^7^K"UW\Z][^I^SEER+^!0SFB MN-[."Y(I,K33\=KAF[AC&[';(;A)8DX25>8#G[.RCJ#=\95=-FHU;.3\FX4-$. M]AM728L5O,$O8OAKW$2YBNOF@8?A8*E,42;!!#65B0MK.AHG+0?#]6+][L]Q M]/3?>O*&UZ92\'>51O/[AZ:'V;VR5E$)(ZGNLMIRXJS:JF[C0G*O,!0G^?D" M-B:ZNK$OLG,P8W"(!2K55&6G+K!SR\#Y(B5D5*.1'[ M=CW,[O%A%<#WZWBXIK_LI<52=Y2.3H^!L2/ A%@?SI#-$23F\?$=.7A'W^T MZ35^R(03<'/=W6#@">LTF48Y;^*L(#XU>0<\A 1X1-9G.)($Q%>!U[XH1>;1 M+[1J[)\." -^-3[A8]S(H/DU9["0>0YKUL8Y2L^5PJ'N\1^;F[B(F@JD)-SG M/^M](]G=:2%:!^0:6O0M#L+1WSZ^I"/DVQH)[(HT2V%0M>!;7"Z \S;)599$ M1PF8YY@WN KHBIJPTE@]ZZ@B>&@AA'A*5DK.*WW/.Z#NJ12BNDH1^81[ M12K8GXRV6# ^L(M9F>JO^$?NCLT3?L,+V)%<1&U>9&$[Q_CH8@WAAE]L_^7I\;X634BP6.*)Y=!L(]ZO 9.D;U/HP6BKPE:FC]@B6 \T93*8#$]V MHKIY"M7-\XGJYB^ANAF?2:GES745NV2G5M.SCF?QPI+MB[3S_#Y49([8F.Q\ ML?-3L?,#ENLO@<(_7'\QH@4"U?9R"SVA =#:67%;PH4B^T.[.W#3M-.@D=_3 MYIK-_9$W%R'Y#5KM8" *-3.:X;AX;XECU.%41?.)+!5T( ;@XP%6?M%615;? MN#9A;'RP2JW*:IC "QY1WFG;UC/_")ONXN&ML38<6RG%3"2;$Z9]B@^A3_0O M93S&GL,';,X8R.:X$[%BDSQ7MRCV0RHR>GOOBU-5)U5&%BS\(:[+@F1XJL!' MS!]8"]=/I$?AIV368WPL6V1]]G"J%EE!%ML^0?SO0-?@_^TQBFFY["_E46:2 M>0G?CY(6G+]^ZMUZ^ ZOX6G MVE.4JAS,6/3A%J&.]'>8=V1F#@]O3292Q@D4=MT$Y\B%L4G?!^F),7H%%MJO M"4X)+H]/%AQKEY$\CCHTW(5X&7R :B_7&7@5\" M-DE1+Q1YRS%)//-L@.&'+Z1BB', 7BL$B8X8W'I<%[%*M#QVM6(6!+O'G MO'.&ZPYO^'1P>1"E,@3+!Z\J6,PE_RPIE[#=<9'PM::7'B7D-N(P0 XBXCFM MOX@$?$?UQ!B,@*OX\V@J+J\,_64]G*"Q,9,QD2^'QM96C/5!"FZ2&!A/=0(Y M:)FP?-!F3X-'#%PUD$@HDOZG!4%' 9\CJTG>Q7<'OH1F/4R2&P7/39FG-FEF MJA+M\SEF1&&CX7?@*9$'@S+1SX6C=5XV^%\UBC.M^$ (JNL2_FL690M;(EAC MZ#%KLM*(&M[?*\)77^,@"UPR40-PV-R6V4^&0 M7B7&4XHS7M91H1+8J9BC@KRMH>*7:7ACXA O&!5(KV^&LB#J?1LLQ>^8_81I M<.,5CD7&M?+/ +[Q7FP52;%V7TR+AH=0?S:SAEBM:(GF:K8E1.'TXN^TT8C> M6UUGFZALQ3T88D)?)T'D(S[BB),>*+) MD3 W3(QF>CMF1O2+4:[5BE(M_$9X 'Q7^POZZ4^Q16FMY0'::^+P-\6W:[ZF M9GGC&OS&AD;)P3&3F\KCNT6;PU>2/$8Q=0TNB%JNV#DB60RS^-=_>?G3WQ$@ M O[0,OM?_!;-P/&C'%$+?]89CGZ1J<$&H6[H2&CX$B[-M=Z !$YA%>ODF=_N M(3.P )SL-0^I;N<23ZQ)1E%$D?[BIG;ZLC&\>_#0NLP5K2")>!RUHID>8=O4"-KMIE'Y#&V/CT ,HI:<3(9PJ? M>K(?1H\).CI/^@ET;;F/%;X#-"T,09Z!'W#"#*[57=G"<;^);Y7^#?Y7"I)Z M_0)QTRZ0]^2(BB8#%Y(O."QO6K9S7,; $.Q=3$SU@-NM,VXRWPB=)&9+8TQVY1E!B&9?MI1I;2T6*1 MY>A62N YB1&.A'^Q2AW_%KS,1')G$WSB2?")%Q-\8H)/;+3T)KLR>X#^:S8 M]^M^41_#G[RE4>[ MQ^CNN)% Z?^T<'-MEINNZYA<5MH]0AGCT+=JQ ^XK#,14EY>A#*]5#VUJ+BB MA4+:\4-!/9)?&%(,^ 0) [RA8,7 ( [N\*>_1RL0C)6!D6"/W$39A(J_Z&)R M-A(96G&49M'[S3!N.+JCIM+QG30=M(:;GV&.+$(=!=N4DA7/^23XPOTSU,;7 M!;P"K'2L'"8TRXJL=)VFBZF],2(E.6-F-EDOC*AU&S!.$K72%5L]7]_CLK9Q MG8*RVJJA/K3_L/!905 ?;9T9JXB!_U@# M@2;5T GH#:["3V]Q'@*=)06+15: MO:S 5#([M'.-][-*#^?(>5I4CY5"( 2FU!K*;VG*9YZ?H(]\425K1IE+$;.8 M ZP-\,4NKUAA.-O;# Y*KS'E?(FE-+BOQ\X*1F?.A-PG&(E:#S"%F_5CN 69 M==3'TSEE8%"FM?XEKJI&H2["-,8F/"P]W.:M7+;Y8*LIDM9QYK-M1 @/T;!YFP^%,U^9Y MO'(";<(/2.:L+)A>9RD%Y-I=.,SWDG>P@4N@7\I3#XJ4[LX5YRK!_%4 M(-^ZH8,@0,S MIA)._AIFFIR@VU>?ZS!69M@TK&C?JO%KZ %="2Q-<):?-,3!KCW(5^\8)7 \^VBZ/R'R]5GL2Q@((P0T_!Y+@%!A&BJCLA M"$H[,%-#I\B;]4.0$/B23-LX,Z<#_L;A\P,.LWW\]/.[L^.CJ[,/Y]_=V@QE ME9\?'&YA#'*X@@HE+QH[*$PN6/UOUXH048+QQU8-MPYB+'ZB3#55QD261- M,/C2/CW.66,R;A'/&5?(T=,/S?)3F.$8.:"5U0WC#2D.V $CHI\?/)_0*JY<>3X>N<(.VS&?BJT:\+ X,4ZFB Z!A,M= MTP!V-YZ8_VF(B;AD$#YV#IL<)$A/,&1[I<86Y%M\&" M=68?%P,-<:.K_C?D;)V *&N *"\G(,HW!*+LE.)]1%C'R!K'4B2YY4@2PO+S MMX>_%)%5:T26EEB$,Q1BQ/KMA;XT>P!EP?UNQ[_P9E>FA8B]2G(=B".!^WR/.(P]4CEDO> M-$Z1.FH]!$0ZU=?11SA$5+6D#?[0//"-?S'W'ST#SU*GL39;(ZWWA[ M[)Y/+IEQR4;4G?@CG:EL'#"1WJH_X;W,:F2^[ 1J+'&6W!Z020T'Z]6U27/3?'C;9XX5"'?XF]]IML!4>] MN<.8IWLD+9]-K%F;_'"$>].&[]9W2!DSE!%ZH3-"1U>GYU?1\8?W[\^NKDY/ M)VO!6:(1)8:$C!+K*E##J*T:\[#1\-L3B-M.%PO%X)V3F$K6.E6ZJL;\/7E^ MVEU,],*,#BPZQIUU4:.H!MH:X[7(%J:44(>#'870"]8P'ZNRUA8$IJ?B.7RI M+)B=W0G!.ZX1+TLMU43\9\-/3HF^\Z-+\RT3[];1;.M*!UZ8DYS4?'WR$%"1 MJ.D2RZ&=@AHL'/B7^:+[Q_@:;7:&QW?XIUCEL"1T30.<-[/GMPOQ^QW39RX.\V5E8HIF+PTP,$U@$30P@F MB#Z)F8+00,+H'Z99A:>#)L+3QH8#8'DW_*D?A)MTKM6Y(TJ:8G,CR;[0C7^O M%%[9L< QKOHNK(7!T>046=OKU3/ZV.6]DMH>$A0VB^F*YS^+\BY7Z;4B&4[11R4T!*W&-P L5UY%AT6?2%X:<]LFY-7-:PNY0@',%:@CC M^G@-L0JE+,"9,>@,^!33E.6S\&\;5D"9*BKO\YGI: 7_E[";Y8(:G-0]YDNJ M4)##GI'@?L;CI?%3$%R8RG+X$BE0[3#UP&N0@I.EEL#^\&6?"D(/7C84VD2N M*02J8\JBSIC7A@?8Z-94DC[HS1TLB'Z89*0,T!ZAI[#R^L:=8#R7:CFW_3(Z M^\N<=,)92@F7.0C ID7C\.ZF='IC%?:P=KEE=7E9B8$))2R @RB:CFNY)2&, MQY4P_.W?C]+HIDRV9/#KAWJ-=:8U;2G* @=Z[H35//2_6QQ@[B\"31LRP(I& M7T ")]3T/0_\CULOKYN3S8 :'=1I5:C[9TF.,+((S 3LCQGV9]$53CHFX0]L M,9R0$F,H*V[IGL*CNB=>9($?=L4?5FJ5QPES8_3\C.X1G6L^N\*6.($2G@)* M^'$")4R@A,W67JN=VCIKR&.'$%21&&NP[V 4D_E!%3XP+"G)?E@G36Z%<2M& ME/@[40FKHJT:[+ ?8<8[:*#Y)/3S>PG1UVW-D7LWNB!E?3"!7.G6I>LMR-M2 MZ/C(=):QK/<%*+51%KG.B91W5)[#SKTT84@H7Y6"%W =BQ[.FB[7)_.J.D\Q MD^TMC>/@E^3IW%N/*8ZLD)"H 9'KE G8*JHRID, VEBSY@(CY[&1:;M4Y&2% MV5/I%G)=Q4L$EQ3'S"#\LOY*9^XK/P\-P]HUD2,S7B M-]!Z(,S6H_W%YO%6C?E+L1N.L$4X!U[%= M<<-..\7@8G5B%2@'D=Q*^T;X$V;0MHE;N&=TC:2_Y4P_7H(#$Z7"UDWL;_^^ M)?NQ?I"D*/2I\W6842R]"L,%V[%4=\*&3O3KC[;*ZC1+7.QG>),F:6ZE^8@Z MRYRT?&FW:JQ/DN%@HV%N3A?;(]\:BURPG9F;-9\/28YET.C\?:C(EWY=Q]K3R]GDNOKN[-@3)>:DA M.165EARI@[*FI&MRO0)%9?*:6VO7R'J'.EK^+G"82E 'MOU9(-A MF6G-,7Y#8VBNO.%DW)(X3F]U?R4)NII&7GT/UG 34\!"JT$X M2QR=TTM61(G3G7 M0A'7AONKP>$L,)3U"*IC08>$]:X='84<@==EF4:+F-(= MBX4..\+.E]6JM V6/7877@GI';;,:@I_Q,1!X%"F+9G9B_;?M*I[?!KA2?.F MTEEA_XU6-UA3(H-.59SB!=;G)CAE_@)A#G-Q'U9K^@R)YK*%6RA3(9K%2HX7 MT\^95G=YS#XMC$V9U 82.%9<&J/!L72K.H\Q]Y!)+BQL2.-IYS1KK'0)S\'E M#74EDR<@2DGW-^MT4Y=G:"H).PX3QL)B,.XZE_!M:=S0KED7;E&%0[NB%G=! MMW>V:BQ<;+-M7\)[;_Q]#S;Z8$L4XWJ?:W)A=JOUPG&)'8=:I$-TE/#<4-YL M__1Z?!I/'&H!:N+?4A.*TL)G#EL@)6FB-.>F;Y68KK6)K!@!UH4VTK@K_>[3 MK"O!?3%UOP>":M^-LQMCHS,YDZ!"72_@E2?I'GR]U9": Q6)-%,J#/)*]/7' M+$V%P*QV++!.(SX:7RC/=>M@HDAP^WQ.$+JG0.A>31"ZJ<'41DLO4@.9;P+@ M&\@NK&DFM@ J]8(EQH8T<*4%3$0WU@^S& %G#2ZIN[?BK.,],EN-;DP7=]A% MB+W8B?[,C)AF@64D;^ O]DL:MX5PNQ3#,WS%4+S+)7VS17"NQ/9JO7S X&AJDD#*>O.RM>/U$,YK4/?BO!-P7F:S%XV>Y/= M,'O[2U2W?U*<^7;=T,L_TS"0F@A&U)>* 8AJN3:K:%.M:P6:U)X Z9E$OU?<C%9#V?R<:3%$-T,^#N3R@EN& MT;WNHRDAKS7>-XSFFLPO'(HH&2.2TS)IEX;!5F&0H:"=ZB2:7:L5 Z=Z4IO7 MJ]C./@'B7GHLZ!BFP\( LT^)% 4):BNU@)/!N@S_V^E5A(_ ;E'WL/Z5M%4T M*1Y*WE+T4Z23[,#$/>)!!T?$/7)JJ8BV:KA#8F329SL%'#RGT.OV3R)T3$P& MB@E,)<^VQA;>'((@5)B6V8O(GUQNKX&P[*#[TL7MP!/8?3YS%^$H&8O#KH/-0@ZG\Q]( M51<3WU&7EPB)4\J22(N$Z(P=3%,&J+G^0K_K!DF*ZL:@N9RN*YVU6XO6FM3( M;H$W/"MX^^="VL2WW .J9*;#(L+D631OA;\;=8LA!Z)HR;S2OB %=LJ<;B!2 M#6A0**4,,2SB-/;0S.9P 4$!I$HM26I6Y:K*&$#8 3$0N"VA2BS$2)2-)1SJ MW+P^H-[ A$5Q^G\2,B&5RP!0K5+C!!Z#&5,0X>O"2H8*[<%"Q[RD@S(!7R?/ MB,?(AN,>Q3?&&R:99*YF\UZ']AJ&E[ +5[;9PP7K:PKP"($9\KNHZ,BJNW?Q M7?9;_!G.-.[?@X3O:,,PD=W ?L( P#0@!C6M#.HV M:X;/86W5(^XF1.0Z"E MHI\F(-$$)-IHZ3?5?/V"TF^*L%;'&]FP@2R=B4JR11<;*!I,XVSPMSU=[-U")O@:X0)_A:?^F,_Z]D^.+OA9V*, 83H(C(:9X+7F.XPM\K@XBBW/ MWCOLN>T8H:+K8O OG;P MI+VX]_/!PJ%]7:O3)UJP(WA)%8RJ;FQ?CLX[MV/UOU.6& X=L\JP]X,071J! MF@:I3F%.I2,QU+L!P;:Z2T[?D>5#F2/',TK@(E[RI8078_C)B>"O.M[PKJ+RM5KE60OQ11P>M'Y+!J),N>\S-G5E0I4O MN6"N, *&;F/J#53X*L:V0S.WN>LLJN/E*B><.E*DP\B$0TMP)%D#7HXTOX.S MP!P5'BJ>#2I2V!Q:K%"\$J8:B7;JF6TI+*=. Q:#Q90=[-\]8O,:NB$;T7L1 M(K4+1Q@Z!$.7M2IOX$YSB+3/RZ,QBH.4FP(78:M>[8:N=9+5I64>='SOFQ6AB M.CW7GZ(BZ^(E#S:.'+@&3I:D#1(=3'V05+BX=P#A+Z%U4HU$Q5O+J/+L!?B:OD9A:=WL9Y MR^:Y_?!$W:J\7+'J>!\7[0)CBQ7S%J$IJ4#6PXG_W]C38%ISU:AO*D;4DF5Y MWB:YRA+0>%D*R@NL9_ XR4 G)0N8Y%-%M5N;$ M.3>AE)Z"4GH]H90FE-)&2^_P6,RB_RS*NV>_EG?V,H+8;11U2,-L!%QL=.'O M.8)BF%I=,3VFBHKQJY>M**X03)=.*JU?U?5E%U/*9K?J+DR:EYR(4034.S22 MC\5QI#15"9^'F=XZVG/P]Z6X]?N]$'UZM"9@+U$ MS+QG'[6%!E*=PJ]"E!T\PVTXS8&+V.OA^ 2S[BNK'0J?^Z.6M# *LTKQYF"P M]D-)@HV2 CH9X,1(DYM2&$<#]KZA='5W'%M_V![P1[[0]=C0\_ ] MCL>>1)Q"_VD;.&9]N[G!*1L0*E_QF/6>_YYS9@D?-7I%0GH/'*;>PML-STT7 MD:+7X^MA41Y:X:]R5QXWZ0< *F?(+2J >6G(ECF! !Z#?VZ3&DLFS\FU.5G:N@TJJ<-W%6Z"*PM8%E)\(Q MD^)R_0T;]!X.*CN19+K)$F2>HLIN5'E4'7$3)$R\WZJQK@'^=:KU8I/G39CY MD>@0XF5\S2J)SWO=+KG?-\J0-F^T4A&1WBT$Q9\Z__U"DB_]#Y9W*]U>BB_E M7-C:N3<)96[;YEFY>+8JDS]5T]<\RB1P30_&2O=/5Z<7[ZE= M)_[C[/P(&WM^=XLTI!Q_'%._3NRNNU7C7 >/<+%$8+#EN72*2@R+T>EB@1H$ M[/$3C;2C[XET0 '1HO9"(Y,%"OT M&.3Y2CQ0 M!2 \[?[10=?WQB52I+^8, E^QSGH;FK:W>NFZH%HIDH9@>&QG3;2#[:O MVQ*44X@P!9%4*5AU@Q_U-X8R+!:6[.Z1AWUT)68O%[5)H#-,V&D5YV74AQ$O M4WY\37[\S90?_[KY\>_/G!P1A^N5!O^/J%+*DY'+^![]?6/SI7Y_R*YN))T8 M1\]@F0/=MXWX6=W"W[A"'X\ TZ;3YV_W_X)TDVYM/TK='#\1XR-A\8S MM030T(2TK71FRC')#7 !1E.FIF4Q7B5;@A_<,^WAX0_%PZ-GD"N'23X*9TAV MC>BNR#UX.(FI8ZE^YLR29$D<^V!J#34J\;$CG%KKQ0=ZJ-L_P2'Q@18\B/F9 M0]'Z)9(AC/U(D.>?(1JF2[=;!%A#EXZX?,W!DWC4J<2CMG_2+D'6VBL51MJ^ M_1V:;8EV_:XI+)RC07"T-<I$%$K84_GX)D8>;3@4 MN:JI7QHX9'(P M-I;D=JKRC!!!V&6F(Y/#:DB/55C04TN]N'-:7,,7$U11ACP7V[$).ROE'S/G8WPT*,J041WC138JM#A.I>S1ZXE MTN$L[G54 _[65B9#3,A\&$UX.6!D;A="U<19/CJ@Q#%.E'7X5@UW@[H\+X3K M\;@5:5!C!Z*28K$8Q@51:,F8T-8PIDH<;K$M\[MG6PII/UJ$QFSZ!#*[J/NM M$,O188IU2XG0X#I"VBPX3(=O0FBL1O/+"'ADSN89 TR^D.H!,""H%:R@"6#3 M=(+[9'$*Z:OFG]08_R]Z7P8OD%B$^>&V=$$&E*"GN$F_*1#QSSZX/5QMD MA*DGR5TWN-W4AS/YLRCO$T-;# K*B5AR/^;DWKPG-F^:T]B;-;2!:&6J M?>X,31BJ+D7H-Y@H4T3I!3=MHQFV7W<5LH\1A?^?85^6>,XO7,7CF14M&0E2 MK^:\,ZMT')C:YW4JUJ:VQ[M,#1I:WS_'Q9]5NVJ2L01&0$MXI3_8M!VK!JY5 MH2IDX*MK.&ET:W!^7(Q=J 5VN%A000QXKG%5Q;K^A\B7EH;\29XC)34SYMRF MIK[C/K.935TOJ2 M[3P0>\L,QHC$5N#)W, =QW_/0;!)*1),\?X)5F!#7<%R$?AD 1+)H5)_DO:O M%,>L>\CZ2N^D;!Y+FXF(11&9+9>P_?";7,!L75?,>G1P0M\B%75;83\KDN5: MV;QX]>->L:\E_Z>#RP/G]E&$;7S&)@QZJ\;Y@)7)Y@2>:R'(Q!9ANH*4SXI M/UE+2QDU_@I<-2ZT(89,E[J\8Q[B6/I$(4VN?,+:G5UUT& M'.W!/4Q!>!5&0.$^[#OE#P:5N [6,R"R?HXQ.@CR]_F*"/ M$S70AJ$/I>6#97>1BSX 929S'DN"2;B@:L+*CGNP'+#2OU:!#= HS>3OB"3= MUK-VNE"2&ME8RDW6_6Z1R?:G1-%*O(P7F"*\H*#*]L]R39,@H?IX $^P)@0_ M\Q*DUL3TBZ\D!&_;_]799V3M>O7#HS*F TUPU[2P/=BJW9D 3.L%Q\U."@Y= M%4Z2XT;EV&YR^V=(0N/#>KF0+;S;[\01&0EOI %!Y2FHZ$$E)3AKV9!,"H]< M_)5!(I]P[@Y3"75OAOO%P4\&.26IDADM>-"@2*(=S-^?D]NN@[)H'!PMT#4F M@56W[I'1UW=MQ&-M(61/-_"GP(9X>4&5%H0:":D7 M,%*2@(&:8< E'5P?S+#IN(I3Z>O1[!,AV6@N MMP3+>.S8+%@FA3?@6;O2LZKW]2K4V,R&YF_/7%HJ#@>2P19O@(CH/8B=L:S/ MX=SLRW%:M!4[.'BL%K!%#*=PTGMNCXVYHJ@I*D+DN?)PA!6:F',%QN>""*SX M8PSAB'P+##H.V.B8LP0 31 H&*VE9C'M'E-44=@, -<6?^J,DP='[#AW-V5. M;63 X\25Y.M"<6^)TEFH< MZ\!RREBH,"4A)>GE1*?AO"0*-"P7TCBIT(EKPQ1'CJB] ?M'%-(^=>H(JZBG M:O)[=PMVI%SP%TZ&;?\L.%[@B"DD0 F*73VEH]$5C#+A@!QJ+1"3U)#4RS$2 MTH+Z;6;Q'!0R-UBSJ7/A.D]Y\Z2I&K=ZENF7_2NC2-59_!N& ^3N9!F M;:O;[#;.M&XSVCS8E1FQX>HK<<)ACBPVX0?/8 MSA#ZH-*,B6V(4[*V.AW'%K)E<:\UCWX.C6&R27 %3?*&OH)_ G,!!]R21J74 M:*=!5[B&_JIUN>_\!&/MH[73;LH1C45X%LX)J\7P'['.Z87FX8N9_G)MB7L7WKE+59U4V=PD M(3N/$"NM+/ Z@65WKX?@+S1%-!P%;I=?0XO6HI#ZN:AZ4'!XS!GIU"%4]LH" MBM0>X5+L];@8&CC%8#HCKZ>*@5TNSNZHINV?6Y<6-;C.777;QSN^Z=45Y>6J MED>2D85WXO"'5P<)BJ]MCV 3#]E6%56 M4%9J HL\!2QR.(%%OC%/UHY+)2V6.DWP$)PJ:%0!G#=MQ0($[,"F:@5MY@"Y M0_5Q7!:+#%<2ZQC.;/]H Q31?45Z*.C%B;+$?@(Y-:%IG03P0M2V(\I0J-KF M#DK$M=;B3]$7RGQ=+<6;]6+JNSLX^N3L'>U'O_71O'0M!W8Q-+"037.WCZ&$ M@/O;B,RLD/:5"LS*F/OYVXSBYYU9#\?[PN>ZUGT)B2DZ[HP>[QHI].@[OO["X=]<"?=XT2;;ZX3E:!(L,QX1 M&TT$,D)^Q3!UBX(TEYB_BDOLT8"9;UW8LT>AUMK:)Z'17^XZQN, MC>XP??E1$:G=/A[Z=+QC.S'ZI9*4OBSG%T3N#E\>'ORT,ZEAN#XV3+%>VMK M@220; 3#J);RKE!5?9.M\/>],0&^!-NAF[];HV,[1OD5E_^FO%.WJMJ.>3VT M^ICRB^M.J.YA^P:Q;_TFCB%$$NNA[_D6Q9^_WJ?H.A[&Y80[&M2AH$9^> R=V(! LX%^<_\^LH*53:VZ;JW M_&.%NBX;##OPBIOV57X'YI(#NN;/>V ^J<,V9[R^RX>M*<]V93*W"FBV-,U()OMGYK/Q?Y HQVF '1PTZ#? ML#0Y:;$DT919.[63)@MGD.-AVT?,N#V<+0U;^J 7Y25U]K'^&U)N51<>_EL M%6?@V%4R"?3G9LB?LE)D*).^ U?SMJ28W50ZN5MLLI>"N-O^:3P:ZXC5A]9) MK%2>@<[U$8X",W1[IE/SRU65A5\U8$BA59DQV!$5O* =,9E,H(64RQM-B$2W M1+; /S&IG*)FB_0+B%[Z,!$H+A*%-TVS8XDD,GC)GE"F\"1PBQ,>MODR#W5* M@3\E!?Y\2H%/? D;+;T&)0]B:;N7ENNH)05<.Z9Y'1W.HA<'/^+_O,+_>0VV M8K27Q\C/=X?MZ>'R,(BRR-%*?WGP(MKC*U_JSUX?')JZJ]?X][K+@__ZX$?Z M)KSIS0Q-D4/ZWY?POX?ROS_2_\(H#I_#_X/'^!XC,[71/X_+)3:;5]AMF"MD MYNJ^%#8WE.WPJD-\*.%!#U]YQ,K&''IU\!*_]Q/\O]?P_]Z0 'W^P_?8ZGVH MY>\K:?E[4O??WXXN+H[.K\Y.+SGX>5R")PZ4%@' 3LD!G:H&#PFET9?AA5 M:U%9P_^TX 0@;6MY1V2):12WX*\P @06>H5KK<(2(X08J(08?(6NG9^KB5CG-?$!BO&17YOV:9=O*)/>3K)M)W*4?PL9,)C2TQ6W!HT_M/@M9,Y3E5+#,S#.' ME]D17]JV,4S7?!]9BK-]+TE6&:B6*9J^VE134_ U([K9K$BR%;%%>T^(;^,L M-[7N"^FGD26N'N!5TZ-Q'H616Q!JR):G:[3-TO$3,](5=0:'#@FEF2E$<=%L MHSFH^1G[DWC9K43+,18V:[\55%U5PATPS(3Z8L7(F1>N: MA9H%H5+7X,54L='2>6S)((3?G#GGB9Z.JF96G)UA\H5?7$5]I'T3O$QB1*1] MK 6-:^[-K*WG."DDN+JVGVX6]5$/HL<0=+^PF4&H,T3PSSVGR/M"7;?PO;*Z MMX<"X=@@J% 7Z8^8EDAX;;UEKCDSU;M(F$^R=J9&NPM2UTMA6_QWS^CI&$\" M:<<:TAUC@5UFE3?8W-L_([9XRCZLKVF6,PLJC$6,R#VU!7S"/F/_Q/*T+27[/_%*>83<$_HG1L\R:6%AE\P2LG('L+2X Q%_3CEC&1 M56/KG0IL,V*MT4:+<<,6TIEB4<4MN)"$>#9?%#/J[0A M&=!?-X O<*L+R&=YGOI7SEV)AZ&\2>2ATJI M*PHZN[PG=HFYH8B9)K9;+ZF#2)(-XR"N\IK M<8X+"7_.BML2QDC$Z248R/?F%(,>$4Z7>C)DNAH8X%MDTIM% M/R/3"C6$ ,US1MV^';PY- MI6T,[TGY71HG(9L?%W%>7I=M'?C_U&(")Y+9(J0K5549G9"R;=",-BU%)NC" M4Z ++R;HPC>NWM]M2VA'FH.!=W.BYG$UHJ#/N6?A!':,8[Y8:\%OPFSGG4O X^WFE,<;+>P#".T M_JY*NAV#$:^-[$%*$'+?A)D& 23Q*DZ8^N7!&V3\]P0>A/%E@Q7 *!?%/JTH9>6U2Z6/?%@2@:D]7"$"M3)LL,Z9(4O?GBE M%>;;MR?'1[Z889F2%8)8ZE >(MQ *B66*T(%+ @"4KG3TJTG!!XR$&RDV6-E M)N<1J+.6JF#L:J!7GG3L[:ZN65Q"CNGU^TKK@\^1KKE/,/YYFQAGH;$L=8N0 M#2*OQE-UJT#>79O\#X>5B <;UD3R1+?*S8S2HDF*NIKY&(R^X"\M [C[C2H0 M2\=Q'\M&G.J[+B"66XN4L\^=#6RB["Y_D;>_;T,#JFW]7Y/FV"W$R%4%#U[% M%4&'+A0VF1E),Z4^,4C$6$@H5&=HZ5!XN8)Q,Z4W1J9E@OAQ45,+<+@AMW'> M(DEB1O0$J49^()MAKJ5BW6/0:1Y$)ZWBL"1RV)GS+$$/'.5BQXP[U+A[H2$C MZ[+'09@"91-29N'\M'!\]<,/5'=[='PTHY0!$8M7"J8NB0UA.I/P^F5;U#>P MV-%1TAQ(@'RZ\CN%X@!C\;1(VN6\HO9"VS\;NNLGOM<4FHM"0H)6HW"OQDB\ M'.@^:N-0SH3A0;-S.R2GFL>/-W#-AP5->P$3JA?L%'!.3]68&4*[C[ MVS]![>8Y990K1#77K)SY3@0)4^96=V^"S^GN,BJ'UZ'ODLTH0F+TL^T)JE$5 M@8!P+&$G%--[?8W%(;Y&$4#(8]I"+E#!10&S/VMR)64P($Z0'PG6QFEO(PK= M;K+O*73&NU=_$:)IG*F)X7+'$35D.TH95KQK)8\/ESCJ9HP#28"IJ+$OM+^% M!_M)Z&'BAX=]U\?E2B4W!0SM^G[[Y^:=:4\OOSR@VY31X5!OKV:^5?L2?&1:-V\#\ M4Q[;_]1M XE-AMYWD3X $Z36#!2.*V=*0?[U7U[^]/?SHTOA2QM;!&-P'K:; M6F@P_FQF$YU]I&_,%5YU8LW0RZ4[!BL7RK)B2CDNT.HI$7D0R,4IQCQW#<>% M(J2TYNY :MR(D0ISA1S>,"YIH87QU55\/[';?#\)A-%&7HXPI]=6E6:VP3 ] MYN8>7=OHY>B'"QT=T;86#\7M%3%@7S*8H*SX\AFF*7Y?-M M&XO;JM1U7)F. ,YW'WJT3049]]I98DSP=(:=F#U^]$-T8=F=9/WX] M:D)B9@:7Z2$NW8B=%W9CB)9)7L44Z/,$%'Y7-[41)TT3X\!SJ7-7#7O3($PS MQ@ICEHTQ4[?+A(-&-2AJZ' Q4M7A)M+EW?MAJQW!BD@%.M$I)N7JGOZQC/]D M?D62QO1/6@M4#2*I*X5$)L+#5L],V-*A6-.:BK MW"H8?= %NJ'";8)]6ZC M6QYDGS/P&.\I#D%*YG8Q6^G.YFB,4N14-9@EH2BFW@+>KLE(%3E[O1MRUD5> M#?<$ 5W^3+.(6O>,;FXO,\'V+XJ?,@>ILP2A*OU<=>8010LW1A"KL8??T*--O4DNR2P^%??II*YV'ED M6E$(:'7#B< ZOQ79&=^66:KIDM*RG4L+:!="E"U7Q._A9%4=QO;G>S=N-PYT MN7MZ6SRP'0N2\$S?H:I$LC?,V9835\LS&-6S^D;EBZ@N%\T=;@/G?_E46)NT MM/8S39*_XSH%>@>XHT\)Y["!<\RZN$#INU"JJZ&HJ*&6YJI:(PT,>*59E\A0 MD.(!J'?QW5BBD&?])'#FC-8/E,G9 M<$B:58I#'"BC'03D().4CIH$D1"?&(HXW-JY&T*Y64=?IRNY0 @TY-!W.APY MQ0=;M4D#A^W"7YVM&O)@_I?*.+3N@C/",25CF3.6M=#_125Q1!0F M#:I6+6CEA(]SACR-_24PL^%*2TO*M6*$A>::6K45*GFZ >"FH)T@/2U!CVGO MJ5)W$N>2.D#XE)#+IKU60FVG\-@S=20B=3%[1T$TL"/(JT$-!=C[]:]Z"AP9ZL+]R/#AJNK#!@4#C?_=)N[[:*%#%H(RZ):)+;-H%$@">22U< MJ:\>S9PL#U' MD?7&MBUV]V&A9GM$LHF@;Q4>Z+,F8T3F( H3P&B_#@!4;YA MWZZ=,NE\">'':\3/K+NW>-:1%UBLH*UUU6&D"(4)$_X1/:X$T5 ,V>Z!_&;\ M^Q?ST>_4;L':_[B%!OCC0SPG9Y?'[X[.WI]>;/]$.,]X_GOT\>+#U>G9>71Y M^E^?3L^/3_GGY[G<8PU7T]L/%U:_X+'X=?/WXW2G< MSUET_.'D]+_AL_='_WEZ&9U_B/QF:=&'"]TJ[??HPUN:W'^>8?^T,W@@?/'C MZ3'- __P_N@*!G[T[A)_=75Z_.OYAW0H M^A66X]/YR>D%_>#7(_C;KS#1XZNS?YSAC&!TYU>G[S^^@P?3K_'/,.%?+H[> M1_#I.:[K;V?OWD4_G\);CH]AQF\_O<.GG9S^X_3=AX]#N_&DM3H_A4G#8#_" MA[_+BN'SP_YR=LUP#MZJP1PO/\#0+F;ZK?CML_>T/K/HMXNSJZM36O4/%T?O MX$O\1AC-6U@6_!Q6 3=<=N=M].[HMQE^> EO_W1U2C_%W_QV=GDZHT-S>G3\ MJXP9M^OL[=GQT3N8K+Y9-#SZC3/L&;SS^-VGD[/S7^#QGZ[@:%Q%[\[>G^%. M7'V8T8_G5W]/HO@IA[_"I\>_7S&'UR=7;V#H;P]NSK'^<+Z1D3;BN5H4_\'OY ]R"#B8>>#AU9RJIO#0J0BR-\ MA#ZKX'/#; M"USY3_#+-%Z"[4GU.F69(MF0'1U,&X3&*:TVG7<8U%:IN-[SMQ[9=_'A'[![ M)]L_C;_]N]4WN!&_?,#MY:MB-CARY;T$@R^=4]+1@=RA-GI#]T KCM?1'ASD MT_?G)'CQNNY_CX'B(6GV6J19L$;?XQ(-F?*OQ]2']0SV95E@OR!.QLSO)9NR M58-? W9A%)QF1>/)W&/OE(4JI%O439ECCK5:4@K*I*0Z\7 )PTD?/;^G@@FO MS]9#$.LVP;)/2P=$((TZVDM*0D# LRC\.:X@N$XKRFEIU,@"X1)G3DTO,&8! M9"CU"6E]0UHKU!5QE1&:IFP;Z@HT%,@.\[T,'9O'E%9>E<5$7=M;W^ZFG[G3 M$(6BX1HO;$:W>T>%$:.F= %FO15GK:<%]HN+@_R^7M >!A0B'[*K:9:XK[', M0T(0TS B!WO\B"!+'S2TVH3=10,4IMWVZPH[UTGO]L+-_?K?&ES?X?*%$4_I<9..02%NB\OZ%9?_IKQ3MZK:CGD]M/J8 M%"792,G5).:TM$G @.< *G+F?S#?1[GJ?93LSQ@A)0:OF_,5F)IOS+C80TQ7 M!T:_0V3E\E8Z[WQN6>K$7/K^ GS#_MXV]LC8W-^3P[%5HW\81AMX?#V.WI - M.?EY@Z=#[(:1NGFS[?7S)E3+&E3+JPG5,M&K?(6H M[JMO;J/S_";:-."3TQ M!J=0+2P.+72#82)?8K=SEOE,M(\/@%?O@YX0PW_ZI<<'?PA3%8!!+*>I5% I4MJ,\^1F(<*1_ M<$G QE969T-,6S7:!R-,6;.^ ]]8]Z$">DA'+GP9+4[ _^("J9];XFF M2E/IS-6A<%]5ZH\V%?X,.]*R,B.-YUF><2,DQC.:O ;SBN8*JXV%Q6LR=G>K MP<()[G@]"CD+=NTGK/XDY;YPWW%XN#O8DR"8XYY!FG;+>]SOBR0=5\(3)T[)I#Y%$##=\_YS/TKC^]JU M)'@Q!P19"9(LPY92LM@#QLT+E@D>% MQ$C$;-Q)F/I]43%.+%48AZ]IGR2LC(QQU!)-;[;T@@OW>WB3/F .(#A.UTRK MX.@8&>>:(R@D3'E&1E[G^X9F8B'MYDHYFWS6/&(*.8\$7ZV)L8KZ+UH'>"D7Y=,4-CT*;6ZS)$QL&;B5WEUJ*P-]P6_3EF"&6=K M!,#1]Q)0DJ!M*]WLUOD1UK,[ @#[\L(:!_"G4JONKA!;+9%LQ^X"TWA ML,)CYW&-17,&; !+U+2U:=C=O1=[H07AOY(/(9;S94FV8GXWR5+*81A^]K[N M;XR\79O]A&F+5U6+-H.P%@=+9/;(B&1[7=;OL7J%RZI2Z0. MZ-D)^?@4Y.-/$_+QGXU\'"=V8*@<_XV4XY^<77Y$.IF+T\L/[SX1V+P=W*=/<(E\DVVA RM$,<,T>2Z-W'M>[)(^YE2'(:JCC%R@2T9*M5H8E",9-H(#_QQA5F*DOYI.7/F MJKE#/]5=%5UX0'%0*C;H9]XQ0$J.D5 NI&KY6[K3@\R2,QLS#)3*NF/8"G,( M&0>G_-G"CSD^NZ>Y/J7G!,ZAALG#3+,Y<_WRCJ0X7_#IQY3$/.'Y;-50'X09 MN >%C3D38*X4TODRE$Z.FPXRJ0*--6X&I9M:*<,+2YU,*H4-46J]V3Z#/S^U M^Q@>P5QUV[50^%,C@_%\=/\JT,&Q 2,N>14^""A]JX;\P/%AF!&N=S")0.!6 MJ&%NE7^64/!D#Z4I?A8>8S@U)E\!XE<8DTU<4<2W',]@,'3(623J=YMS)B/# MLCJ=&B8I9+(:;PZ>>ZG9-PZ(5*)L8=]@+2=/B]U\%25M$L;;]*F/[X?''0E,2KFTA9:>+-B=-(&_T MDVJ*?X,@W=I#AX,=W'/%0!\L*(M(:=),.K3838 )_@87%<,X!KK(=I%@* PT MP_Z&1Z#P4;6#F)O-'KK[/B89[M5 M@WT(SX<5#=+2I>EM+20X&S;0F94:SL"R3+-%!H<8#1MFVH?CO&RIT9@UOV6C MQ:"2YJ(#Q]4>,,F8Z;02.B=[+_;-[[ 5AG2UL<@C?G4N79I,0LJ^^4IC 6/I M?-E(A^"2U)&\G8RVHA32;>S2:5[:UR.83K'>]YEY;$-I/?O3&34P]8PY],>R MU%DC^78>40?3 ELQF!^ TL4+] M3BJS YA_I+PTVASXV+!;X<#S:1HNR@4M%%ZYNJUN,\F1>GV/@A7WGW9>NIN^ MI_N^=/9G/TS#KLH[MKFPGP/JAB+C2DLI?^^KT9M)GQ=LND2_@C^JSW@X:@*J ME3<9O%9A"_H3Z811APM>5GOUOCTL79U2%L&^_X=TG=1_X5?7:)CB&.$@R36G M8*YMBY:4;44'%D/:BAS[/UKPIM,L$85%MZRLF\X@/0T"_Z@Z=Q20@;FW4-"^2FG1]0)++,^OWSLBJPJ2ZH4SX7]E'>HL*$)EO6VK(CJI8Z M*_YH"U9C%RK/U&*K!CULT8; 'M/R1W>N+K$=5'4_\R-*>%T%Y$MMY["\QYX?E-5.R=A6J:.[_05\4F<7'@[M;$I3'5XLO3+A2F@HRQIG: M,P531[1:53;R6[UCCJWSB*,Z,!0"I&N'S>]V7B?E"D0V=>ZE+E.F<2^-F)D2 M=2?XFVQE>M=2K-DQ),G8:- PP@UFQ>AX>'1*'M)IWYW\'Y"HSW^0C-?[L\OC MTW?OCLY//WRZ_.Y69T!TP^J,*-7%A42C<%0ERB,Q"X,#*:G;G%QN1EUAC*,( M;)*Y0EF:K$U:I@ M*?&A2;PRN2#X>;*/[E6.T2,PE+'M >B659Q)0 B1(."GUM0?\AI]+)EO NX9 M^]SX<\Z!I?O#]NF$_UB#_W@]X3^F?FZ;K3W4Y 1EWS0'4Q7\F2\0&:/ ]][5#_(!70BX.?MI,+ M:/W&82JN-.37B >\Q ZZT2^J4+ T&*NHXA4)Y;,B60.D<]?F\.7K ]>4(>,? M5NC'[5\/+Y6XWG#S[^S?!L7 @,'WXE7'V'O56;/#%R\/?MCF97M^^%ID+[%R M;?J_OU&_6+[W3GA]N\SU[_ GYKOS*$2$(3HL&%:SQL;9JS.L+A0PXD+"04I 0@ #+ M:T5Q4NX(C@$GYBE%LM-")QZY&Z]V.S$]VI1(K#DOTTP(!Q0O$X753/C,3Y7V M%O5J+(.@>P1H:7W6NL4.["I5$>/6U&U6MK4N0FS4#)SF,JGA6PP*P701FFYGH'=C"E3NPE'E7J)%4KQ4GQ8XKA)B,A*4+X7>-G M4.52TGTVZE2RGF6A)*2#-T23UNL_TGW@/SN1(KLTB5D:"H9[Z1@G,8QB@I3P M3/+#&*]OFYNR$GX13-(Z;\0_4TWM+$K <^< /U6J,[&!KMK6^&)F5S9$ 3,] M=_K9,7M)< M$:OX7N.2EG#],;5D4-KVFJO/28OA%\IX"K,UU?UOP&J-F4S\GDN(G=6ZUI?B MUA45:G"0AE 5,7*GS]5]J:$@?GZ1)$V9NPG&>=L(.<8RXP@X0N\X<_I+"3=^ M 08&R8*\K$DLI%F-E$VSZ [N,UQ&^$=+$'$B<[#8#,Z*!Y89O5EF) M:>LF]K=_WY+]>""XJBM_8X(=*DV&0:0YVEYN MB^"O YR 95UG#$#_Z-R^SK4NBP[+LIC1#@+)81=)2.ZUFMN>B6"R6O2O)*A2 M%:#<"W 3+;/[6 MG?&DP(T"_W$\"OPM@BBB]_$?:BPTTE'T,YB.04%6J*'EL+K])[CJ\4%=/40> M&"AO3V-[BV@0OT59.(8"2RE3."9ZI Z82>6Q0N_5!=]?XE!XIAXV&H61(KAF M7F+.NM9P&V87L:2-.!1_N/K7]=J!(PK8([!2"\PUU5RZM"P%!67>N $AE6=B M"?C)V\1E3+ER,="0MDC Y;QQ<\56$@K!< L8L X_MK:3YGOVOXG1D0RQJ2C\ M'D,,YU1,^4<1:U+;FK#6UR4(2["'!&3- /G$ QS+;W71R<.F).+J4\84@YV' M7Q8^/K0F:S83-B?"?NSV=K3=><[0?QM<"NR5 *M M=9RS/5+7"N,DAI\3/\SC.Y\:6]Q$"H%65*IE!+W$7 F #/+'*2YS0-.HQ:P5 M6+0YE_CP7#;UKXZ!AH2V&[S?U B[*0"90O;L54CWA#X8-G'^^ /<(IKSO:!G9OB-+M'-^)D MJJ8 T,V;G;(R4(O\<*[ITM2+5'^TJE1C]*?A9L6+O9QGURU'.K..+>\V9A!3 M&E^@AY@Q67%1ZF$81FTO3TP2(I6P@>&%A:\LXU2YY60N](%+8HL%/!8$7&E( M6"HSY'M-J6RD3=TG&PNN+VN7JT8>,&_!\2^D#HO9M#!ZT<8UU]A)/IH3O"8Z MTK-E5%N@"Q4J7>2OZ^1,X53%B60B@V9NZ$D.63GT9CQRZ!>N1H$#^BZ^VZH! M/S*$,%>.;A^@7@!Q8ASJRX8\]X5#1J+=?*XNU-SZ^L;68J?C'Q7I5^*N_!+6::UBQ"!RT_5C51/ MP%0<92CEILOHU-G],)[;>!RX=&.ZD\II\T1:XMCA H'#31D2K:^=%N1".Z=U ME,-ZSMA()KSP6)F<>)Z#>O"7+H=+G&N+@7,$W-BJ4JZ%T:GS\^JR[??D+I/4 M($, O'*6!C@^D!AM+M>U?^V[:1A?\5HET4-B!K?3O>8A=P'*=I MFPMVNL7^5(S(DEO9PRV4H-@H2J4G"JC5U% MZA_?9 ?MS6'8'BR]*3;7HP$<\4+XW"4+2T!%\!>8(>,28&C):-ZGDN-*2:7P M_8F;N+<8V2@)U:DY4V+KF'L:^-:X8WA/DA65Y(CY4X$/S-M8C>W!:#*XMA43 M7G *#7T*G9VHS]*O=$33SX"@0T9,;&_G9"CMN5P7A%"1-#U< M@0VR<\-YI@&"GPH2=9.715!3+#Q)T_ASE^EJHNCYF4/OO!'$0^G?&KFR>6\# M]UJ[-S@TM,@^,@X\FAILE1C/6Y8IF^;3@LU9:Z496FF%RK]/4<2 PP6[:E7R M^#HB,'2#C$BIC)7(M7:J2#$-#K MPN6O$KHK@[3257=:.6@.O.MV):(;GNXQ&*QX4$F2)D5L9NMC M[1WK%:J^^3F(HBQ5CV]-T"6 9 L; YO'BPR+^JH$1ADCN9CWT)-]G:.R,\>9 M-[W@L65UB3!Z[O_!$[W06)E&EP1^%J#N>58EP6C2+USRS UXI.98,P<:'F X MAK6G_:E+%6K;BEBUD*?PA^_WC^")3='IJ&5-._;8]DQ[P1?:?@P"*?RF,M\H MZ4"0"CC2B,1D&[?.,:40&RD! ]2E,K! S!F+6.1C0=W3,<'DL1&#O48"2JX\ M]]?.K)A;Q)Y%ED_T,,UMJ)W(9,$4I Q'":DI7X9A (!3MHVM9L6F#,]S--Q- M &=$2IR.,>06;!4>YJPR3(A$*PS_E>A^#TNLQLPPP[%^#X#21/TW/,.)8]+H'P1#Q M;:R9=:+&/1(U#K;7B1KK1(W%YEZ(0KBR5L($0LA'@H>(,B%'(0N[-VU7W_+ M]<7!K935S96'W>S!*:+O9'%/(\.D%@;?6H0K&\--LH#L'%7>) F3,,AAR58A M/7;VF<),U2V2LN-A7#S[=$= ;^-RLV5^89JNF6,T=3 [-@.U!"M.U,XMP&A; MCP'M76UZ4^5^$@#Q,FB/#+HQ%=!'Z<8_VCLB*3+8=[9SGHH@W3RL,ZY%,]&N MW_H7_9Y0SW5H-73W.K07?)QZ%N!LS85&=.X9J(V,8[8Q&YGQ@A>984F90SSB M5V*M6<:<-QC5&BATD 6'TIB5J0MLR<\1FUZ/D#%'["XV?13B4*JL4Q!8K;W'0^\[C_ H]0V'8[D1P'6^:/_%/V!M^@Z-%B MF?5G:42VV]Q[<#_!WKM[:UR/DSRA]CLN_WG7F-M_3Q:&;Y=M9!>GXRA4DF04 MWD)BR(BV>,!T@()JJ-+2+/[L$(H'J[7=WY^'Y#,?;BE$?=D[[L(*>K'?;RCX M;VSXW04)9CGB%WN9S+PJ2FJ4LWP5]K=.&E2"(=$9Z0P;E&\J&INJD=#U&5][ M#3E_B3 ,!U+[T4X%B8N1EN0(>BEKHI"JI"US[R)'661N[;1$9K=/M$R(:S-O M>3STL$40R!@=\4T-K[XW1N(*3^.,,_!R:B#\]L$SHK^C7XJK/'J?0A^J^5/: M]? [E5S559W ++\'@[E4?ZK\&<[KIW22:9Z=CY8+YX?O]Q#W[NS#_&GUGGT# MCD!TCN;Y*T:XJ*)7KWY[AO.)(I"GY)TJ02#O'/>BW>W=[?DS.>NI.\G2A>3L M.M Y.]"YLR1VUR,$.G%=TN3?WZ5J^VC_Q8MD]VCW(-[?.]@;[";'.[OQ]F#G M0._K_8,_]K]; @;SI=@VBZ(MOCB7L"[RSXL7O(/<@7H$SRZFMA]XE:R5Y;R6YNU:2!W\:?CVZC&?QW0Z#$P:EHG WY,2M,-E&D>G6",X$!(R*E5Z"SH" MT2)"T@(#KH9UD\DU@:.]+ZYU1OG:+EF;BMHH*=;D<;]**Z(2N24?RCI_W03N M*[$"=RC9X?"WX[.DJCX$&,':'4O%S6PMX[*88.FGSF' 6A->PACD+%8V6LA' M+)E%"#$N&DR@J:P8&\;!G%:*P,\09X-7*9M6107C0MJ]@MZ;F*6B-@89\\H@ MT2AA9\1I2,!X2Y'WX?U+S)9P;>>OY+E.;G"V3E/D!3D]B38XJ7EWCY.:-Z.M M+4Y[#FHCL,HEXWK2SE5&1#P#,B=+RMAUO*"#E"J&U5C7<-(08B[/84YB(:\S M-!_$7%39$Q^W3GPF)UX%)W[)RX2.'XAI\/$WATC.CU>J'*F8U@H.W:FL[5LA MTMS@GVWV[)$N3>ALYHG&PQQ- MD;,VN+8=U$XF#'M1T"&]I,(?N M:>6.\6_"A67JA@UCCJL3-FJ4*H$9LVBB_=5@%D4\@O!W$9SL:P7N&!52JQ0& MQ*7<.K\B9:J'B+P33YE, &N.,UH76#*D0T/(&2PX(_E2380/D8OU$3>1:KGK M,?*G1ORU9_^(8Y>WSC_TDHZ&Z/E),>;XRA'&5*#? MR[UWYJKI?H!-"V)]D/+)K0A*O2PPA=S3SV1QX0IZ)QSI>L>.>1,Q0\/]%R,# M'ECDYM,IX;"4S.FIHC&M*@K<\A@UWYB>%L$4YD82>V?)M>@-9%#%9JD M0P+;F*2$,=&A2^G &$4Z!B4J,!CP%*+O1E=%EL 1Q3-&E)N(-O?#]WO[/Z*$ MQC:]:LU>TZIWI8>$QGOVH6\ 55A46$0<_1F9V(2H1L: 4VB,>CGAW&7;2Y(@ MW2>>M08#TH_ ^#"$I%[;Q!N'- V&V;@Q/3UDS819$JF&^'Z)!MMAS!X-=:6 M4PB[] ;;8U?Q96BO.F:Z.D\G?9ZYG_Y4H/C>U&D%^[(U:1CY-!; M,!"GK"%T_O=TI!OZ4"29@<=H*+\TGQ2A@/-TI[5E9_0@%(SHGW0TPE^ ^M%E M#.-+_[:=#BQ>&#;RM57B$)&4-L3;81S#3=#MZX!H2HF0K@G<6/=L]\Q0$;F. MOP1KNZ9HW1"%MVG&>X;FH4+J(^),YK)0SPOO1Q0=Z]92*8.,MJ[]8'8/0.MM;A&+>OJ"AS^ AE4TKC[#-U[LJK]'! M(\:B830.;@TJHY#@D2L]HH_PW4F-2._*&'NBJK'UFN,&HP+4(@6)DU1=YD6% M_>D3MPANQ*:7;)S0E@/>$>"1B O'(-+MX!AG71,&P,>D*RH[S":&;TK\JE5E MF?(,3+#'FD%&-_QR4I3D?@T5>U*&N"$PS<&E-7WQN"B/9VA$BIR;X3VF/E8YXGL/ M\0#AVQK]/\ES_/6Y9A[//**4[IWMK5\)PCYQ-,2><&3J@A@L+,H@&QE.<$/J M=G%V:CG=L$D]*&OT.W9?<(J2+S]=]"16C'PNC9S#MC>;S4?\;X]!HC0P#P7( M$L3NA;%4K?Z?G;J(IB,](-).E5+09\K(]TR8Y.@J8-7K<4(AMEN.=,]C6!!Z M*(:K5S?W<$:?F&'U\=/?L*$F.&?)1DIKM7@R"URF'_Z.!+ MI>ICYDWO[WY)"=S,@:Z19KXUTLQ3_VZM".^N"/\Y /,0_KF:C++__!]02P$" M% ,4 " !3AJA0.#V_N^-B @"G#AX $0 @ $ 8V1X M&UL4$L! A0#% @ 4X:H4 ^(39PU7P OT# !4 M ( !YY8" &-D>',M,C R,# S,S%?9&5F+GAM;%!+ 0(4 Q0 ( %.& MJ% <"936%^ +-<"0 5 " 4_V @!C9'AS+3(P,C P,S,Q M7VQA8BYX;6Q02P$"% ,4 " !3AJA0X7\4:%*, \/08 %0 M @ &9U@, 8V1X&UL4$L! A0#% @ 4X:H M4 8.%,]8"@ $CL !D ( !'F,$ &-D>',Q,'%Q,3(P97AH M:6)I=#$P,BYH=&U02P$"% ,4 " !3AJA0KT18(@T( !D*@ %P M @ &M;00 8V1X XML 65 R20.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue Recognition (Tables)
3 Months Ended
Mar. 31, 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 March 31, 2020Three months ended March 31, 2019
Performance EnzymesNovel BiotherapeuticsTotalPerformance EnzymesNovel BiotherapeuticsTotal
Major products and service:
       Product Revenue$5,100  $—  $5,100  $7,988  $—  $7,988  
Research and development revenue5,774  3,796  9,570  2,099  5,496  7,595  
Total revenues$10,874  $3,796  $14,670  $10,087  $5,496  $15,583  
Primary geographical markets:
Americas
$2,999  $2,226  $5,225  $2,838  $—  $2,838  
EMEA
4,401  1,570  5,971  2,230  5,496  7,726  
APAC
3,474  —  3,474  5,019  —  5,019  
Total revenues$10,874  $3,796  $14,670  $10,087  $5,496  $15,583  
Contract with customer
The following table presents balances of contract assets, unbilled receivables, contract costs, and contract liabilities (in thousands):
March 31, 2020December 31, 2019
Contract Assets$619  $1,027  
Unbilled receivables$13,949  $10,099  
Contract Costs$300  $—  
Contract Liabilities: Deferred Revenue$8,536  $2,044  
During the three months ended March 31, 2020 and 2019, we recognized the following revenues (in thousands):
Three months ended March 31,
20202019
Amounts included in contract liabilities at the beginning of the period:
     Performance obligations satisfied$57  $2,385  
Changes in the period:
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods(643) 136  
Performance obligations satisfied from new activities in the period - contract revenue15,256  13,062  
Total revenues$14,670  $15,583  
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 March 31, 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$66  $364  $1,623  $2,053  
Research and development revenue5,776  707  —  6,483  
Total revenues$5,842  $1,071  $1,623  $8,536  

XML 66 R48.htm IDEA: XBRL DOCUMENT v3.20.1
Commitments and Contingencies - Textual (Details)
1 Months Ended 3 Months Ended 12 Months Ended
Jun. 30, 2017
USD ($)
Apr. 30, 2017
USD ($)
Feb. 28, 2017
USD ($)
Mar. 31, 2020
USD ($)
ft²
security
Dec. 31, 2019
USD ($)
Apr. 30, 2020
ft²
Jan. 31, 2020
ft²
Commitments and Contingencies [Line Items]              
Lease area space occupancy | 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    
Term of contract   3 years 3 years        
Capital lease obligations incurred   $ 300,000 $ 400,000        
Operating lease, liability       26,134,000      
Finance lease, liability       9,000      
Revenue impacted by government issued shelter-in-place       600,000      
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 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 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]              
Lease area space occupancy | ft²       28,200      
400 Penoscot [Member]              
Commitments and Contingencies [Line Items]              
Lease area space occupancy | ft²       37,900      
501 Chesapeake [Member]              
Commitments and Contingencies [Line Items]              
Lease area space occupancy | ft²       11,200      
101 Saginaw [Member]              
Commitments and Contingencies [Line Items]              
Lease area space occupancy | ft²             29,900
Area of subleased property | ft²             26,500
101 Saginaw [Member] | Subsequent Event [Member]              
Commitments and Contingencies [Line Items]              
Area of subleased property | ft²           3,400  
XML 67 R40.htm IDEA: XBRL DOCUMENT v3.20.1
Fair Value Measurements - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (Details) - Money Market Funds [Member] - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Summary of financial instruments measured at fair value on a recurring basis    
Money market funds $ 68,460 $ 71,248
Fair Value, Inputs, Level 1 [Member]    
Summary of financial instruments measured at fair value on a recurring basis    
Money market funds $ 68,460 $ 71,248
XML 68 FilingSummary.xml IDEA: XBRL DOCUMENT 3.20.1 html 246 332 1 false 91 0 false 9 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 Cash Flows Sheet http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlows Condensed Consolidated Statements of Cash Flows Statements 6 false false R7.htm 2101101 - Disclosure - Description of Business Sheet http://www.codexis.com/role/DescriptionofBusiness Description of Business Notes 7 false false R8.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 8 false false R9.htm 2106103 - Disclosure - Revenue Recognition Sheet http://www.codexis.com/role/RevenueRecognition Revenue Recognition Notes 9 false false R10.htm 2113104 - Disclosure - Net loss per Share Sheet http://www.codexis.com/role/NetlossperShare Net loss per Share Notes 10 false false R11.htm 2118106 - Disclosure - Cash Equivalents Sheet http://www.codexis.com/role/CashEquivalents Cash Equivalents Notes 11 false false R12.htm 2122107 - Disclosure - Fair Value Measurements Sheet http://www.codexis.com/role/FairValueMeasurements Fair Value Measurements Notes 12 false false R13.htm 2125108 - Disclosure - Balance Sheets Details Sheet http://www.codexis.com/role/BalanceSheetsDetails Balance Sheets Details Notes 13 false false R14.htm 2135110 - Disclosure - Capital Stock Sheet http://www.codexis.com/role/CapitalStock Capital Stock Notes 14 false false R15.htm 2145112 - Disclosure - Related Party Transactions Sheet http://www.codexis.com/role/RelatedPartyTransactions Related Party Transactions Notes 15 false false R16.htm 2147113 - Disclosure - Segment, Geographical and Other Revenue Information Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformation Segment, Geographical and Other Revenue Information Notes 16 false false R17.htm 2155114 - Disclosure - Allowance for Credit Losses Sheet http://www.codexis.com/role/AllowanceforCreditLosses Allowance for Credit Losses Notes 17 false false R18.htm 2159115 - Disclosure - Subsequent Events Sheet http://www.codexis.com/role/SubsequentEvents Subsequent Events Notes 18 false false R19.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 19 false false R20.htm 2307301 - Disclosure - Revenue Recognition (Tables) Sheet http://www.codexis.com/role/RevenueRecognitionTables Revenue Recognition (Tables) Tables http://www.codexis.com/role/RevenueRecognition 20 false false R21.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 21 false false R22.htm 2319303 - Disclosure - Cash Equivalents (Tables) Sheet http://www.codexis.com/role/CashEquivalentsTables Cash Equivalents (Tables) Tables http://www.codexis.com/role/CashEquivalents 22 false false R23.htm 2323304 - Disclosure - Fair Value Measurements (Tables) Sheet http://www.codexis.com/role/FairValueMeasurementsTables Fair Value Measurements (Tables) Tables http://www.codexis.com/role/FairValueMeasurements 23 false false R24.htm 2326305 - Disclosure - Balance Sheets Details (Tables) Sheet http://www.codexis.com/role/BalanceSheetsDetailsTables Balance Sheets Details (Tables) Tables http://www.codexis.com/role/BalanceSheetsDetails 24 false false R25.htm 2332306 - Disclosure - Stock-based Compensation (Tables) Sheet http://www.codexis.com/role/StockbasedCompensationTables Stock-based Compensation (Tables) Tables 25 false false R26.htm 2338307 - Disclosure - Commitments and Contingencies (Tables) Sheet http://www.codexis.com/role/CommitmentsandContingenciesTables Commitments and Contingencies (Tables) Tables 26 false false R27.htm 2348308 - 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 27 false false R28.htm 2356309 - 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 28 false false R29.htm 2402401 - Disclosure - Description of Business - Textual (Details) Sheet http://www.codexis.com/role/DescriptionofBusinessTextualDetails Description of Business - Textual (Details) Details 29 false false R30.htm 2405402 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies - Textual (Details) Sheet http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesTextualDetails Basis of Presentation and Summary of Significant Accounting Policies - Textual (Details) Details http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies 30 false false R31.htm 2408403 - Disclosure - Revenue Recognition - Disaggregation of Revenue (Details) Sheet http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails Revenue Recognition - Disaggregation of Revenue (Details) Details 31 false false R32.htm 2409404 - Disclosure - Revenue Recognition - Contracts with Customer (Details) Sheet http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails Revenue Recognition - Contracts with Customer (Details) Details 32 false false R33.htm 2410405 - Disclosure - Revenue Recognition - Additional Information (Details) Sheet http://www.codexis.com/role/RevenueRecognitionAdditionalInformationDetails Revenue Recognition - Additional Information (Details) Details 33 false false R34.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 34 false false R35.htm 2412407 - Disclosure - Revenue Recognition - Performance Obligation (Details) Sheet http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails Revenue Recognition - Performance Obligation (Details) Details 35 false false R36.htm 2415408 - Disclosure - Net loss per Share - Anti-Dilutive Securities (Details) Sheet http://www.codexis.com/role/NetlossperShareAntiDilutiveSecuritiesDetails Net loss per Share - Anti-Dilutive Securities (Details) Details 36 false false R37.htm 2417409 - Disclosure - Collaborative Arrangements - Textual (Details) Sheet http://www.codexis.com/role/CollaborativeArrangementsTextualDetails Collaborative Arrangements - Textual (Details) Details 37 false false R38.htm 2420410 - Disclosure - Cash Equivalents - Components of Cash Equivalents (Details) Sheet http://www.codexis.com/role/CashEquivalentsComponentsofCashEquivalentsDetails Cash Equivalents - Components of Cash Equivalents (Details) Details 38 false false R39.htm 2421411 - Disclosure - Cash Equivalents - Additional Information (Details) Sheet http://www.codexis.com/role/CashEquivalentsAdditionalInformationDetails Cash Equivalents - Additional Information (Details) Details 39 false false R40.htm 2424412 - Disclosure - Fair Value Measurements - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (Details) Sheet http://www.codexis.com/role/FairValueMeasurementsScheduleofFinancialInstrumentsMeasuredatFairValueonRecurringBasisDetails Fair Value Measurements - Schedule of Financial Instruments Measured at Fair Value on Recurring Basis (Details) Details 40 false false R41.htm 2427413 - Disclosure - Balance Sheets Details - Inventories (Details) Sheet http://www.codexis.com/role/BalanceSheetsDetailsInventoriesDetails Balance Sheets Details - Inventories (Details) Details 41 false false R42.htm 2428414 - 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 42 false false R43.htm 2429415 - Disclosure - Balance Sheets Details - Goodwill (Details) Sheet http://www.codexis.com/role/BalanceSheetsDetailsGoodwillDetails Balance Sheets Details - Goodwill (Details) Details 43 false false R44.htm 2430416 - Disclosure - Balance Sheets Details - Accrued Liabilities (Details) Sheet http://www.codexis.com/role/BalanceSheetsDetailsAccruedLiabilitiesDetails Balance Sheets Details - Accrued Liabilities (Details) Details 44 false false R45.htm 2433417 - Disclosure - Stock-based Compensation - Textual (Details) Sheet http://www.codexis.com/role/StockbasedCompensationTextualDetails Stock-based Compensation - Textual (Details) Details 45 false false R46.htm 2434418 - 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 46 false false R47.htm 2436419 - Disclosure - Capital Stock - Textual (Details) Sheet http://www.codexis.com/role/CapitalStockTextualDetails Capital Stock - Textual (Details) Details 47 false false R48.htm 2439420 - Disclosure - Commitments and Contingencies - Textual (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesTextualDetails Commitments and Contingencies - Textual (Details) Details 48 false false R49.htm 2440421 - Disclosure - Commitments and Contingencies - Lease Cost (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails Commitments and Contingencies - Lease Cost (Details) Details 49 false false R50.htm 2441422 - Disclosure - Commitments and Contingencies - Other Lease Information (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails Commitments and Contingencies - Other Lease Information (Details) Details 50 false false R51.htm 2442423 - 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 51 false false R52.htm 2443424 - 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 52 false false R53.htm 2444425 - Disclosure - Commitments and Contingencies - Other Commitments (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesOtherCommitmentsDetails Commitments and Contingencies - Other Commitments (Details) Details 53 false false R54.htm 2446426 - Disclosure - Related Party Transactions - Textual (Details) Sheet http://www.codexis.com/role/RelatedPartyTransactionsTextualDetails Related Party Transactions - Textual (Details) Details 54 false false R55.htm 2449427 - Disclosure - Segment, Geographical and Other Revenue Information - Additional Information (Details) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationAdditionalInformationDetails Segment, Geographical and Other Revenue Information - Additional Information (Details) Details 55 false false R56.htm 2450428 - 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 56 false false R57.htm 2451429 - 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 57 false false R58.htm 2452430 - 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 58 false false R59.htm 2453431 - 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 59 false false R60.htm 2454432 - 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 60 false false R61.htm 2457433 - 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 61 false false R62.htm 2458434 - 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 62 false false R63.htm 2460435 - Disclosure - Subsequent Events - Textual (Details) Sheet http://www.codexis.com/role/SubsequentEventsTextualDetails Subsequent Events - Textual (Details) Details 63 false false R9999.htm Uncategorized Items - cdxs-20200331.htm Sheet http://xbrl.sec.gov/role/uncategorizedFacts Uncategorized Items - cdxs-20200331.htm Cover 64 false false All Reports Book All Reports cdxs-20200331.htm cdxs-20200331.xsd cdxs-20200331_cal.xml cdxs-20200331_def.xml cdxs-20200331_lab.xml cdxs-20200331_pre.xml cdxs10qq120exhibit102.htm cdxs20200331ex311sp.htm cdxs20200331ex312sp.htm cdxs20200331ex321sp.htm exhibit101q120.htm http://xbrl.sec.gov/country/2017-01-31 http://xbrl.sec.gov/dei/2019-01-31 http://fasb.org/srt/2019-01-31 http://fasb.org/us-gaap/2019-01-31 true true XML 69 R44.htm IDEA: XBRL DOCUMENT v3.20.1
Balance Sheets Details - Accrued Liabilities (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Balance Sheets Details [Abstract]    
Accrued purchases $ 5,654 $ 4,386
Accrued professional and outside service fees 3,111 1,802
Other 158 352
Total $ 8,923 $ 6,540
XML 70 R63.htm IDEA: XBRL DOCUMENT v3.20.1
Subsequent Events - Textual (Details) - Novartis [Member] - Subsequent Event [Member]
$ in Millions
1 Months Ended
Apr. 30, 2020
USD ($)
Subsequent Event [Line Items]  
Contracts receivable $ 4.0
Payment terms 60 days
XML 71 R3.htm IDEA: XBRL DOCUMENT v3.20.1
Condensed Consolidated Balance Sheets (Parenthetical) - $ / shares
Mar. 31, 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,017,000 58,877,000
Common stock, shares outstanding (shares) 59,017,000 58,877,000
XML 72 R7.htm IDEA: XBRL DOCUMENT v3.20.1
Description of Business
3 Months Ended
Mar. 31, 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 our 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 Codexis’ 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, Codexis’ EvoT4™ DNA ligase.
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 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, Codexis 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. The parties will begin collaborative work on three initial programs for the treatment of Fabry disease, Pompe disease, and an unnamed blood factor deficiency. Codexis 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 disrupted as a result of local shelter-in-place orders and any disruptions in operations of our customers with whom we collaborate. For the three months ended March 31, 2020, the COVID-19 pandemic resulted in lower research and development revenues of approximately $0.6 million as completion of those services were deferred to the future periods. We are unable to fully determine and quantify the extent to which delays in our R&D projects will be affected by the COVID-19 pandemic. 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.
In the U.S., the impact of COVID-19, including governmental orders governing the operation of non-essential businesses during the pandemic, has caused the temporary closure of our Redwood City, California facilities and has disrupted our research and development operations. Our Redwood City employees have been working from home since mid-March 2020, while ensuring essential staffing levels in our operations remain in place.
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 73 R25.htm IDEA: XBRL DOCUMENT v3.20.1
Stock-based Compensation (Tables)
3 Months Ended
Mar. 31, 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 March 31,
 20202019
Research and development $424  $388  
Selling, general and administrative1,745  1,675  
   Total$2,169  $2,063  
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 months ended March 31, 2020 and 2019 (in thousands):
 Three Months Ended March 31,
 20202019
Stock options$541  $554  
RSUs and RSAs599  461  
PSUs331  391  
PBOs698  657  
   Total$2,169  $2,063  
XML 74 R21.htm IDEA: XBRL DOCUMENT v3.20.1
Net loss per Share (Tables)
3 Months Ended
Mar. 31, 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 March 31,
 20202019
Shares issuable under the Equity Incentive Plan5,071  6,750  
XML 75 R29.htm IDEA: XBRL DOCUMENT v3.20.1
Description of Business - Textual (Details) - USD ($)
$ in Thousands
1 Months Ended
Dec. 31, 2018
Mar. 31, 2020
Dec. 31, 2019
Collaborative Arrangement and Arrangement Other than Collaborative [Line Items]      
Contract with customer, liability   $ 8,536 $ 2,044
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]      
Contract with customer, liability   $ 6,400  
XML 76 R17.htm IDEA: XBRL DOCUMENT v3.20.1
Allowance for Credit Losses
3 Months Ended
Mar. 31, 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 months ended March 31, 2020
Beginning Balance January 1, 2020$34  
Write-offs charged against the allowance—  
Recoveries of amounts previously written off—  
Ending Balance March 31, 2020$34  

The following tables below summarizes accounts receivable by aging category (in thousands):
March 31, 2020
31-60 Days61-90 Days91 days and overTotal over 31 daysCurrentTotal balance
Accounts receivable$745  $—  $40  $785  $7,599  $8,384  

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 77 R13.htm IDEA: XBRL DOCUMENT v3.20.1
Balance Sheets Details
3 Months Ended
Mar. 31, 2020
Balance Sheets Details [Abstract]  
Balance Sheets Details Balance Sheets Details
Inventories
Inventories consisted of the following (in thousands):
March 31, 2020December 31, 2019
Raw materials$104  $ 
Work-in-process 26  
Finished goods589  338  
    Inventories$701  $371  
Property and Equipment, net
Property and equipment, net consisted of the following (in thousands):
March 31, 2020December 31, 2019
Laboratory equipment$24,323  $23,561  
Leasehold improvements10,804  10,804  
Computer equipment and software3,098  3,016  
Office equipment and furniture1,329  1,461  
Construction in progress467  691  
Property and equipment40,021  39,533  
       Less: accumulated depreciation and amortization(33,374) (33,251) 
     Property and equipment, net$6,647  $6,282  

Goodwill
Goodwill had a carrying value of approximately $3.2 million as of March 31, 2020 and December 31, 2019.
Other Accrued Liabilities
Other accrued liabilities consisted of the following (in thousands):
March 31, 2020December 31, 2019
Accrued purchases $5,654  $4,386  
Accrued professional and outside service fees3,111  1,802  
Other158  352  
     Total$8,923  $6,540  
XML 78 R38.htm IDEA: XBRL DOCUMENT v3.20.1
Cash Equivalents - Components of Cash Equivalents (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
Mar. 31, 2019
Cash Equivalents and Marketable Securities [Line Items]      
Cash and cash equivalents $ 87,327 $ 90,498 $ 47,322
Money Market Funds [Member]      
Cash Equivalents and Marketable Securities [Line Items]      
Cash and cash equivalents 68,460 71,248  
Cash and cash equivalents, fair value $ 68,460 $ 71,248  
XML 79 R30.htm IDEA: XBRL DOCUMENT v3.20.1
Basis of Presentation and Summary of Significant Accounting Policies - Textual (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2020
USD ($)
reportingUnit
Mar. 31, 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 $ 3,241 $ 3,241
Number of reportable segments 2 2  
Novel Biotherapeutics [Member]      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Goodwill, Allocated Percent 24.00% 24.00%  
Goodwill $ 800 $ 800  
Performance Enzymes [Member]      
New Accounting Pronouncements or Change in Accounting Principle [Line Items]      
Goodwill, Allocated Percent 76.00% 76.00%  
Goodwill $ 2,400 $ 2,400  
XML 80 R34.htm IDEA: XBRL DOCUMENT v3.20.1
Revenue Recognition - Revenue Recognized During Period (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Revenue from Contract with Customer [Abstract]    
Performance obligations satisfied $ 57 $ 2,385
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods (643) 136
Performance obligations satisfied from new activities in the period - contract revenue 15,256 13,062
Total revenues $ 14,670 $ 15,583
XML 81 R55.htm IDEA: XBRL DOCUMENT v3.20.1
Segment, Geographical and Other Revenue Information - Additional Information (Details) - 3 months ended Mar. 31, 2020
reportingUnit
segment
Segment Reporting [Abstract]    
Number of operating segments   2
Number of reportable segments 2 2
XML 82 R51.htm IDEA: XBRL DOCUMENT v3.20.1
Commitments and Contingencies - Cash Paid for Lease Obligations (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2020
Mar. 31, 2019
Commitments and Contingencies Disclosure [Abstract]    
Operating cash flows from operating leases $ 354 $ 812
Operating cash flows from finance leases 0 5
Finance Lease, Principal Payments $ 51 $ 59
XML 83 R59.htm IDEA: XBRL DOCUMENT v3.20.1
Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details) - USD ($)
$ in Thousands
Mar. 31, 2020
Dec. 31, 2019
United States [Member]    
Schedule of long-lived assets by geographical area    
Long-Lived Assets $ 6,647 $ 6,282
EXCEL 84 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( %.&J% ?(\\#P !," + 7W)E;',O+G)E;'.MDD^+ MPD ,Q;]*F?L:5\'#8CUYZ6U9_ )Q)OU#.Y,A$[%^>X>];+=44/ 87O+>CT?V M/S2@=AQ2V\54C'X(J32M:OP"2+8ECVG%D4)6:A:/FD=I(*+ML2'8K-<[D*F' M.>RGGD7E2B.5^S3%":4A+,*P).B0\5?UX^8 TBTH_0(:+L A#&^NQT:E8(C M-R."?S]PN -02P,$% @ 4X:H4"?HAPZ" L0 ! !D;V-0&UL38Y-"\(P$$3_2NG=;BGH06) L$?!D_>0;FP@R8;-"OGYIH(? MMWF\81AU8\K(XK%T-8943OTJDH\ Q:X831F:3LTXXFBD(3^ G/,6+V2?$9/ M-(X'P"J8%EQV^3O8:W7..7AKQ%/25V^9"CGIYFHQ*/B76_..7+8\#?NW_+"" MWTG] E!+ P04 " !3AJA01C?W&^\ K @ $0 &1O8U!R;W!S+V-O M&ULS9+!3L,P#(9?!>7>.FW'!%&7"X@32$A, G&+$F^+:-HH,6KW]J1A MZX3@ 3C&_O/YL^16>Z&'@,]A\!C(8KR:7-='H?V&'8B\ (CZ@$[%,B7ZU-P- MP2E*S[ 'K_2'VB/4G*_!(2FC2,$,+/Q"9+(U6NB BH9PPAN]X/UGZ#+,:, . M'?84H2HK8'*>Z(]3U\(%,,,(@XO?!30+,5?_Q.8.L%-RBG9)C>-8CDW.I1TJ M>'MZ?,GK%K:/I'J-Z5>T@HX>-^P\^;6YN]\^,%GSFA?\NN WVVHM5K>B6;W/ MKC_\+L)N,'9G_['Q65"V\.LNY!=02P,$% @ 4X:H4)E&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T M$W-I=MNTF83M3A^%$5B-;'EDD81_OTV23;J;/ 0LZ?O.14?GZ#AY M\^XN8NB&B)3R> +]O6N[!3+UES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4? M,_@5RU2-9:,!$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA M5,+$P&IG/U9KQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M M&N#C\7@XMLO2BW A(5M>5 TR 6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T M1G*=D 4. #?$T4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7K;YH]5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J M-2S%UGB5P/&MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZKR2. MFJW"$2M"/F(9-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$. M$9)>-T(^8LZ+D!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]07 M2N0/)J<_Z3(T!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL! M_]':-\*K^(+ .7\N?<^E[[GT/:'2MSAD M6R4)RU3393>*$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W MF)&Y"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>( M\J(A[J&&F,_#0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R M4E5@,5O& RN0HGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K> M9;'!51W/55ORL+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4X MOT4SMA*7&+SCYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5 MYYN MTB42%(JP# 4A%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+ MA=OB5,V[&KXF8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'YA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> , M?-2K6J5D*Q$_2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H: M,]6+K#F-"F]!U4#E/]O4#6CV#30,9FV-J/D3@H\W/[O#;#"Q([A[8N_ M 5!+ P04 " !3AJA0AP'8)34# Z#P & 'AL+W=O?;)&EW)U7E[8T^ MJ]K>.>BFRHV];(Y)>VY4OG>DJDQXFLZ2*B_J>+-R8P_-9J4OIBQJ]=!$[:6J M\N;OO2KU=1VS^&W@L3B>3#>0;%;G_*A^*//S_-#8JV2LLB\J5;>%KJ-&'=;Q M';O="MX1'.)7H:[MY#SJEO*D]7-W\76_CM-N1JI4.].5R.WA16U567:5[#S^ M#$7C4;,C3L_?JG]VB[>+>"W0K[,'?=H'MV[IY=;6M'7S;I M*GGIR@R(^Q[!)P@V(A);>Q3@2.">$SK_*+"E"($%!%R!<'0QH4M,EY N'5U. MZ)GW "ABA@4R*) 1^MP3H(@%%IA!@1FA+ST!BF I5IA#A3GE,T\"0#B66$") M!>4+3P) DXOH<22\GVK 23@-4MQG%):P;<;80*<!H&:W@>PXP/& Z@\F] M8YQ6\&U'F(#O#,>7"5K!=QYA M8SG')&0\Q]\Q$FY#Z..J-)YL1]@ FYC_/. M:)PY<9]B1,A]G'E&$RV(^P 3"N \P ?YEMZ;O!TP MF =0-!T M9WYJ$":D@G< 0=.=^7LFP@3V3(%W $'3G?GO,\+X>V8RZ40JU1Q=T]9&.WVI M7<]-U>A4D[%=WOP#4$L#!!0 ( %.&J% 1Y$)GN@0 ( 8 M 8 >&PO=V]R:W-H965T&ULC9G;;N,V$(9?Q?!]5YPA M*9&!8Z!V4;1 "P1;M+U6;#HV5K)<28FW;U])5@QI9ICT)CKX'_(?DOIXR.I: MU=^:8PCMXGM9G)O'Y;%M+P])TNR.HRS*O_]V$HKH^+F'Y_N+KZ>78 M]B^2]>J2OX0_0OOGY:GNGI)[*?M3&<[-J3HOZG!X7/X(#UN#?<"@^.L4KLWD M?M&G\EQ5W_J'7_>/2]4["D78M7T1>7=Y"]M0%'U)G8]_QD*7]SK[P.G]>^D_ M#\EWR3SG3=A6Q=^G?7M\7+KE8A\.^6O1?JVNOX0Q(;MES+_?KJ?S<+V.Y;^'R0$X!N ] ,R' 7H,T"0@N3D; M4OTI;_/UJJZNB_K66Y>\'Q3PH+O&W/4OA[8;?NNR;;JW;VN;K9*WOIQ1LKE) M<"+!N6++%=;=)4E7_]T$BB9PB-?3>"_':S%>#_%F$I\JDL1-D@Z2\R!QF4:2 MZI:KO#(^DHL1O1CN!8B7F\1.:DF9$T$S*6?FPXH^+&O3%.7X5(Q/>1Z:Y)$R MCTX[0Q+A(J\F)4N+%LUH0O:7?KJ!2X")>0,D04=P-HXAB%?V@Z6#Y1#3W M$@$:<"^.>@&I: 8SBB&@3,6-7@V>"29TQ$6@PQCX#3. M*(V!@Q:!-8X@2B-3/L@P!D[CC-(8.&C3U-!I7U*ABXP;E&F,G,89I3%RT&HT M%#F?J>9N9!XCYW%&>8P7 5M:I+/)5 MH4QDU&R9YB(419FBR"GJ*$61TQ$-[VU!E6*LMV6"(B>HHP1%SD8-2#]+0665 MBK6N3%#D!'64H"@0U*.F;K@JM2;64S)!D1.4DGJ#PBK5@:5N!!6H"#]1YB=R M?CK*3^1HI"P7)&FL661X(H>GH_!$CD7KZ=)E*ZDBC:)E=&J.3D?1J3D4$9&. M\JT@ ZM=!%A:AJ?F\'04GEI8I5JZ&=@**O NUCHR/C7')UT8;C3'(AK--F.B MS-L(;'1DV\^7LY[M^_E"%5 S.Z(J,HZU#&+-0>PIB#5'K%5&L<[B,J.M32-^ M9!1KCF)/42QI*/H^ULR=R!C6*9OD?&13IV5T:HY.3V&E.10I(#Z4S'W(T-0< MFIZR2@M$I#X^DLQ]R,S4G)F><8K3T!@/2*=]49?YV&;.R.0TG)R>DLI(N_MN M4J<'9%M1:-"HR+&$D>EI.#WI7F1C.!=]MS>B/2;(0%D+$8 :&:"& Q04)=8H MFAY"B@M06<<7H,GD*+@_F_\]KU].YV;Q7+5M50YGOX>J:D-7IOK2)7@,^?[^ M4(1#V]]FW7U].Q._/;3593SO3^[_=%C_!U!+ P04 " !3AJA0RCX;-3P" M # !P & 'AL+W=O, MOXD20'KO-6W$VB^E;%<(B7T)-1%/K(5&K1P9KXE40WY"HN5 #B:HIBC$.$$U MJ1J_R,W%_GX&R;NT'_L?$2W4JI9Y 1=Z2$_P$^:O= MU_RE8;0*L XSBM8).7/4]G-W_P\-V7^'"U EUR1JCSVCPKR]_5E(5@\N"J4F[WU;-:;M^I4D'<+< M >$0$(X!P>)F0#0$1%8 ZLE,JI^))$7.6>?Q_F^U1!^*8!6IC[G7D^;;F365 MK5"SER+ 08XNVFC0//>:\$H33A6;N2+.1@E2 "-%Z*0(37PTH0C=!I'3(#(& MBXE!9*71:U*C:8P&/V%L9[NY*YO@+)PX"P?.PL+I-?'5/C$VC\5S7S(GY5>J&PO=V]R:W-H965T&ULE5==;]L@%/TKEM]7P\7X MHTHB-9FF3=JD:M.V9SRTJ>5V&-'SM^%H>CLIT1*O%J3B( M;T)]/SVVNA5-++NR%DU7RB9HQ7X9/M#[#3 3T"-^E.+:S=X#4\J3E,^F\6FW M#(E1)"JQ58:BT(^+V(BJ,DQ:QZ^1-)QRFL#Y^RO[A[YX71_S4,#X Q *8 G?MO 6P,8&\!<5_\H*PO]7VABM6BE=>@'6;K5)A% M0>^9'LRMZ>S'KO]-5]OIWLN*4KJ(+H9HQ*P'#,PQ$R+2[%,*P%*LP0F'VP0; M%T$IX"D86@7K"=@- <,)8I0@[@GB&X+8&H8!D_289L#$24JL6A 4YYE'#$?% M<*0:CA,D*$&"5)-8U0P8/M,)/+9F?N."8I9[)C]%I:2(E-22DCI9*,D3"[5Q M41F9576C)4.U9(B6S-*2N5GR++>D(*#8-T,Y*B5'I%A9UKD[0Q#G]K @*)*! MY^NA!#D3"8'AF/W5#1+T1[*I@N>I-('ZO[8NY=2"2V2W.F5?-0WH:E1B;TRKZE^ M;X?KP-!0\C1>=:+IOK7Z U!+ P04 " !3AJA027-1?:>(T:+AD@38SWWX-H6PX/C3[4C#YGZOQS[C+2U7_:$[6ML'/ M(B^;57AJV_-#%#7[DRW2YE-UMJ7[Y5C51=JZ8?T2->?:IH?>J,@CSIB.BC0K MP_6R?_94KY?5:YMGI7VJ@^:U*-+ZUZ/-J\LJA/#]P;?LY=1V#Z+U\IR^V.^V M_?/\5+M1-'HY9(4MFZPJ@]H>5^%O\+#CLC/H%7]E]M+%^^*>4X;NZGRO[-# M>UJ%<1@<[#%]S=MOU>6S'0I283!4_]6^V=S)NTQ'&I M%.G/ZS4K^^ME\/]N1AOPP8"/!@ ?&HC!0(P&G']H( <#.1H(_:&!&@S4?Q&2 MOKW7VOMF;M,V72_KZA+4U_?AG':O'3PH-UW[[F$_._UOKI^->_JV!L&6T5OG M:- \7C5\HH&I9D-I^%2SI31BJME1&CEJ(E?+6! G"^*] SEQH%"R5XWJ-66O M49)IQ1BC(PDRDB B:=2ZJT;?1M*"(=6&4*'6^0H1:V.0;.?+%D(P:68Z*,FZ M9.]$3.HRM -%.E!$8V+4&.5- 8=8&?3*;"A9,CM/FDQ'$^DD*!WM-5RJYDD8LA$C)^(1&MM8[P@DO'9@F,R3DS$0>OU,?8;RS1:C-L[HDDJ"9E* M0J2"YSCQHBQ SB]&8#3(&!%*8)(Q/Q8W28)!=4\V36B&K. GQ!5."/Q(RL/( M[JYLFA!-1B#0*"7F.,5&)6%^.F@X D%'Z54O_&# :\)N,]'PI,#9 P8D(3. M$5)IF*N.1B1(HCI,]4$TJ2Z.C9EO)8U3('@J#6ZE\GH$3"DP."E?ASD'/G2E M- EGN)>^;B$DEVQNG=!X!OW_]QN@P0H$6;T=!WRT*H&_/S:4:G[":/X" 6!O MQQE$DRW=XY /8#'77)J_0 '86U\^@3_:93D-8$X!&&\[W"=JFC/-:$XPVMLT. %?QT.#\[DGFR8T\_5*,-K;-+C/Z(71"NVKN[NR M:4(TQSG%\1C/%\'QA,$\Z3B-54YA%2^<073[ODSO;C(+?' MMKLU[KZ^'G"O@[8Z#X?W:/P/POI?4$L#!!0 ( %.&J%"XSBG\900 . 5 M 8 >&PO=V]R:W-H965T&ULC9A?C^HV$,6_"N*=F\PX ML9,5(.U25:W42JM;M7W.@OFCFQ":9)?;;U\G9+G@.49]@20Z M^=;NK>TFWZORV"ZF^ZX[/451N][;JFB_U"=[=+]LZZ8J.G?;[*+VU-AB,S2J MRHCC6$=5<3A.E_/AV6NSG-?O77DXVM=FTKY75='\^V++^KR8TO3SP=?#;M_U M#Z+E_%3L[!^V^_/TVKB[Z!IEZOI;?_/K9C&->T>VM.NN#U&XKP^[LF791W(^_AF#3J]]]@UOKS^C_SPD M[Y)Y*UJ[JLN_#YMNOYAFT\G&;HOWLOM:GW^Q8T+I=#)F_YO]L*63]TY<'^NZ M;(?/R?J][>IJC.*L5,7WR_?A.'R?Q_B?S7 #'AOPM8'K^U$#-390/QHD0_(7 M9T.J/Q5=L9PW]7G27&;K5/0O!3TI-YCK_N$P=L-O+MO6/?U84AK/HX\^T*AY MN6CX5G-51"[ZM0M&7;RP:,[W':RD@HAQ%PIFH88 ZBZ+@,<$!DB& ,EM $Z] M8;AH]* Y#IJ9T:E;,=YXK8 P):5OA7>64F@I!3D%!D7# %KFE"HOIXLFO;&: MJ$QF)&6*\F ^!MHQP$[BV3&B'YV# 98RDX;M9-!.!NSX,YZ)?IAT+OT 7:Q5 MT% .#>7 D/8,Y:(CWXI44!QV0C&&0@S>/1,($> *@70R'RPDY]N \06Z&<7I M@[P@B9Z)A2GMOX*CYFY)Q&!) )U*PX8PMTB!4])XG-&&>2 5!+EX8V5 M,&E)HC;S-T:2(%5$:*" ,,TIZ(DQH)#"X\28X2P9 MGOD[$@.$)VC/!L(9YRJ,)\8,9\EPEYGO2L)Y1@FGP!90EFBU\'2-P60BDTA2#\RA=G+&@QV$@B! M8;#:,"H95*1:+#? RA0---*%Z;5?$BB 0<4Q M(!-2ILJ$RP*%@:D0,/V"3DD,YLP,WBR@3),D"Z]A%?C+#DI?4=0I6=!F>8RV M8:!,W"X4S]^=JWO,7>EI=#AM_A+F-+O#L9V\U5U75\/9VK:N.^N,QE_< MN.UML;G>E';;]9?&73>7,\?+35>?QO/4Z'JHN_P/4$L#!!0 ( %.&J%"O M4^BFL0$ -(# 8 >&PO=V]R:W-H965T&UL?5/;;MLP M#/T501]0)4K:#(%MH.DP;, &!!VV/2LV;0O5Q9/DN/O[4;+C>9VQ%XND>0X/ M*2H;K'OQ+4 @KUH9G],VA.[(F"];T,+?V0X,_JFMTR*@ZQKF.P>B2B"M&-]L M'I@6TM B2[&S*S+;!R4-G!WQO=;"_3J!LD-.M_06>)9-&V* %5DG&O@*X5MW M=NBQF:62&HR7UA '=4X?M\?3/N:GA.\2!K^P2>SD8NU+=#Y5.=U$0:"@#)%! MX'&%)U J$J&,GQ,GG4M&X-*^L7](O6,O%^'AR:H?L@IM3M]14D$M>A6>[? 1 MIG[N*9F:_PQ74)@>E6"-TBJ?OJ3L?;!Z8D$I6KR.IS3I'";^&VP=P"< ?P-@ M8Z&D_+T(HLB<'8@;9]^)>,7;(\?9E#&81I'^H7B/T6NQ/=QG[!J)IIS3F,.7 M.7,&0_:Y!%\K<>+_P/DZ?+>J<)?@N[\4/JP3[%<)]HE@_]\6UW(.;XJPQ4PU MN"9MDR>E[4W:Y$5T7MA'GN[D3_JX[5^$:Z3QY&(#WFR:?VUM )2RN<,5:O&! MS8Z".D3S@+8;UVQT@NVF%\3F9US\!E!+ P04 " !3AJA0%CGI/;8! #2 M P & 'AL+W=O552VYRVSG4'QFS9@N+V"CO0_J9&H[CSIFF8[0SP*H*49&F27#/%A:9%%GTG M4V38.RDTG RQO5+*D<\H 7)X_V!]B[;Z6,[=PC_*7J%R;TSTE%=2\E^X1AR\PU?.)DJGX;W ! MZ<.#$I^C1&GC2LK>.E03BY>B^.NX"QWW8;RYOIU@ZX!T J0S8!_SL#%15/Z9 M.UYD!@=BQMYW/#SQYI#ZWI3!&5L1[[QXZ[V78G.SS]@E$$TQQS$F7<;,$"G)E1^AUG^PV9!0 MNW"\\6-L8I[-&W+7&^!UQ&D)$MWN_=,<:%IF4??V9:Y M&;P4&LZ6N$$I;G^=0)JQH E]<3R(MO/!P4 ;@^O[!_C+5C+1?NX-[(1U'[KJ '2FIH^"#]@QD_P5S/.TKFXK_ %22& M!R68HS+2Q954@_-&S2PH1?'G:1=B4*"K_P#TO M]SP\<7),L3=5<,96Q#L4[]![+9-#DK-K()IC3E-,NHY9(ABR+RG2 MK12G]!]XN@W?;RK<1_C^#X7_(<@V";)(D+U9XE;,_J\D;-53!;:-T^1(908= M)WGE70;V+HUO\AH^3?M7;ENA';D8CR\;^]\8XP&E[&YPA#K\8(LAH?'A>(MG M.XW99'C3SS^(+=^X_ U02P,$% @ 4X:H4#@X/URT 0 T@, !D !X M;"]W;W)K&UL?5/;;MLP#/T501]0)8[;!8%MH.DP M;, *!!VV/BLV;0O5Q9/DN/W[4;+CN9VQ%TFD> X/*2H;C'UQ+8 GKTIJE]/6 M^^[ F"M;4-S=F XTWM3&*N[1M USG05>19"2+-EL[ICB0M,BB[Z3+3+3>RDT MG"QQO5+ P2W.)%1R-N8E&-^JG&Z"()!0^L# <;O T@9B%#&[XF3SBD# M<'F^LG^)M6,M9^[@P>:,F%I2B^.NX"QWW8;S976'K@&0")#-@'P%L3!25?^:>%YDU [%C M[SL>GGA[2+ W97#&5L0[%._0>RFV^S1CET TQ1S'F&09,T(T.5*:7L=)7GCG M@;U/XIO\#1^G_9';1FA'SL;CR\;^U\9X0"F;&QRA%C_8;$BH?3A^PK,=QVPT MO.FF'\3F;US\ 5!+ P04 " !3AJA0MT/)6;4! #2 P &0 'AL+W=O MU,8J[M&T#7.=!5Y%D)(LV6P^,<6%ID46?2=;9*;W4F@X6>)Z MI;A]/8(T0TZW],WQ))K6!P,)A;JG-YN#\ GP(&MSB34,G9F.=@W%=4P;@\OS& M_C76CK6JXIF8I_@ M(# ]*,$=II(LK M*7OGC9I84(KB+^,N=-R'\>8ZG6#K@&0")#-@'_.P,5%4_H5[7F36#,2.O>]X M>.+M(<'>E,$96Q'O4+Q#[Z78[F\R=@E$4\QQC$F6,7,$0_8Y1;*6XIA\@"?K M\-VJPEV$[_Y1N%\G2%<)TDB0_K?$M9C/[Y*P14\5V"9.DR.EZ76M+]IT"CNO&E:9GL#O(X@)5F:)-=,<:%IF4??R90Y#DX*#2=#[* 4-S^/ M('$LZ(Z^.NY%V[G@8&7>\Q:^@_O1GXRWV,)2"P7:"M3$0%/0V]WAF(7X&/ @ M8+2K,PF5G!&?@O&E+F@2!(&$R@4&[K<+W(&4@)XYZ9(R -?G5_9/L79? MRYE;N$/Y*&K7%?2&DAH:/DAWC^-GF.MY1\E<_%>X@/3A08G/4:&T<2758!VJ MF<5+4?QEVH6.^SC=[+,9M@U(9T"Z &YB'C8EBLH_0N? MIOT;-ZW0EIS1^9>-_6\0'7@IR94?H&UL?5/;;IPP$/T5RQ\0[P)ITQ4@95-5K=1(JU1-GKTP@!5? MJ&V6Y.\[-H30%O7%]HSGG#DS'N>CL<^N _#D14GM"MIYWQ\809BSH MGKXY'D3;^>!@9=[S%GZ _]F?+%IL8:F% NV$T<1"4]#;_>&8A?@8\"A@=*LS M"96ZH+L@""14/C!PW"YP!U(&(I3Q:^:D2\H 7)_?V+_$VK&6,W=P M9^23J'U7T!M*:FCX(/V#&;_"7,\U)7/QW^$"$L.#$LQ1&>GB2JK!>:-F%I2B M^,NT"QWW<;I)LQFV#4AF0+( ;F(>-B6*RC]SS\O/J' MPFR;(-LDR")!]M\2MV*N_TK"5CU58-LX38Y49M!QDE?>96!OD_@F[^'3M-]S MVPKMR-EX?-G8_\88#RAE=X4CU.$'6PP)C0_'CWBVTYA-AC?]_(/8\HW+WU!+ M P04 " !3AJA07DT&C[0! #2 P &0 'AL+W=OW<<^8CFR78 CCPKJ6U!.^?Z(V.VZD!Q>X,]:'_3H%'< M>=.TS/8&>!U!2K)LL[EEB@M-RSSZSJ;,<7!2:#@;8@>EN/E] HEC0;?TQ?$H MVLX%!ROSGK?P#=SW_FR\Q6:66BC05J F!IJ"WF^/IWV(CP$_!(QV<2:AD@OB M4S ^UP7=!$$@H7*!@?OM"@\@92#R,GXE3CJG#,#E^87]8ZS=UW+A%AY0_A2U MZPIZH*2&A@_2/>+X"5(][RA)Q7^!*T@?'I3X'!5*&U=2#=:A2BQ>BN+/TRYT MW,=TYP9&8J?<]#T^\/6:^-U5PQE;$.R_> M>N^UW+Z_S=DU$*68TQ23+6/F".;9YQ396HI3]@:>K<-WJPIW$;[[1^'=.L%^ ME6 ?"?;_+7$MYO J"5OT5(%IXS194N&@XR0OO// WF?Q3?Z&3]/^E9M6:$LN MZ/S+QOXWB Z\E,V-'Z'.?[#9D-"X<+SS9S.-V60X[-,/8O,W+O\ 4$L#!!0 M ( %.&J%!.SP8EM0$ -(# 9 >&PO=V]R:W-H965TZV%^7,$A4-&-_3=\2SKQ@4' MR]-.U/ #W,_N9+S%9I52:FBMQ)88J#)ZMSD<=P$? ;\D#'9Q)J&2,^)+,+Z7 M&4U"0J"@<$%!^.T"]Z!4$/)IO$Z:= X9B,OSN_JW6+NOY2PLW*/Z+4O79/2& MDA(JT2OWC,,#3/5<4S(5_P@74!X>,O$Q"E0VKJ3HK4,]J?A4M'@;=]G&?1AO M]ON)MD[@$X'/A)L8AXV!8N9?A1-Y:G @9NQ])\(3;P[<]Z8(SMB*>.>3M]Y[ MR3>WMRF[!*$)&PO=V]R:W-H965TO&G5N9RVWO<'QES9@A;NRO30X4UMK!8>3=LPUUL0 M501IQ7B2W# M9$>++/I.MLC,X)7LX&2)&[06]M<1E!ESNJ/OCF?9M#XX6)'U MHH%OX+_W)XL66U@JJ:%STG3$0IW3N]WAF(;X&/!#PNA69Q(J.1OS$HRG*J=) M$ 0*2A\8!&X7N >E A'*>)TYZ9(R -?G=_;/L7:LY2PDM)174 M8E#^V8R/,-=S3X@,+PH 1SE$:YN))R<-[HF06E:/$V[;*+^SC=7/,9 MM@W@,X O@-N8ATV)HO('X46163,2._6^%^&)=P>.O2F#,[8BWJ%XA]Y+P1.> ML4L@FF..4PQ?Q>R6"(;L2PJ^E>+(_X/S;?A^4^$^PO=_*=QO$Z2;!&DD2#\L M<2LF_2<)6_54@VWB-#E2FJ&+D[SR+@-[%Q^1_0F?IOVKL(WL'#D;CR\;^U\; MXP&E)%&UL?5-A M;]L@$/TKB!]0')*V461;:EI5G;1)4:MMGXE]ME'!N(#C[M_WP*[G;=:^ '?< M>_?N.-+!V%?7 'CRKE7K,MIXWQT8=J)&E[ M?^].%BTVLY120^ND:8F%*J-WF\-Q%^)CP \)@UN<2:CD;,QK,+Z4&4V"(%!0 M^, @<+O /2@5B%#&V\1)YY0!N#Q_LC_&VK&6LW!P;]1/6?HFHWM*2JA$K_RS M&9Y@JN>:DJGXKW !A>%!">8HC')Q)47OO-$3"TK1XGW<91OW8;SA^PFV#N 3 M@,^ ?]^)\,2; \?>%,$96Q'O4+Q#[R7GR77*+H%H MBCF.,7P1LYDC&++/*?A:BB/_!\[7X=M5A=L(W_ZA\&:=8+=*L(L$N_^6N!9S M^U<2MNBI!EO':7*D,'T;)WGAG0?VCL(MG.X[9:'C333^(S=\X_P!02P,$% @ 4X:H4-D@ M(B6U 0 T@, !D !X;"]W;W)K&UL?5-A;]P@ M#/TKB!]0$NZV74])I%ZG:9,VZ=1IW6DZ8B%.J=WZ?&T#_$QX%'"Z%9G$BJY&/,4C"]53I,@"!24/C ( MW*YP#TH%(I3Q:^:D2\H 7)]?V#_%VK&6BW!P;]1/6?DVIP=**JC%H/R#&3_# M7,\[2N;BO\(5%(8')9BC-,K%E92#\T;/+"A%B^=IEUW-B6*RC\*+XK,FI'8J?>]"$^<'CGVI@S.V(IXA^(=>J\%3PX9NP:B.>8T MQ?!53+I$,&1?4O"M%"?^"LZWX;M-A;L(W_VC\':;8+])L(\$^S=+W(A)D_^2 ML%5/-=@F3I,CI1FZ.,DK[S*P=SR^R=_P:=J_"=O(SI&+\?BRL?^U,1Y02G*# M(]3B!UL,!;4/QP]XMM.8388W_?R#V/*-BS]02P,$% @ 4X:H4,I*]K,) M @ ,P8 !D !X;"]W;W)K&UL=55A;YLP$/TK MB!]0@T-"$A&DIE.U29L4=5KWV2%'0+4QM9W0_?O9AE!&;E^P[WCWWIWQ'5DG MU9NN $SP(7BC=V%E3+LE1!<5"*8?9 N-?5-*)9BQICH3W2I@)Q\D.*%1M"*" MU4V89]YW4'DF+X;7#1Q4H"]",/5G#UQVNS .;XZ7^EP9YR!YUK(S_ 3SJSTH M:Y&1Y50+:'0MFT!!N0L?X^T^CER 1[S6T.G)/G"E'*5\<\:WTRZ,7$; H3". M@MGE"D_ N6.R>;P/I.&HZ0*G^QO[LR_>%G-D&IXD_UV?3+4+UV%P@I)=N'F1 MW5<8"EJ&P5#]=[@"MW"7B=4H)-?^&107;:086&PJ@GWT:]WXM1OX;V%X !T" MZ"R ]$(^\R_,L#Q3L@M4?_@M<]\XWE)[-H5S^J/P[VSRVGJO.8WCC%P=T8#9 M]Q@ZP7PBB&4?)2@FL:=WX10/7Z 9+GSX8JJ>;G""!"5(/$'R3XET5B*&6> B M2U1DB1 D,Q$,L\1%5JC("B%8S40P3(J+I*A(>D>0IC.->PB-U[C&&M58(P2; MF0B"H1$NLD%%-@C!_&ICF/_<3CM[T :*$(K%O(,P4#+3(9.>%:#.?EKIH)"7 MQH_*B7>'[NY32@,TE>K#7L+(3?#0XE,9M M4[M7_1CK#2/;8423\3^1_P502P,$% @ 4X:H4)YV4Y+4 0 G 0 !D M !X;"]W;W)K&UL=51M;]L@$/XKB!]0'!*[661; M:CI-G;1)4:>UGXE]?E'!N(#C[M\/L.MZ*?MBN..YY[G#=Z2C5"^Z 3#H3?!. M9[@QIC\0HHL&!-,WLH?.GE12"6:LJ6JB>P6L]$&"$QI%"1&L[7">>M])Y:D< M#&\[."FD!R&8^G,$+L<,;_"[X[&M&^,<)$][5L,O,+_[D[(665C*5D"G6]DA M!56&[S:'8^+P'O#4PJA7>^0J.4OYXHSO988CEQ!P*(QC8':YP#UP[HAL&J\S M)UXD7>!Z_\[^S==N:SDS#?>2/[>E:3*\QZB$B@W9Z8HSFXG_ !;B% MNTRL1B&Y]E]4#-I(,;/85 1[F]:V\^LXG<3)'!8.H', 70+V7H=,0C[SK\RP M/%5R1&JZ^YZY7[PY4'LWA7/ZJ_!G-GEMO9>8+=/R4F5R6&,+=AD3@H$@<(]E&PO=V]R:W-H965TU7(2%)U2_ M9.7:G!XHJ: 6@W+/.'Z&N9Y[2N;BO\(5E(>'3'R,$I6-*RD'ZU#/*CX5+5ZG M779Q'Z>;AQMMF\!G E\(ATA@4Z"8^4?A1)$9'(F9>M^+\,3[(_>]*8,SMB+> M^>2M]UX+GO",78/0C#E-&+["[!<$\^I+"+X5XL3_H_-M>K*981+IR3KZX7Y; M(-T42*- ^D^)R;L2MS#INR!LU5,-IHG39$F)0Q>5=!O:1QS=Y@T_3_DV8 M1G:67-#YEXW]KQ$=^%1V=WZ$6O_!%D-![<+QP9_--&:3X;"??Q!;OG'Q%U!+ M P04 " !3AJA08'&)Z;@! #2 P &0 'AL+W=O M_GT'['7=K5^ &? L0R*M6QN>T#:$[,>;+%K3P=[8#@S>U=5H$ M-%W#?.= 5(FD%>.;S3W30AI:9,EW<45F^Z"D@8LCOM=:N-]G4';(Z9:^.9YE MTX;H8$76B0:^0?C>71Q:;%:II ;CI37$09W3Q^WIO(_X!/@A8?"+,XF57*U] MB<;G*J>;F! H*$-4$+C=X F4BD*8QJ])D\XA(W%Y?E/_F&K'6J["PY-5/V45 MVIP>*:F@%KT*SW;X!%,]!TJFXK_ #13"8R88H[3*IY64O0]63RJ8BA:OXRY- MVH?QYG"8:.L$/A'X3#BF.&P,E#+_(((H,F<'XL;>=R(^\?;$L3=E=*96I#M, MWJ/W5O#=(6.W*#1ASB.&+S#;&<%0?0[!UT*<^7]TOD[?K6:X2_3=,OKQN"ZP M7Q78)X']/R7>ORMQ#?/P+@A;]%2#:](T>5+:WJ1)7GCG@7WDZ4W^PL=I_RI< M(XTG5QOP95/_:VL#8"J;.QRA%C_8;"BH0SP^X-F-8S8:P7;3#V+S-R[^ %!+ M P04 " !3AJA0Y!G%)[D! #2 P &0 'AL+W=O:<,S,,V:#-LVT!''J10MDWF<$Q#? QXXC#8Q1F%2LY: M/P?C6Y7C)"0$ DH7&)C?+G '0@0BG\:?B1//D@&X/+^R/\3:?2UG9N%.B]^\ MN$<]?(6IGFN,IN*_PP6$#P^9>(U2"QM75/;6:3FQ^%0D>QEW MKN(^C#>[W01;!] )0&? /NJ042AF?L\<*S*C!V3&WG";O<9N02B*>8XQM!%S&:.()Y]EJ!K$D?Z 4[7X=O5#+<1OEVJWWRB MGZX2I)$@?5/BS;L25V+2Y)T(6?14@FGB-%E4ZE[%25YXYX&]I?%-_H>/T_Z# MF88KB\[:^9>-_:^U=N!32:[\"+7^@\V&@-J%X\Z?S3AFH^%T-_T@,G_CXA]0 M2P,$% @ 4X:H4+< O['0 0 G 0 !D !X;"]W;W)K&UL;53O;ML@$'\5Q .4A#AN%]F6FE;5)FU2U&G;9V*?;50P'N"X M>_L!=EPOXXOACM^?.PQDH])OI@6PZ%V*SN2XM;8_$&+*%B0S=ZJ'SJW42DMF M7:@;8GH-K HD*0C=;%(B&>]PD87<21>9&JS@'9PT,H.43/\Y@E!CCK?XFGCE M36M]@A19SQKX#O9'?](N(HM*Q25TAJL.::AS_+@]'%./#X"?'$:SFB/?R5FI M-Q]\J7*\\06!@-)Z!>:&"SR!$%[(E?%[UL2+I2>NYU?UE]"[Z^7,##PI\8M7 MMLWQ T85U&P0]E6-GV'N9X_1W/Q7N(!P<%^)\RB5,.&+RL%8)6<55XID[]/( MNS".TTIRI<4)=";0A? 0"&0R"I4_,\N*3*L1Z6GO>^9_\?9 W=Z4/AFV(JRY MXHW+7@J:;#-R\4(SYCAAZ KS@2!.?;&@,8LC_8].X_1=M,)=H._6[I^2N$ 2 M%4B"0/)/B_2FQ1AF%S?91TWV$8'DQB2&V<=-TJA)&A%(;TQBF/L;$[(Z'1)T M$^Z%0:4:NG G5]GEZCW2<+H^X-.]_<9TPSN#SLJZ,QI.4JV4!5?*YLXUW+JG M8@D$U-9/[]U<3Q=F"JSJY[> + ]2\1=02P,$% @ 4X:H4*LXL$?% 0 M-P0 !D !X;"]W;W)K&UL=51ACYP@$/TKA!]P MN+A>MQLUN;VF:9,VV5S3ZV=61R4'8@'7Z[\OH&?MEGX19GCSY@W#F$]*OY@. MP*)7*7I3X,[:X4B(J3J0S-RI 7IWTB@MF76F;HD9-+ Z!$E!:)+<$\EXC\L\ M^,ZZS-5H!>_AK)$9I63ZUPF$F@J\PV^.)]YVUCM(F0^LA6]@OP]G[2RRLM1< M0F^XZI&&IL /N^,I\_@ >.8PF^4HN2KUXXW-=X,0+ @&5]0S,+5=X!"$\ MD9/Q<^'$:TH?N-V_L7\,M;M:+LS HQ(_>&V[ A\PJJ%AH[!/:OH$2ST91DOQ M7^ *PL&]$I>C4L*$+ZI&8Y5<6)P4R5[GE?=AG>:3^W0)BP?0)8"N 8>0A\R) M@O(/S+(RUVI">K[[@?D6[X[4W4WEG>$JPID3;YSW6M+](2=73[1@3C.&;C"[ M%4$<^YJ"QE*1A6F(3S]2^'[.,$^2K /!/LM09;X,NRKKG M$YK<*&7!24GNG);.3?%J"&BLW[YS>SV_Y=FP:EC&E*S_BO(W4$L#!!0 ( M %.&J%"7;U;_X0$ $% 9 >&PO=V]R:W-H965TN6L5SENM1Z.A*BR!4[5G1B@-R>UD)QJ8\J&J$$" MK5P09R0*@H1PVO6XR)SO+(M,C)IU/9PE4B/G5/XY 1-3CD/\YGCNFE9;!RFR M@3;P'?2/X2R-15:6JN/0JT[T2$*=X_OP>$HMW@%^=C"IFSVRE5R$>+'&ERK' M@4T(&)3:,E"S7.$!&+-$)HW?"R=>)6W@[?Z-_N]ZMTWP2 M1TN8/R!: J(UX.!TR"SD,G^DFA:9%!.2\]T/U/[B\!B9NRFMTUV%.S/)*^.] M%E&\S\C5$BV8TXR);C#ABB"&?96(?!*GZ$-XY _?>3/2[!W M!/MW!,FF1!\F]8O$7I'80W#8B/@PG_PBB5SETY&UH,R\ AZ]0K_@)02P,$% @ 4X:H M4."?YFWK 0 9@4 !D !X;"]W;W)K&UL=53; MCILP$/T5Q >LB4D@C0C29JNJE5HIVJK;9X<,%ZV-J6W"]N]K&T(I.WW!GO&9 MU)*)9BQIJJ([A2PJP\2 MG- H2HA@31OFF?>=59[)WO"FA;,*="\$4[]/P.5P##?AW?'<5+5Q#I)G':O@ M.Y@?W5E9B\PLUT9 JQO9!@K*8_BX.9SV#N\!+PT,>K$/7"47*5^=\>5Z#".7 M$' HC&-@=KG!$W#NB&P:OR;.<)9T@?8S8P@EGV6H)C$B;X+IWAXC&88^_!X&1[%.,$6)=AZ@NT_)6Y7 M)6*8'2ZR0T5V"$&R$L$P*2Z2H"()0K!?B6"8#[A(BHJD[PG2:"6"8?[S3^Q1 MD3U"0%]P'12R;_UT67CG(?)(?9_\A8\3Z!M35=/JX"*- M[3;?$Z64!FPJT8-]NMH.O=G@4!JW3>U>C:T_&D9VTU0C\VC-_P!02P,$% M @ 4X:H4-U)#?W$ 0 -P0 !D !X;"]W;W)K&UL;53OCIP@$'\5P@,<+KNNEXV:W%[3M$F;;*YI^YG54O;5?@1XQJ M:-@H[(N:/L%23XK14OP7N(%P<)^)\ZB4,.&+JM%8)1<5EXID;_/(^S!.\\X^ M6VAQ ET(="4\!A\R&X7,/S#+RERK">GY[ ?FKWAWHNYL*A\,1Q'V7/+&16\E MS0XYN7FA!7.>,72#V:T(XM17"QJS.-/_Z#1.WTK$&5&OO0+IOHVA5/-%S\ M7_C<4E^9;GEOT%59]WS")3=*67"I) \NE\YU\;H0T%@_S=Q&ULC57ICILP$'X5Q .LN2$10=HDJEJIE:*MNOWMD$E M:S"UG;!]^]J&L#FFJ_R)#[YC9F*/\YZ+-UD!*.>]8:U+US?/6^\U(=*F0U2Y!T]P$]0O[J-T"LRJ>SJ!EI9\]81L%^XS_Y\[5N" M1;S6T,N+N6-2V7+^9A;?=@O7,Q$!@U(9":J'$ZR ,:.DX_@SBKJ3IR%>SL_J M7VSR.IDME;#B['>]4]7"S5QG!WMZ9.J%]U]A3"AVG3'[[W "IN$F$NU1I>+-J*)#:>C[,-:M'?M1_TS#"<%("":"]OZ,$(Z$\(,0?4J(1D)T0R!# M*K8V:ZIHD0O>.V+X>SMJ3I$_CW3U2[-IBVV_Z?)(O7LJ@C3+R18BF&EI^>!6%CPM$J$!D!:(K M@9L@5P,FL9C68K(X3&XRN0<%7A3AH<1H*#$22H@+)*A \G@Q4E0@12*(;@Y. M>I>G[WD>[I*A+AGB$M^X8)@$-YFA)C-$(,4%? ^_1=[CY?3_<*=##>DSZ$E7YLI@6#O3+35,_%T'&'A>+=^)J0Z4DK_@%02P,$% @ M4X:H4&'I$:A_ @ 0D !D !X;"]W;W)K&UL MC5;;CILP$/T5Q SASYLP8>YQ<*'OG!<;"^:A(S5=N(42S]#R>%[A"_(4VN)9?#I152,@I.WJ\ M81CMM5-%/.C[D5>ALG;31-M>69K0DR!EC5^9PT]5A=B_#2;TLG*!>S6\E<=" M*(.7)@TZXI]8_&I>F9QY']J\FV_ON(VH9GKM-E_QV=,)%PID3%R2KA^.OF)"UJU+%)* MA3[,NZSU^]+R7]WL#K!U@)U#$-YU"%J'H'. \5V'L'4(/QU,M4PJNC9;)%": M,'IQF%G>!JF_""Q#6?U<&76Q]3=9'BZMYQ3&<>*=%5&+V1@,[&% A_ D>Q<" MVD)LX,0=QHMAB,R"6?A#S-:&N2$DL.8::()@0 #M!*&5(-0$X8 @&!7+8&8: M4QN,/<3,&F(V"3&?CR(82-2+$, 0C KZ#&C[ #20&UGE1I:*A".]T9V*&+'W M$ ,1YIPMY'^DF!!^$&L[EF)FF;":" M-NV%P^MN/>E_4$L#!!0 ( %.&J% 2VZXU[ , ',4 9 >&PO=V]R M:W-H965TK P#:0N%BT0 L$ M6W1[K=BT+:PD>B4ZWKY]J4.\CCC<2#>Q1/\!+\7Q9+J!:+,ZYT?UMS+_G)\; M>Q?=HNR+2M5MH>N@48=U^,@?MD)V$WK%UT)=V[OKH"OE1>MOWU56791;)Y?!^#AK\E9M=?EOL3>G=9B% MP5X=\DMIONCK[VHL* Z#L?H_U:LJK;S+Q*ZQTV7;_PUVE];H:HQB4ZGR'\-G M4?>?US'^VS1Z HP3X#;!KOVK"3A.P)\31%_\D%E?ZF^YR3>K1E^#9OBUSGGW M4/ 'M&;NNL'>N_X[6VUK1U\WR-@J>NT"C9JG00-W&GY31#;Z;0F@EG@"9SJ\ M7V#K*C@'>@DDJ\ ^ +ZKPI.C( .(/H!XEX&8V#!HDEY3#QJ1I!.SMH0JCC.D MDXG)9&(G&60>.Q(R0#+?CI0,D,ZP8]#$=X7& /'$#5<$&69T*AF92D:8X7%3 MD@'D?#,XHQEA,^P81>_\D"F?^$&HTA023SH>9#EAB?"$()%\Y+# %!HYCG-, M0:=<%*F8FN*J8L:E)QT:8$X0#)X'C=/8\7B!*31X/)EC2N*6RZ+3"%!I#+.:9(IUP9.R]70I7&,O;L1C3-X-(,TN,KT 0" MGV\*T 0"S#!E%-V7RUGF\$/*K,Z3$,TSN#PC\SE+,PAB@2TT@^#N?80ML;NK M2"FGKA J[]X#-,_@\HS,\[8&FD%(%YA",PCN'DB8DCGE"L&F^P^A D#F28?F M&5R>D7D>-J091#;?%*091'<7=$T911_L/X3*O_\@S3.Z/"/S/&SH:6(7=+%( M$XAS^MA1],'^0ZC\^P_2-"/5R?I\I0G$!;TLT@3BG&X6B78V=9\4HI]ETE<1 M33.Z-(-O"T.:0%S0TPJ:0#&GIQ5NMXJI3":F$*I82,];4M T"Z*GY9[7DJ ) M% MZ6D$3*.;TM,+M5@%\+;SP_+OI(9H#D5+J?H.P80-%MB0;WFU(=3'>9VNMF. 8;;HP^CT=\T>V<&PO=V]R:W-H965TE.T[1)FTRV:?N;T7=&LR 6F'%[]P5TC%72/_+A M.8?G120?A'Q3#8 .WCGK5!$V6O<'A%35 *?J2?30F3<7(3G59BBO2/42:.U, MG*$8XPQQVG9AF;NYDRQS<=.L[> D W7CG,H_+\#$4(11^)AX;:^-MA.HS'MZ MA>^@?_0G:49H3JE;#IUJ11=(N!3AA^APS*S>"7ZV,*A%/["5G(5XLX,O=1%B M"P0,*FT3J&GN< 3&;)#!^#UEAO.2UKCL/](_N=I-+6>JX"C8K[;631'NPJ"& M"[TQ_2J&SS#5DX;!5/Q7N ,SE!9]2# JG[V/;=JX=IOR' MS6^()T,\&Z+DOP8R&S]+ZF5)-RPD6N]*NEF&8+Q"V6JP'R/S8F0>C/6>9)N-WZ4D6W%L13%.DA4* M6IQ\>Q-]H_+:=BHX"VU^(G?4+T)H,('XR=34F,MO'C"X:-M]-GTY7@'C0(M^ MNMW0?,66?P%02P,$% @ 4X:H4-/9QM#9 0 7P0 !D !X;"]W;W)K M&UL?519;MLP$+T*P0.$6APG,"0!L8NB!1K 2-#V MFY9&"\)%)2DKN7VX*(KBJ/D1R>%[;Q;.*!NE>M(M@$'/G F=X]:8?D>(+EO@ M5%_)'H2]J:7BU-BC:HCN%=#*DS@C211M":>=P$7F;4=59'(PK!-P5$@/G%/U ML@A."J2@SO%=O#ML'-X# M_G0PZL4>N4Q.4CZYP\\JQY$+"!B4QBE0NYSA (PY(1O&OTD3SRX=<;E_4__N M<[>YG*B&@V1_N\JT.;[%J(*:#LP\R/$'3/E<8S0E_PO.P"S<16)]E))I_T7E MH(WDDXH-A=/GL';"KV.XV5Y/M'5",A&2F1!_34@G0OI.\-4D(3*?ZC=J:)$I M.2(5'JNGKB?B76J+63JCKYV_L]EJ:ST7:;S-R-D)39A]P"0+3#PCB%6?721K M+O;))WKRT<'A,R*.DW47Z6H6J1=(EP*W_Q'8K ILO,#F0QEN+LH0,%N/$1X3 M7>3Q%2($01;OPD$UOH4U*N4@C*O PCI/R5WBWO7"OK?3$YK]72:,WCU532A9X/!R/[:9S)_$\I7@%02P,$ M% @ 4X:H4* 3XX4I @ !P8 !D !X;"]W;W)K&UL?51=CYLP$/PKB/<>V.8CC0#IDJIJI5:*KFK[[)!-0&U M#>$X\/4%V\O,[.R"-^NY>)85@/)>&M;*W*^4ZK9!(,L*&BH?> >M?G/FHJ%* M'\4ED)T >K*DA@4X#).@H77K%YF-'421\:MB=0L'X,][F/_'O@ MJ;Y4R@2"(NOH!7Z ^MD=A#X%D\JI;J"5-6\] >?5^: P!@U(9!:J7&^R!,2.D;?P9-?TII2'.]W?US[9V7"+HW/\CD)% 7@F1+7YP9DO]1!4M,L%[3PP?JZ/F MGT!;HIM9FJ#MG7VGJY4Z>BL(VF3!S0B-F-V P3,,FA"!5I]28%>*'5[1\=L$ M^S4"(>Q.09Q5$"M Y@*;=P0BIT!D!:(W;?BX:,. 22RFM9@X712RAF"RB=U& M8J>1>&T$APLC R:>9?F01&1A90U")'$[29Q.$H<3M'"2K)/$.$X65APH$B;O M?)_4:29=F4$H6IA)5\U'49(NFK=WH.)X0Q9F@MG]:4!<[*B17LFOK3)_ZBPZ M3;-';.[?(K[34VX82J\RPXC\3L6E;J5WY$K?;GL'SYPKT";#!]VL2D_EZ<#@ MK,PVU7LQS*;AH'@WCMU@FOW%/U!+ P04 " !3AJA0DD]*QD<# Q$0 M&0 'AL+W=O6UE4SKW4)U/DE7JJO>94EEG][T$5^K+RF?\^\9SO#Z:="-;+8[97 M/Y7Y=7RJ[2@84;9YJ:HFUY57J]W*_\3N'V34+N@L?N?JTER]>VTJ+UJ_MH-O MVY4?MA&I0FU,"Y'9QUD]JJ)HD6PO:D@H\KTA^^_JK IKWD9B?6QTT71_OUX&_/=E> $?%O!Q >]SZ1UUD7_.3+9>UOKBU3WYQZS]'[-[;KG9 MM),=%=UO-OC&SI[7@O-E<&Z!!IN'WH9_L!&C36#Q1R<<.N$=@/@ (#& @ "B M Y ? **;*'N;N+.I.ILT$C'V(J$7";P0 !$$B*;G&4. >$*>L9-GE$J.O230 M2P*\)#=>D$V*G:3020H %AA@ 0$6T\ED(=[;X00Z!Z-K/EF8,,(1(2(V@5%D M)$+"#]81XP"""A4KB8D9M&*9,*03AU;ITAI358-A.;%H"JVNT8)R@T7'7-4Q M:J\SK"B6S& 5ZX4AP3BLI@ZK/(RH=+&NV )L(J)^<"PL'DY/EV/)<"29VW0' MH^MT8Z(@<^+D 8IQMA T(C8 Q[+BX(02U!F)9<7E#%*Q8#@2C$-JY) J8LH/ M5@Q'YY3#*C"BZAW'LN+@%!)4J%A6/)W!*A8,!X)Q65W,J'<"RTJ@\^J65F!$ MU3N!I2=T=)-Z.K>IBV5*I8MU)Q9.24%D^Z+5X2 M)H0?K!DYI<-#1E3%DUA8$G5X5*A86')&AR>)B]"4#D^Z'1Z5*U:5G-+> 2.G MW 57E]WV8\*/K-[G5>.]:&/OS=WM=J>U418OO+-X!Y5MQT&A=J9]3>Q[W5_B M^X'1Q^$#13!^)5G_!U!+ P04 " !3AJA0$R5*_>&"Z*+]0V2_KWM0U+R"[J"[;'YYR98SQ.1R'?5 N@T3NC7&5>JW6_ MQUB5+3"B[D0/W.S40C*BS5(V6/422.5(C.+0]^\Q(QWW\M3%CC)/Q:!IQ^$H MD1H8(_+O :@8,R_P+H&7KFFU#> \[4D#/T'_ZH_2K/"B4G4,N.H$1Q+JS'L, M]D5B\0[PVL&H5G-DG9R$>+.+;U7F^;8@H%!JJT#,<(8"*+5"IHP_LZ:WI+3$ M]?RB_NR\&R\GHJ 0]'=7Z3;S'CQ404T&JE_$^!5F/XF'9O/?X0S4P&TE)D9_&CKMQG/4OM&U".!/"A1 D_R5$,R'Z(,3._%29L_I$ M-,E3*48DIY_5$WLG@GUD#K.T07=V;L^X529ZSJ/H(<5G*S1C#A,F7&&"!8&- M^I(BW$IQ"&_HX><$Q2TB",+M%-&FB\@)Q)]:UY-)8%A5K;Z<[, MY=0ZTT*+?GX5\/(TY?\ 4$L#!!0 ( %.&J% XCOFI'P< .PN 9 M>&PO=V]R:W-H965T)L;&#V[==.G$QL]:]87$!B?K5:DK]6ZW#^46Q^EJ]Y M7HU^+1>K/_@^_SE MM6H>3"[.U]E+_F=>_;7^MJF_30Y6GN;+?%7.B]5HDS]/QY_XV0/GLBFQE?P] MSS_*H\^CIBT_BN)G\^7N:3IFC4OY(G^L&AM9_><]G^6+16.J=N3?UNKX4&E3 M\/CSWOK-MO5U:WYD93XK%O_,GZK7Z=B-1T_Y<_:VJ+X7'Y_SMD5Z/&J;_S5_ MSQ>UO/&DKN.Q6)3;WZ/'M[(JEJV5VI5E]FOW=[[:_OUH[>^+T05$6T <"M1U MQPK(MH#\74!%"ZBV@!I:0+<%].\")EK M 7,T!IL6\ .;;1K"[BA-?BV@!]: M@+/]R+&AS>:'P>:#:]D/-Q>#B^P'G,M>;TUV[^+VY;[*JNSB?%-\C#8[0-=9 M$P?X65VJ-MX\W>*R_6?]@I?UT_<+J<3YY+VQU&HN=QIQI!'6=S6WH89W%?>A M0BIYT$QJ-P^^"M+72Q%8T*Y;R2R42*6ZFBM*H[N::TICNIH;2F-[W1)J>IW[ M.51PWM/<$58FW3FXMR$Z#.&U!T1;4 MUH+J^-![XVYW&K/5K'9=JXQE]4]O# BAUDX>"SL^:=HG'?@D7)\E'50EF%*! M2[<[G3[2.2U-H+L_;:_CN:$]-T1O"MJ"I2W8X2/J: ON](C>NZ!7!&,,MM;3 M-?D!X^2#FOHC=%)Q'U-T_&RF%S(X,Z)/0,SD*,#SX2/#Z<#[B0O"CUY8O6U% MQ\W55N/!X2 V<$E4IH$-$!VX2F@TH)F'.!.-#CF53D=>20X(Y!2"!M@ #/($ M"#F@D%,8]EK]T(JZ 3,&(@$2&@S0%D/0%@2RCF*; M$&H9>8$E8%L2;!N0Z4C MDQ@6P*VY1"V90@M:B[*LXFYU( $0@*"9,)<*@%! MA5%+T@;]* 7IU KP;T:H)>T\N; MKC6!)MO_@/H G9J8F"VR 2C1"=M;&E"BB;S5]K=#=+AQ):.-1AM7Q%+7@JQ( M TJT26@TH$03N6L0JEM19[ -E3-20A'K'<"='L#=%QTNB2FGOA*ZN%. 3TWP M:4%F9P"?)H%/ _@TU.S:VR^X-B&?+KI?8 "=AJ(3I&8&T&D2Z#2 3D.M*H-6 MAW0*'0U*!O!I*#Y!*F70%F\"GP;P:8;P:0CL*#Q;W7'W]"1WA$2X6/\!@@VQ MJ65!VF( <,8/[S\+@+/AZC.()%>MZ+C1L0U%"\"T!)C6]NNB1&"6MX!)2S'I M@0W I$U@T@(F[0 FKRQUU!/K74"D)8ATR 8@TB80:=&QRQ B;4BD4+%& XSL M@(EP9L,)+AKJ+>#-$A.MPD'. (S?@D&7F$A=R#@#GB(6< ]. \"Y ME(-.=-(YX(QEYA(Y(.(3$D4/$/'$5!/P3(H SQYPY"F.P)SF M 1X^83[R \_Y(I"*SI^M6WL0!M@Y*GI",S!'M#A$Z8C#^CPQ'343SHN*9%' M#08(>0(ACYQ%UP 2,KHZ@Z6-[/YQJLF42J#0PQDZRF;#!Q>F>$IE,&[,.1EF&#D6U5GG2S(LXG)T<709;YYV=Z:+D>/ MQ=NJ:IP]>GJXFOU)-!=+>\\O^=D-)Y[?\K.[W;WKW^9W]\ ?LLW+?%6.?A15 M52RGS9W3YZ*H\KH%[(]ZV%[S[.GP99$_5\W'9IVUV5V_WGVIBO5T=[=\&PO=V]R:W-H965T M:-F+CEE*V:X1$44)-Q!-K MH5%/SHS71*J27Y!H.9"3(=44!9X7HYI4C9MGIG?@><:NDE8-'+@CKG5-^*\M M4-9M7-^]-YZK2REU ^592R[P#>3W]L!5A4:54U5#(RK6.!S.&_>#O]XG&F\ M+Q5T8K)W=)(C8Z^Z^'S:N)XV!!0*J16(6FZP TJUD++Q<]!TQU=JXG1_5_]H MLJLL1R)@Q^B/ZB3+C9NZS@G.Y$KE,^L^P9 GX 55P[42]HV!4F%^G MN K)ZD%%6:G)6[]6C5F[0?].LQ."@1",!!__DQ .A/"]!#P0\(R ^BAF-GLB M29YQUCF\_[HMT7\B?XW5] O=-,,VS]1XA.K>\G 59>BFA0;,ML<$$TSPB-@M M$5'Z"-DO(;[_1P8IDZ/3P.HT, +A@]/8+A!:!4(C@"<"L3=+VD-B VD,)$W" M()FE7:)6'E[- R]16&G])3*V.L8+Q^$JL0M$5H'H_3.+K0+Q_V?60Z))SCC% M<]1NB4K\ *=V+XG52V*9QFSHVV0Q=)N9)K>'0L*9ZFWB=KS_O;I"\G:X6)%X^V>_P902P,$% @ M4X:H4/=TJ((: @ :@8 !D !X;"]W;W)K&UL MC97;CILP%$5_!?$!8R[F%A&D3J*JE5HIFJKMLY,< AJ#J>V$Z=_7-@QEP.WD M);ZPSV+O0S!YS_BSJ "D\]+05FS=2LIN@Y X5= 0\< Z:-65DO&&2+7D%R0Z M#N1LBAJ* L^+44/JUBURLW?@1N,X;_ #:B2:R?J'B=&A?EU3E%& ABBF-WLB29%SUCM\>+H= MT7\B?X-5]T]ZTS3;7%/M$6KW5H19EJ.;!HV:QT$3S#3!6\5NK8C2MY+]6N+[ M?S%(F9RJS,/9 M,O!:A17K'Y&QU3%>.0ZSQ Z(K(#H_I[%5D#\?L\&233+&:=XJ=JM58D?X-3N M);%Z259>L.?; :D5D-[?CLMN6%19N/*"9B^Q/H6_$GZI M6^$W; MSS8.8HDWY0^V+^<A< M>.T.K3(%7.8#.< /4#^'G= K/*O4'8->=KP/!#0%^AIMMIG!6\"O#D:YF J7OGX#"[/"@4N_'B2)D+/@9B^E@#,6)DR\P%P@MM>(U7J&8&U@=A%[7<26GRQW M2+[X!1*O0&(%TK]B)!@>R&=F0WM>,:Y6L'7APW\_N_$''H>AGLN=(GUYZOAG,%6C&\T^E: M?>/,"PJ-,M-[/1?3?SZW\ U!+ P04 " !3AJA0-; 3U?(! M !E!0 &0 'AL+W=O &+WTXG:M)ULVF3-IELT_8WH\?1+(H%9MS>?0%=XR#;/P*'][P\!X%LHNR5 MMP#">>O)P'.W%6(\(L2K%GK,'^@(@YQI*.NQD$-V07QD@&N=U!,4>%Z">MP- M;I'IV(D5&;T*T@UP8@Z_]CUF?Q^!T"EW??<]\-)=6J$"J,A&?($?('Z.)R9' M:'6INQX&WM'!8=#D[F?_6"9*KP6_.ICXIN^H2LZ4OJK!USIW/04$!"JA'+!L M;E "(:9-%C2[ G!DA"L M"7[TWX1P20B-!#23Z5*?L,!%QNCDL/EGC5B="?\8RLVL5%#OG9Z3U7(9O161 M%V?HIHP6S>.L"3::X%Y1[A7Q894@";!2!%:*0.>'=Q2)W2"T&H3:(+HS2(TR M9DVB-8/6^%YD%++7I':,R(H163 .!L:LB3=+&(IRKP@^V(S82A%;*#X9%/%N MC?A@:,J])@P_^*V)%239@20F1[+?<,\W./::,/4-#K0Y\.H!^H[9I1NX @ 3PH !D !X;"]W;W)K&ULE59=;YLP%/TKB/<5?_!9)9'63-,F;5+5J=NSFS@)*F!F.TGW[V<;@A)S MV>@+V.;Y6HBCKLJ&/\I '>N:R3\/O!+G98C# MR\!3N3]H.Q"M%BW;\Q]/TO2B@65;UKQ1I6@"R7?+\".^7Q-D QSB9\G/ MZJH=V%1>A'BUG:_;98BL(E[QC;84S+Q.?,VKRC(9';][TG"8TP9>MR_LGUWR M)ID7IOA:5+_*K3XLPSP,MGS'CI5^$NE1=VS&"DU>^O>9>/>YY[_$@8'D#Z # $X_F< [0.H%Q!URERJGYAFJX44 MYT!V?ZME=E'@>VK,W-A!YYW[9K)59O2TBC%:1"=+U&,>.@RYPI!;Q'J,2/(! M$AD!@PH"JB NGMZHP# !!0FH(XAO"#R1#QTF=9BFPR!$L)?*&$6+A%)83 R* MB0$QU!/389*K:3Y02K/84P/"2#+A30+*249RLM13DXRF2=,X\[0 ()(36$D* M*DD!8V*8( ,)LOGK) <)\AGK)!_E26)*O!^X!E T22?$%*"8 A"3P 08P=6+ MYAN")S8 /,.2'G2=+48Y\E?K?V&W@N"] !- 4#I! >\&F+[#%KB&,53$(UO& MY4E1D?NN0*C)C. :QN,BCG$V00$7'T[?80I*A\, M%S.&JGGBW,%P">)BOBD$KD&"9IC2@VX.G]3?8 %06OABHJN3W5ZUOC.Y+QL5 MO AM+@GN*-\)H;DA1'?&WH.YW0V=BN^T;6:F+;LK3M?1HNVO;]%PAUS]!5!+ M P04 " !3AJA0';!J'+,! #1 P &0 'AL+W=OZUJ\BLTC$!TC ED8:^QI_R[:[T^ #XR6 RBSGR20Y* MO?CB6U?CS!L"#JWU"M0-9]@!YU[(V?B=-/&\I2P4_\4Z M.]3X#J,.>GKB]EE-7R'EN<4HA7^$,W ']T[<'JWB)GQ1>S)6B:3BK CZ&D&UL?93M;ILP&(5O!7$!-6!@- *DA:K:I$V*.JW[[.]J+S&VD' X(B;*!CH@'-D"OOM2,=T2J(;\@ M,7 @E2GJ* H\+T8=:7LW3\W%_CD#9F+F^>Y]X:2^- MU!,H3P=R@1\@?PXGKD9H<:G:#GK1LM[A4&?N9_]0Q%IO!*\MC&+5=W22,V-O M>O"UREQ/ P&%4FH'HIH;%$"I-E(8OV=/=UE2%Z[[=_=GDUUE.1,!!:._VDHV MF9NX3@4UN5+YPL8O,.>)7&<._PUN0)5I[;M M33O._OT$P%P1+@1_^MP#/!7A3@"8R$_6)2)*GG(T.GPYK(/I.^ >L-K/4 MDV;OS#>55JC96QX&?HINVFC6'"=-L-($'Q7%7A$EBP0I@(4BL%($IAZOZOW' MT&Z K0;8&(0?8FP@CY,F-II^@HRC<)-D+PIQ$MM10BM*:$'!&Y1)$ZU6P;Z_ MV?9B+_(3+["C1%:4R(*R"7R,]JNLSFXBV6MP] ^0V H2[T!\O+UE\6[GD\?M MQA5[D3I";X."5I=?/T;?";^TO7#.3*K_D;GM-6,2E*'WH%(UZOU;!A1JJ;N? M5)]/K\ TD&R8'SBTO++Y7U!+ P04 " !3AJA0QT/<+M,$ #.' &0 M 'AL+W=OE?W+/]>7*PM MG1])G!9K]U*6UQ?/*PX7FX3%(KO:M/KEE.5)6%:7^=DKKKD-CTVC)/:X[VLO M":/4W:R:>V_Y9I7=RCA*[5ON%+UI[;ZREWW@UPT:Q9^1O1%G:7 MQ7]%Q_*R=@/7.=I3>(O+;]G]9]L%I%RGB_Y7^V'C2EY[4O5QR.*B^>\<;D69 M)9V5RI4D_-%^1FGS>>_L?S;##7C7@/<-!/NR@>@:B+X!_[J![!K(O@&3S6BU MH31CLP_+<+/*L[N3M]-[#>LL8B^R&OU#?;,9[.:W:GB*ZN['1G*U\CYJ0YUF MVVKX@X:;Y;-F-]:P7N%5'O1N<.3&EH^:2ZX'78PU@HMGS7ZL88QC1P0<#]$8 MD$^.&&Q 0@.R,2"># 38@((&%/!@,-I;H!$^[D3#3C0P0$R8@0;,]# #:""8 M$";0"&(VE["3)3 @L 'F8S[\Z8$R C$&O)!#QI!($?U AEX9!R;TL!\D(A*< M84088$0$PWZ0:$GT@TEB1$ !44DA\ H"#4C6HR"0'5A%"T0D=%B7@1 01$K MLL HB&!&M!@% >J",H-JVXGJAZ\^D?F""%=B8"0"AO!58AHDFQZNQ#1(4!A& MX7:BIW#9@GC2E9@9B7 @EG5);%UF[%TDQD&BRC *MQ7IQ\DE>L'$2 "#)A8Z MB6&0,YZD)(9!@KJ@V8#;3O2X(IM@:9BDDAE3(P$U>KCZ=Z+'OICTFS]B XK) M48 #DPH]PH#(^:4FZ0B"HW"A.F0+G1Q%.UPH2I&>5&87 4VH:,HD4U MB8A68V8T8H9P56,4](QJHS$*&E0;/7Q5AT3DVR/,BP:\&,H$AD'/*#8:PZ!! ML1E'"T2&>'K7Q,LR (,AT-<8!CVCW&@,@YZP<=\A$9G)F!@-8##$%L!@&,R, MC;O!,)@)&_<=$E'1&DR, 3 8R@2&PR0RQ&[%8&(,@H&H M0 ;#8&9LW WQ[GC"QGV/1.3<8F(,@,$0%M#CX>[_:'<*Z\/A0;W=^QEWQZM_6>F/>G[++^!-O,SNY./&(7-R%?U)ES[;V61:66_EGK^C$(U/[,2Z8> M1,TK\^8H9,FTV05WTE/7 I/YVU/0A6BYJ=^ ^N?]8[:79!QW+(2UZI7%2>Y,>EOT:/ M6XQM@$/\ROE-]=:>;>59B!>[^7I8^J&MB!=\KRT%,X\KW_*BL$RFCC\MJ=_E MM(']]9W]LVO>-//,%-^*XG=^T.>EG_K>@1_9I=!/XO:%MPU1WVN[_\:OO#!P M6XG)L1>%_J*T*%L64TK)7IMG7KGGK>6_A\$!N W 78#)_;^ J V(W@*( M:[ZIS+7ZB6FV6DAQ\V3S;]7,7@KT&!DQ]_;0:>?>F6Z5.;VN2)(N@JLE:C&; M!H-[&-0A L/>IA>/W";9C!$(83A&!742.(.JGH"%,0$ "X@A(OP)* M!S(TF-AAJB8)BK-!*P HC".X% J60D>ED&B"( 8)XOEB)"!!,D.,!D-[?5*" M!EH &$K@0E*PD'0L!8UA@@PDR.9+@4+8'^$,,5K0NTZSX,!*:,"L" M!$DG*$ SKA'^@"2PV5 T1Y)HU&T4#2\(!,JF)(&-B\;.)32;H( -A^@')($M MA^(YDL2C;N,L'4H"@&@R40QL7S3V+TFF)(&-A](/2 );#V5S),G&GL!D*,D8 M%*43MQ[#+L9C%Y-THA\,>P^C^9)@V'L8SY"D!?6_("@A ]060L4)'903]*: MDLN3&YB4MQ>72MOO;>^T&\K6;B8;G&_,L-:,5F\TS:3WG&PO=V]R:W-H965T?/RBAP/H' MV]?GGGN.L6_6BDN2+8" MR,DF,8JB($@0(W7CYYF-'42>\:NB=0,'X'_GO@N;Y4R@10 MGK7D C]!_6H/0J_0P'*J&32RYHTGX+SS'\/M/C%X"WBIH9.CN6><'#E_-8MO MIYT?&$% H52&@>CA!GN@U!!I&7]Z3G\H:1+'\W?V+]:[]G(D$O:<_JY/JMKY M&]\[P9E@&FZ4Z!HEI])^O?(J%6<]BY;"R)L;Z\:. MG=M)XSYM.2'J$Z(A(?P\ ?<)^)ZPMN:=,FOUB2B29X)WGG _JR7F3H1;K ^S M-$%[=G9/NY4Z>LO7FS!#-T/48PJ'B4:8.P)I]J%$M%2BB&;IT<<"^SDB#*/E M$GC1!;8$>$SPD"X3K!<)UI9@_>$8)BH+AXDMIK&8&&,\L3('1>$F3O_C)EX4 M$R^(F=0I'&8SJI.N\.3'[><@O(KC92G)HI1D)B5,XHD4ATG&51Z"()AHF:/2 M-!G#G!HTNK@,Q,6^<>F5_-HH&PO=V]R:W-H965T)]5_CS(K;UN7N#]??$O?+DWWPMMMKLF;_%,V?UU?JO;)&[V7CF46?0(_Y.Y:V>W#M=*J]E^;U[^.VT=?TN(IG)8].Y2-K+A]S+ M+.L\M7'\JYRZ(V=G.+W_Z?U+GWR;S&M2RWV9_9.>FLO6C5SG),_)>]9\*V_/ M4B4D7$=E_[O\D%D+[R)I.8YE5O>_SO&];LI<>6E#R9,?PS4M^NMM^$>$R@P; M4&5 1P-*%@V8,F#W&G!EP.\U$,I C :,+AH$RB"XER%4!N%H0)9'*5(&D6;@ M#=/1S^]3TB2[357>G&I8HM>D4P)YB-H5=.Q>]@NF_Z^=XKI]^['C$=]X'YTC MA7D<,'2&$7/,'F&".>8)8<(YYH PT1SSQ<30F,PQ7Y&?>(YY!IC8'S%>.V[C MX%$X>+1WP&8."'; H /6.^ S!U0;D0$C>DS18\*0^98X.:3A@(9I--R@X9A" M0 H!*+1U=# Q++#D$4"2 )!H"_$P8())'FTA]R?C-:RA7\)FX80PG!"$HZWY M0V@,JQ[)$F(61 2#B$ 0FJCV"*.)ZFD9,PLDAH'$P(&FN'ULC#H#D_-DPOC" MY! ?5S;?"$CH3 <%FHX^#0CC=C)+&26 C.ADQ""+[42XY! *B/22H4!3HF!I M '%Q(F9U$CZSN,"%A_#[*R3!A86854/X>F51H#M$1'!E(69I$;ZPN,#5@(0K MY%+.ID M6%J,K-B>8M4PI!HMVX,"S0H207NN.X#SH"R;9M"7B*4:,*Q#MJ(O,2POAG:\ MQM[=[$LTHM9\L< 8T ZUN<#:82MZ$\/:86B#:.0;&?FR,+;FBR7&@'JH)5B. MU<-7-":.U589!R(C%IJ,,>2X"M:$[=\(Z*/1"W?9VY^ M)=+8.K\<*X>#GD.9S@24$P@K$U8.1\JQ=!V.E<-7*(=CY7"PJ]/S_TJ)W7LFG*O#_'.9=E(UN/_J?6UT4FI_$AD^>FNPW;^VHX MU!L>FO*J#BR]\=1T]S]02P,$% @ 4X:H4&&T7$A? @ F < !D !X M;"]W;W)K&UL?97;CILP$(9?!7'?Y10.61&DA:IJ MI5:*MFI[[9!)0&LPM9VP??OZP++$.'L3[.&?F6],/)./A+ZP!H [KQWNV/8_5#72(/9 !>O'F1&B'N-C2L\<&"NBHG#KLA;Z?>!UJ>[?(E6U/BYQ< M.&Y[V%.'7;H.T7\E8#+NW,!],SRWYX9+@U?D SK#3^"_ACT5.V^.H?":><^!8]5X$L'I?C=PL@6:T>6N+XD 0\UE""0>5Z@ 8QE) M^,$ZZ*8I Z="K?K:]>H[Z39I-;G:'<'((9P>1^R.' M:'*(WATVJGA-IDK]C#@J(W&8M32JLU/O1+5,6*]%',:Y M=Y6!)DVI->%"$\P*3T2?4X2V%&6X<@]O$U1K11"$]A21M8I(!8ANJDCL 3;6 M !L58',3(#6.06L2I>FU9F,4\J'D!B.V8L06C,S T)IXD<,W*-:*.Q")%2*Q M0&P-B&258G46%DEFQTBM&.D:(S(J+=-5CL!/C .K+*(@O8.265$R"TI@H&2K M+*:D6DM\.\762K&U4!@WJ=RN4GR*C>M<631A<.=&BPYM[1J^A24RVX:_N@V! MOS6_CE6U:$$:QUOTLP[H6;5^YM3DTG/9.1;6>;P\A;(?&O92CAW5)]_#Z)GU M ]%SVS/G0+CHMJHGG@CA("#]!W%:C1B3\P;#BX^,WH=24%< M8,;V[Q?0&M?P(MS+N>>%]%4(JCZ/P.58XAA_ M)=[8I3,N0:IBH!?X">;7<%(V(@M+PP3TFLD>*6A+_#T^''.']X#?#$:]FB/7 MR5G*=Q<\-R6.G"'@4!O'0.UP@P?@W!%9&W]G3KQ(NL+U_(O]R?=N>SE3#0^2 M_V&-Z4J\QZB!EEZY>9/C#YC[R3":FW^!&W +=TZL1BVY]E]47[618F:Q5@3] MF$;6^W&<5O+]7!8N2.:"9"E(,M_+).2=/U)#JT+)$:EI[P?J?G%\2.S>U"[I MM\*O6?/:9F]5MDL+V[F:[L84 M&#G,UYXL;T_U#U!+ P04 " !3AJA08XQOO00" !O!0 &0 'AL+W=O MO6E9IQBJ8Z\06+@@"N31 D*/"]!%'>]FZTL%0=A5YTK'WDS-B+/GRK,M?3@H! *34#5LL5CD"()E(R7F=.=RFI$]?[ M&_NC\:Z\G+& (R._NTJVF7OO.A74^$+D$QN_PNPG=IW9_'>X E%PK435*!D1 MYM^*7#<(WP_L)<(K2Y"0Q"N2\2QG2"R$D2&(/JG#>&F#1,F,9C> M8,(XVCC98^X_OSO--,H^H%YT_7" M.3.I7I&YZS5C$I1"[TZUJ%73;SD0J*7>?E)[/LV Z2#9,(\WM,S8_"]02P,$ M% @ 4X:H4(01AR2) @ ;PH !D !X;"]W;W)K&ULC99M;YLP$(#_"N+["F?>JR32TFG:I$V*.G7[["9.@@J8V4[2_?O9 MAB *A^0O 9OS/6>31]SJQL6;/#.FO/>Z:N3:/RO5/@:!W)]93>4#;UFCGQRY MJ*G20W$*9"L8/=A%=160,$R#FI:-OUG9N9W8K/A%567#=L*3E[JFXM^65?RV M]L&_3SR7I[,R$\%FU=(3^\742[L3>A0,60YES1I9\L83[+CV/\/CEM@%-N)W MR6YR=.^9K;QR_F8&WP]K/S05L8KME4E!]>7*GEA5F4RZCK]]4G]@FH7C^WOV MKW;S>C.O5+(G7OTI#^J\]G/?.[ CO53JF=^^L7Y#B>_UN__!KJS2X:82S=CS M2MI?;W^1BM=]%EU*3=^[:]G8ZZW/?U^&+R#] C(LZ XGZ$"V\B]4TS-I#T*^TP7+_7L=9/$Z2JXFD1]S+:+(:.8B$1#3*#S#Q"" M0HA-$'V 9'B""$T0V03QAP3YI,HN)K4QC8TI<$2,(F($44P074PR0H0X(D$1 MR1R1A!-$XHI(442*(&""2%T1&8K($ 29(#)71(XB<@0131"Y*Z) $06"B">( M8H98^$=!B+L5(I!D*E?HNA%8,!@0RDQA<-X+KC @#B<+#@,N,;A8W >-"R5Q M2A9 N,K@XC+,98ZA6-H1+C2X& USI6.2)PL@7&MP\1KF8L=)OO2:<;G!Q6Z8 MZQUG)%T X8J#B^,PEQRBN(@72+CIX*(ZS%V/HBQ9^LKAOA,7W\G<]T]9"@NO MB>#.$Q?G^Z#Q%Y&D^OPFI*IA6["<5I[*1WBM7NNNPO<&1<\5TRO!!EWW6 MW=\PJ-A1F=M,WXNN!>H&BK=]>Q<,/>;F/U!+ P04 " !3AJA0(>\&_ML! M J!0 &0 'AL+W=O :F-F.Z&[^_F#(-9Y4OZ ;=[SO.]0I->XPEG4'C,@'/L*@G[1<,*+T5)RQ' 60QA8QBJ,PS# C M_8"JTJX=157RBZ+] $<1R MC1/P^ .73'FW0;>&E/W?*+."J',D9OH/Z,1Z% MGN&%TO0,!MGS(1#0[M'C9GDZW')/(###$Y3"2_'8_4'4$L#!!0 ( %.&J%"F44,-_0$ #X% 9 M>&PO=V]R:W-H965TZW M4@X[A$39 L5BPP;HU4K-.,52A;Q!8N" *T.B!$5!L$44=[U?9"9WXD7&+I)T M/9RX)RZ48OYW#X2-N1_Z;XFGKFFE3J B&W #/T'^&DY<16A2J3H*O>A8[W&H M<_\AW!U3C3> WQV,8C;W="5GQIYU\*W*_4 ; @*EU I8#5)2/"?+WR(B2C3D59H?C5CEUOQM&NW(6.MDZ('"&:"&'Z*2%VA/B=D'Q* M2!PA61"0+<7TYH@E+C+.1H_;OSM@?8C"7:*Z7^JD:;994^T1*GLMTFVQ9DR"LAALE,=6/6930*"6>GJGYMQ>:1M(-KC7"DU/9O$/4$L#!!0 M ( %.&J%#$SP3:OP$ #$$ 9 >&PO=V]R:W-H965T0/J F0M(T :9M5M2NU4M35[CX[, 2KOE#;">W?U[>P M21?E!7O&YYPYXPOE*-6K[@%,\LZ9T!7JC1G6&.NF!T[TC1Q V)5.*DZ,#=4> MZT$!:3V),YREZ0IS0@6J2Y_;JKJ4!\.H@*U*](%SHCX>@,FQ0@MT2KS0?6]< M M?E0/;P"\SO8:MLA">5EG(0FDJ1*.@J]&VQWA0.[P%_*(SZ;)ZX3G92OKK@ M9UNAU!D"!HUQ"L0.1]@ 8T[(VGB+FF@JZ8CG\Y/ZH^_=]K(C&C:2_:6MZ2MT MAY(6.G)@YD6./R#VLT1);/X)CL LW#FQ-1K)M/\FS4$;R:.*M<+)>QBI\.,8 M]4^T>4(6"=E$6!17"7DDY/\J^-Z#,=_I=V)(72HY)BJH+AP6('(YTOB$IS=_+ZGN]BK&9_-AN=O7-=-4T^^O9 MK'Y9O6^BL53?])V,Z,L<[-ML=Y-%_/^V'VU MF)>OS6:]B_?5I'[=;HOJO[NX*=]OIFKZ<>#K^F75= =FB_F^>(E_Q>;;_KYJ M?\V.K3RMMW%7K\O=I(K/-]-;=;T,67="K_A['=_KD^^3;B@/9?F]^_'[T\TT MZR**F_C8=$T4[<=;7,;-IFNIC>/?H='IL<_NQ-/O'ZW_V@^^'1=)V\=CN:G[OY/'U[HI MMT,K;2C;XL?A<[WK/]^']C].PR?0< (=3VC[_NP$/9R@?YY@^L$?(NN'^DO1 M%(MY5;Y/JL/5VA?=3:&N=9O,Q^Y@G[O^?^UHZ_;HV\+Z;#Y[ZQH:-'<'#9UH MU%$Q:UL_=D&HBSMBI]-Y!TNN4(IP%QJ.0O<-Z+-1"#$:V(#I&S!G$9@D#0>- MZS6[@\:X-%E+H+(V:!R,A<%8$(Q+@CEH[$DW9(U*8N$BHW,A+PZ&XD H/@G% ML5Y4EKM$M>2JD)V,ZBP6#V/Q():0Q.)Y+WG(DU" R"B+0PDPE !"27JY"_P* MDA"8P.Y493U^%B:<0\MA5XCA364@OYA+*6IT0$.:>XN"C M7$"$PKA2_H*T8,PHQ!F6%HX0[7.79H6KK,D%_BH,&H5((R2%,!TH&Y\4PHXF M[FB>%.)61<4:R>1J3=C1!!S-ZC4!K_*"#51RQ2;L:.*.YC5[$)V;Q!&+A\N\ MMP*!">.!T-PJK=N#Z"P]N4YO8J1R2J 58=000DU:NPDPQ&5Y6J"0S'@G!811 M0QPUO'X3GSY=*4,L(##+DF8VA+%%?)K%"R;Q*10JF$@F%TS"$"0 058P",%$*K%@$H8@(0@*'-48@OH""&H,03T&@AK0#11,*!,+IL80U&,@J$=!$*AD M"&IA03@&@IK3S3I6.8'*&",M3S$#]1@&:D W;6P:#E"I3,H.9J >PT"-YE$V MI&MW*,NU$0+"#-1C&*@YW"AGX0!0!B/=RQB!&JPT&7$T9YNW[-[A(JR'3*1^4B:M$@X%ET!PKW4,R8+?*L'J 5-I+V[$8?A; MC]TREF.M15(:#E)1$.!G,?PL@!\)-XW%P+(T_J:Q&#,682:M"!9@IIU;IDD! MJ\P\2"/"F+$(,\)"U0K;[O:"I& _6[1?SI+"IR@H*5SU25(P&RQ8RX5,: *S MP88+DH+=;+F;05*X3U%2N$I.BL-N=F"#.D@/1; #G1J?%(<=Z-"4(4V*0[,! MEA2@^B0IV,T.N)D$^SCL0'?!-K###G1CMH$=+[LY>V:Y!"IOI1U<)SS\ M4Y M"+,-AQWH+JC.#CO0C=D$=F![U[.5/E!1EDN7&;O9@=HL;9AZ[$!_P?Z'QP[T M8_8_/)C:\_4(4,GK$8_=[+F;;1#FR1X[T%_P#-MC!_HQ3[$]GT,#^P"5;!^/ MW>RYFVV0FL .].Z"I A/C=%C8Y84ODX']@$JV3X>N]F#Y;PT__/8@?Z"Y7S M#@QCEO.#R'UN'Z "]IF=O(^RC=5+_^I./7DL7W=-]^;'R='CZT&WU+W/DAR_ M4]?+PTL^/YLYO'/T9U&]K'?UY*%LFG+;O]/R7)9-;(/,OK37;!6+I^./37QN MNJ_=/5H=WO4Y_&C*_? >T^SX,M7B?U!+ P04 " !3AJA0QJ7!])T" !R M"@ &0 'AL+W=OCE- M"S>)[=Q6)#&_J"PMV%8X\I+G5/Q;L8Q7"Q>[MXG7]'169L)+XI*>V$^F?I5; MH4=>JW)(.8,>%N\3S#4&&8!&_4U;)AWO';&7'^9L9?#LL7&0O-[.CDJUY]B<]J//"C5SGP([T MDJE77GUES88FKM/L_CN[LDS#C1.]QIYGTOXZ^XM4/&]4M)6BU/R+X#<&_$X(/"4%#".Z$T*95;\5FLZ&*)K'@E2/JUUM2\R_" M\T"GOS>3-FS[3,PUF433V+L:H0:SJC'D 8.?$9L^P@_\%N-I!ZT- ME8 MD9X >5YBW4=@W,%L^IA)!+OPP3!\RP^>^ ," 2@06 '_26 &"TQ @4G?P0QU M7DF82/J@$/6^Z!!HX . X0+& M_]-_P MK!O =I"QHS*W4WTOZBZH'BA>-AV>U[:9R7]02P,$% @ 4X:H4(X5](=8 M @ FP< !D !X;"]W;W)K&ULE57MCILP$'P5 MQ ,8:FV_.R)AA-\-$D5]:#O M1UZ%R]K-4A/;\RQE%TG+FNRY(RY5A?F?+:&L7;O O05>RG,A=<#+T@:?R0\B M?S9[KG;>P'(L*U*+DM4.)Z>UNP'/.X!T@D&\EJ05H[6C6SDP]J8W7X]KU]>* M""6YU!18/:YD1RC53$K'[Y[4'6KJQ/'ZQO[9-*^:.6!!=HS^*H^R6+N)ZQS) M"5^H?&'M%](W%+I.W_TW14FI\'OW+&OS;'O^ M6YH] ?8)<$A0M?^5@/H$])$0F.8[9:;53UCB+.6L=7CWM1JL_Q3@&2DS%,#/(7 M[(BL!-'C=L16@O@!.SI,.&HTA#"*,KK2+\;&Y_X>3L4DM]>8RBPX390'TE3N);/7G,5?E! MTXVM[YB?RUHX!R;5A6NNQ1-CDBB1_I/Z9H6:E,.&DI/4RUBM>39W\!4$L#!!0 ( %.&J%"&>]:BNP$ !,$ 9 >&PO=V]R:W-H M965TA=4/ H;)>@;GA"B5P[H6N(ROJE_"[V[ M7D[,0*GXGZZV;8[W&-70L NWSVIX@JF?+493\S_@"MS!O1.W1J6X"5]478Q5 M8E)Q5@1['\=.AG&8]&^T=0*="'0F;)+_$N*)$-\1R.@LM/J5659D6@U(CX?5 M,W\G-H?8;6;EBV'OPISKUKCJM4BC;4:N7FC"/(X8NL#0SXCR7\1V/T.(,S"[ MH*LN:. GGURDZP+QJD _UQ^,GWNI$$G9=U)A_-HE++@!*,'=P=;]T+GA$-C?;ASL1[OZ9A8 MU4]/D,S_@>(#4$L#!!0 ( %.&J%!0TKO&60( -D( 9 >&PO=V]R M:W-H965TO;0@EX(3L3[#-O/',A(=)&\;?1$Z(=-Y+6HF5FTM9+P$0 MNYR46#RQFE3JSH'Q$DLUY4<@:D[PWA25%/B>%X$2%Y6;I69MP[.4G20M*K+A MCCB5)>9_GPEES]X6H&>I9]49)*%*QR.#FL MW$]PN8:)+C"(UX(T8C!VM)4M8V]Z\FV_NG XOK!_,>:5F2T69,WH[V(O\Y6;N,Z>'/")RA?6?"6=(>0ZG?OOY$RH M@FLE:H\=H\+\.KN3D*SL6)24$K^WUZ(RUZ;COY39"_RNP.\+8'BW(.@*@E$! M:)49JY^QQ%G*6>/P]M^JL7XHX#)08>[THLG.W%-NA5H]9Y&7I."LB3K,(M!_$J $]"I\JPK?U ?#^AC:"0(K06 (P@%!'(]SB*P$T7P6+00-;/JAY]DWB:V;Q!:;R$Z0 M6 F2QVTNK 2+>9N+B@]-F0W%T@\+>)##\0";V-H'H@4R0Y3F/@G$F,ZAK-?:>@].F0P,Y MUQ3VCH+Q!S*Q]Q1,'L@DF;SBXC@91W(?U&H!@S-&'_H_,#\6E7"V3*KCRAPJ M!\8D483>DTHW5]\9_822@]3#6(UY>]BV$\GJ[D,"]%\SV3]02P,$% @ M4X:H4.6*'PSF 0 _00 !D !X;"]W;W)K&UL MC53;CILP$/T5Q >LP1!H(X*TV:IJI5:*MNKVV8'AHK4QM4W8_GU](92F7FU? M8L]PYIPSCL?%S,6S[ !4\,+H( ]AI]2X1TA6'3 B[_@(@_[2<,&(TJ%HD1P% MD-H6,8IP%&6(D7X(R\+F3J(L^*1H/\!)!')BC(A?1Z!\/H1Q>$T\]FVG3 *5 MQ4A:^ ;J^W@2.D(K2]TS&&3/AT! .IAEIM]8#HY<_YL@L_U M(8R,(:!0*<- ]'*!!Z#4$&D;/Q?.<)4TA=O]E?VC[5WWJ.X3O MPJ"&ADQ4/?+Y$RS][,)@:?X+7(!JN'&B-2I.I?T-JDDJSA86;861%[?V@UWG MA?]:YB_ 2P%>"[#KQ0E9YQ^((F4A^!P(=_8C,7]QO,?Z;"J3M$=AOVGS4F$4BSKQ+8)W'$_Y0G./$3)%Z/B25(MA[CR$^0>@E2 M2Y#^11#?-.DPF<4,SF7JU]AY-78>#7RCX3"[C<8K;61>BB.1OWU2:'/]&(C6#IX,*CX-=N@WV76V[[&]OG_@[F'X2D3;#S(X&[2^>.5O4$L#!!0 ( M %.&J%#"#!>G4 ( ! ( 9 >&PO=V]R:W-H965TFZ!A_%R6 ]#YJVHB57TK9+A$2AQ)J(EY8"XUZRX)RYU3?C?#5#6K7SLWQ9>JW,I M]0):%RTYPT^0O]H=5S,TLARK&AI1L<;C<%KYG_!RBV,=8!!O%71B,O9T*GO& MWO7DVW'E!UH14#A(34'4XPI;H%0S*1U_!E)_W%,'3L97,G@C8,OJ[ M.LIRY>>^=X03N5#YRKJO,"24^-Z0_7>X E5PK43M<6!4F%_O;9#?RW,'= . 2$8T!OSL. : B(9@&H5V92_4PD61><=1[OOU9+=%'@ M9:3,/.A%XYUYI[(5:O6Z3G%2H*LF&C";'A-.,.$]8FLCDGR$("5@5!$Z580F M/KI3D;H)(B=!9 CB.X)LED:/20VF,9@LGZ6ZM3%ADKF%Q$XAL4-(/A/28Y*I MD&2QF"FQ07D>// D<4I)'%)FNVP2>Y9];T,>= MV-SX.'7:$#RCIAIL:\OZ/ZB63M M&UL=51;;MLP$+P*P0.$-FW)J2$)B!,$*= "1HHV MW[2T>B!\*"1EI;S/?*=G)1Z]<'W(L4K;P@XY-8S,+>8#0;1,L%TDV :"[0>"^*K- 1,'C R8+SQ&BQ+1@L3N2N(SAM[& M5R)D=G4"=!4>K4&YZF08F%EVFHL[&J[^/WP8JI],5XTTZ*2L>T#AFDNE+#@K MJQOGI79S/ 4<2NNW.[?7PVL> JO:<5#)]&^1_0-02P,$% @ 4X:H4"+W M)Z73 0 L 0 !D !X;"]W;W)K&ULC93M;ILP M%(9OQ?(%U&#(1R- 6C--F[1)4:>UOQTX!%0;,]L)[=W7-BY*4EKU#_8Y?L_+ MMD+^63"WY5.8X<$' H MC7-@=CC!%CAW1A;C?_#$TRM=X?G\S?V'[]WVLF<:MI(_MI5I3:/U%YU$:*X&)1!'L>Q[;SXS"N)*M0-E] M0P&="M+XTX(D%"1304Q]\R.9;_4[,ZS(E!R0&C]6S]R9B#>)W^37; MK;;94[&DZXR("AB8?PJ2S,.D78.8TUS#I^YU9 MKF_?PY"SL^/^Y3],'=I.H[TT]ACZ@U!+:VM\9>'U/ H39NNK)S-?Y$ M8V!D'^X',EU2Q2M02P,$% @ 4X:H4 X_=6VV;P \\X! !0 !X;"]S M:&%R9613=')I;F=S+GAM;.V]>7/;2)8O^O=]GP+A=G=++T 5=U&NF8Z09;G& MTUXTEMTU,QTW7D D**&+!%@ *5D=]\/?L^8")+C([JKJ>!-1419)(->3)\_Z M._]25>OHRW*15__Z[&Z]7KWX[KMJ>I#!X]J=_J;(__+-'J_6=ZD9?V);K?7&0Q/NZ.6 M5S^FMQDN* SA?;)L='!1S-(O617_X7>]P M%E%11D1#Y6.$#34F?]G2V*?D2_1F!LN2S;,IM=@RN]->ISLY[9^=G;6T=#Z; M 8E6L?X1O S.QLRJW55%O=9/FUNP_FN)JZ*:ITLHO_.5L&E/AMVQX-&J]0"L(#@ M*^-1@UK?%E/HX^JNR-O(;=CO=2:];N/-3]D:2+281[W^TKFIX$!4;>.[7*;E+4[LA[)X6-^U-7670E.P=ZLD;XQ*U\K;V6NZ.:(/ MFS50;8X[U_8:+$8)-/<&[I(OT9_31O-(%G!V!Z<-!G<.?'5&O/7U(FFT;QCO MZZQ"HOZO%(CM-7S96(JM;%O>EDL@^/Y_]!KD*'3C=MUV?W0ZO7YGT&RB@ 7) M*]AC^*LJ%MF,-OQELDB ?>".I.L*KNC/UZ^BH^?'T?,HRZ-/=\6F@N5N#/%5 M.M5+N=?@I#K:I*J@S1>-GY/J+H)&HRG^D?Z\R>#(PO.-3CZF<,]D4QPF/AI' MTS"MO\YRF$,&"]/2(U X7BI55*;3%'J[602NK9R$!&FB_O/G_"9;+'CQZ+D* MSG!;6S(>. 3VF3BZ24&0@M.V6!0/M.1SO.S*=):MH[<%I/?P^H59=9LY:I,5TDVB](O*R22BO:G6-\!\YAZ MNQGN?OLSM7ULW9U#5JO11W9[M^X4\\ZF2F480,P?5LC7<"<6:0+3"BY+^%5> MT73;BW#W0OO ,*#C_X -_L#4%#]^P^TQ'F1=_99YO!O>MP660)$ M"A)ANN4$K)+'$,G"[R"RPOX 2P8"( DJ/-9$GG1Z:QL0W7' PN$2IU6,BIM% M=DMMAS;GB>W[:!3#;Z(R1LEF?0>X,.,V;Y69!%_PL!8TH:S DII8JL&L[ MZ8HFL,^;^XD<1U<)GI^[= V:V^(8#L7SZ+L62P&I/21&P<&S=QZH,JP(M^OZ M#=*S-'"TJ6:6$.KTWWRS02#1$7^U]ZM"+X>^YM)6V[L^P>\]2?^U_6<8>B_> M-;]@9_M-+DA0ABHJ) MAJ^!)H7+9\6N2," M++@2YEL8QJ\B5U-.AH=Q0JNRF&U ,FVYP4"Z2I'+4+,S>&91D!S25%\7"^@O MCH#CIZ@AX?/);)GE9,Y!GM-R.6X9=/.VJZIH7A9+?1:VH2F&PE4&(B&L/H@; MC4[YRM,.@M(4]2(2(C<2K9,O(:FVN,\J9 PH/6Y[\CW[6RQ00+<<;A^3%'"Q OB'M8$-.ZI66))Q(";WUQKZ/H"P67=$GLK6(&M2'7*- Z-N>B MO)*+\H(ORO97G!OS%=^8K<^^3&^S/,<=NI&;3/< ;WQ7,Y[L?G77&V_R:4ER MXQ$\1G\=XZH%5_:O'XL%J()%^9"4L\:P+[^DY32KR*;&E%>LF$VVD5#K&TTJ M$ME6GTMP!%L:7JX6Q6.:\M,=(.H=JLKTH'IQ;O7%SF.N)#*0MFO#L;YM*M"#8[#*=%B!$+E++;H4$R#JE7+G8 MI^E7*2A(()"&*/A\B>KAW]DU(9<;S*0,VAZ56TY>,PXSKWL#Z5CXPG<[,;.9I\+WLD[ M-R=D^ZIV;>#5!JY"862KH'%GYUBR0#_M]L%M8RF+:9K.1)I*A157.WGQ5?)H M#LWAYI+&?.:!L89>FLGM1"(,&VMKUEU:R'*[*?!B[S>1JX"@"%*@/\< M3HG$N8P^E+=)+BPQ=G@_ MOH;=7Z&U"597V['ZOG,U;/'NAT<1O;%.B=OC3#9YL@&ID9BH7D=3 M]SJ:F]XKTWM,K_[A=Y-^O_N]>+-B^MC[7K]^2.O?;"KS#4Y3OBTVI7Y+ZC^- M3)WIZ"P_H:.*/%'6$ZB3Z,26JQ!B(6/5"-MV@[PV( M:IUFP!'6=PF>WD6&L1)L*X".8331=)'1$B-]1;=E\8"GK&*C9Y;/-D@<*7=T MGZ4/MLD$_H.F@+2!)I/5"@T9T."4J)FZZ""S("X)9P-H*%G ''%L#T"Z<(9P MKVYI$- H*"+1.IW>Y<6BN,U0)7RXRT!E@6?O0*,"%I"BVH3&S WH$HO'*%NN MR"T.PT7?.#6$?S QP'SZW6X_QGFB)H:?5P MQDFT@K&E*0Z4J ID+217X6RL%2:BU;BK@;.88?!!=)/A5\ F9O?(X8E"3Z)K M6@&>L*[8,IFE1$7K!%8-&K220*7].Y8$' ".&J=X>5\LD%+^\+O>Z?![71/@ M"<"&8?0X7#.ZQV@%0C4R0#XHL%9+7"I+#+06*+2L,_)HT]#7H"*?1!_@IT!+ M$2YQ\9"B=>SFT=T!(*"2PC]X0FLT=Z!Q.V7A**ZM8;*X+4#.N5O*$2A!0YP! M[2PQW /'M2#G./DI7=K2@[#(;DJ<##-H6H1[.)$P_ K/<>_T>^2.Q/U9"(;3 M<@,:.VS))V(__G"*S1H^5;"0Q+\M&4*7H)MD].T*_5]3OLG1HI&G7]9BSB'* MK@\$:>,F-9N#BT#MX_CER-,$UCA59!WNB-/\SI 1\X!UMDP[Z1R7&*D"'H.> M3Y"A)J)Q8X?(H?RYP; >*.3DZXB(-O46XQ0JTR&TOH3S!GLE=,3>C!@7<+$A M-:0LX+AFT^@.1.W.^JXL-K=W,+@(;@=@'"IDPRH62WBJ@DLP)8$'ADL7U#3" M<#BTD?$-O$+!#.X1]X P0Z)SO$"#&5S,<%V(/DF\CFG*8R0P1OC,@AG3._#* MLDB@)3S3W#R.SS(I((9[)@4X[-,$[N]'G!KLQ&8.=^"&EDX&F%8L'%5X3E#) M ?:WH29F:97=TLSQ5"[1S(@V/MQ:]CW(/%'BF_+^T8R1Y!*'6)C3$0N#AG)S MR:!DNB1-0V?*0ZV8(H7$Z=39Q<0AQ0[CWY-.#'%8@CF)+@W!-T8 ?X!V.B,B MZN#"/<) Q )%$TQQ_8,]E<7?8'G@+=QGFK#R#"8E\0#!!2<7,32 1!<%B6X# M4D:)1SM%EE?;0JO1H#22"8E\N@/F9V@$I*/-0HYFOF7-[9'739;S:^F$MF+] MN,+=ANG@_,@>0FXHN$.7JP5)!>4F9Q,E!1+(\?,&;L13'>VB*CAX@5>7Y$%']_7,K?P!B!B^HO4Y@I/>LT M#\_ )7P#,NC4_QK>,CK0M*+//CNMGY D9Z:&JHD^&'LTX3)>.91":+)*4=LV M-!AZS'^Z3,YIW?G5FQ/0Z=(H)J%1D=7&?-+@GLEXW>1$1$BO<.;PW*F@!?R.^'669VN^3SP)>/:UAT8&R!*P M2)(K$&67R33=T.B V)+RIW2M4GR98@ YCE_%PQO5U.88',?K901F?8WO]Y0Y M.(MJMXOB!C?2ZTYF33(!VM@*3ZR,?7$=@QNR::HCSQJ,QQS[EHV@M241F^@1 M3@-KDD*^GK+PQ!4&BM@Q49"OA:/?I2#/)H\TG4V9TP*LD2T[#=.%S%WRF4\- MIX;Y%P^YV0_D4N]06$#;7 Y<":6LZ!VTS[$+#R@SKNG6!?(&MA]=Z: _V?X^ M*:?')7S+"Q2=W\*U2)1\Y&C4[T$ZPK,;6B[SABC-QZQN:'&B\Q^BHUIK M^@+?'GOUH3>8>1AFAVLI.I^1]P_?X0!7UF,SS](%&5KN-D"%T5V:+-9W4[B; M3Z)ST!/NLUF:6RV*7+BI[.>7-=EH? WJ)GTLD&I]JO$(W&J(1+YD \2A^.2B M8EY3N&.5ERT#Q#0M.6WT(GS(4.ZIF1%H(,@5C';$4J9C9R ;1\8>\2J])P\V MGWM^,[I'/C\E2X(5_N<844_L&/^ ;U"#8M,-G)4EM#%/63?,J\T2HQW)S3I? M)/<%,IMYF0";QKA+-JG=EAGCUAA][E'3=M&.'E+#34NYBT]J/2@?ZQQ%>=92<(LKIIP*#R)3"=ZI]1.))S 3T/X,)ST MOX]>O3^/T!)>I34V#6K2)I>51W+_.NYL]C?!_* *K1FQ*'YPE6-P0[*BTV<" M.ZQ*(J8E=F6T^:VX(R>O4^K]>(/O^L/!DW6*9S3 M>>+?B-=$URBE3TGR%YM2=/'J/SOC7F_($IELQJYI&JDHZ299;# M\*<9E!MDY$SK6U9'73-LFV6O M#.DM-^N$=;/T"["C"O5J/2 .F;"!R;5"ZAK3."B D-RFH0-WS5P?%NBB6"Q@ MK4IK/@_$*#RJ,?+Q.^CQ ML0/$B.9=M4B3.4G:O_)O&K&/P[B6M+G^:'0,L2&6LB6NR1IDD4%&:QT:,U(@ M 5QUH!?Q1LV4A;G7 EUJ+@G"_554Q9)#(BE&1RF.S][- N\/$:B54J9D_GZ9 MHJ,'.?X-W%-S-&6HWZ'2V]F(M%5Z2P:U%Y@ 8DQMEW(5_$8$_0<+,O%6 M2>9'NQI/E%U /&'WG0@@>XH?#1-$FR#RGL[^2^_.J8P;!8[&:<9NI)06[#LZ]SS[VGTW*S>WSAU.:WB3+C)XFJ^FK[/2 M8--XZ)@^[?C",D5M,#P S#Q128FU">&/\GM"<92P6BDI'#+O6>0VC!:+4LQ^ MY%9:9@N4<.A:\J8+GW'(LQ2#O%CU##5+ .:O=8Y15*0!3; M1SM4_>8DHH:4F>1YL0&.,D/W,+-SSW@FHA"'!M45@R?+G"C],N7#/4W6:A/" MC%X%LP"6)@Z30V&F_[Y9D-PWJ4U3J?L.R&)6Z'7!M (2$!LB2(R -6W@A",;]X;34/PF6X7AFW2:+$W( M$9/V*GD$YH5T['CMGO=.NA&PD 4N _8(8QEW0>9XA"?GP )HO,GT#OF*;E"" M;T#G1:X."I1V"MQ7"MZ54 ]O[/\.0H&5XQ]2B2R#H>7H%DSMXGP^N3Z)7NL] M^PHYR;D3'H_;A020K8D 4%19D!\LH[ V"H$0<4^"P&[5 4I+*1-VP\1O=,4L$1(U$!B6SK!LL=^#G/3)QE M]8]3>F#1BW(Q0[M/')7%([3SV+F!FYT,3G!N.LP=Z/@JH]"3VN0K#86IL>WF M93AZ(,DW3K9]'LGT>=OX/&MV2UEB^AB6F6KE'@A M'DT2TK<+3#%Y\.%AZ](GEUMJUL#3(%!86%J;N,>PLCPHH@%;1Q:9U71[]"?7 M+M7*+/"TH=VWW*BB>AN9 %HDX<\VD'H/4@1T4\\V"R^&1U_9N5A!4U?GMZ."_Q#5QN8S@C4X2 MG*K^2@0KX,>!U$&O2IV(F/0T*H69&:?- [\'K PB-H\,]0 M(^TW6/A@,9V2$4!%%9\?Z-*W'K'$GJVL'F:0MNQCK%-E!R+^".2U6;&\A<%* M3CJRN_=5"A1D;RR?!S0MFD!A2=YN[+-1YQ(Q(V(0Z61PIG(-51:A+HF>3TY& M1K($2;VN4--X!A0L:(4&# II7'"M/&CL&"DS7'!/*UB[\>XEGW9EI+5"2 ME%N]88R4EF1+DE:)SNC&]I:J9O-W;G:^H-S;*4&^A%*IM]YXR6^J2J@F:& $ M!I:B=Q-S^@=Q].R:OX^C'U)0C;%9) M_/;BPU_>O.KTSM3P(OH/72A9]1/O"EYD="%PVKC/=(F.!3O!M+:"U] 6Q:RH M\35<\J3_HR[+5Z03Q+K:W*!BS (O2R^PE>33FM[!K9XB9%,"0DC.BAN)I>RS M1)V#8M^$IZ>2H%91U.A2C4=D"=8EL0FN,4X-XW_P7Z-)<.>/#I**# =YJTK$ M/,_Y!MXE0DA-CH@$HK-C+9Y11F9727( M3)I/5^0_!CUEL\:4!N= .A8CC-R!7LTF"Z8/"#!KM%/+"U%H*J4 R/+ MW"7I6%1/7BF\[7-E"SA+T/^0V^-=0_>R=&T&J31GA[1 $#38;:S=F [S14#B"QV/[$@;G1,%S8*7/PBK,4WET_'4FJLY:;AUZ_+?B M(27KI[BQF1CH&L\#L7@DBQ:W8K S0Q*=EB]>"A4!GE5NQ"MB<[8<'XG_KAD: M[A4?3GI*#7=V8FV3 JZY*?'<+0NTA-=>5J^T4'CK_7/T[.,?DN7J^U?/CJW' M040WN\8WJ9[/PGGFX U'@ MP94$4KXF[(V^9%!-UK[XUM44S+B%N_"HV=ZTP"C[]H51B .ZZ3!<[4NVY-/^ MO'LR-A=P4JFE1&XK#FRT2YD2C5E#*)G4>%,XN\CF2&QRI6]DF!C'C%(.7KTX MN)]1_\[FCRZK,,QTEB[0LB17MFRIC1X465<(C5,+@BMDQB*[KUH[^IFJFFU1 M&<"\9;'E/)D+Q4%8J+DK)7R,!(<*\_EC,P592(M*Y"%X>6?U1%*?Z'J*/;8Y M=YB?[?86#0FY9+@)O?)WRK_-<%GDSCO6S&RCQI#+ZPLZ^9AN\FGB.-V6B 5: MHK'!Y-'17KFPF-$%R,O S/,L0?W !:3!]NP9Q#?;'8!B&#IU3SF&09&M ]B!N M",.<6J[P1?;S)IOAL*?%!H29&TJA@7U*C3C Q&SI?^7DA[J8*S;A-DJ6G$PH M$6,Y7IX+?9$UBUBY+\<=N=S+$_R@8Z#!66RN1TMQR/5$KP#)O<)+U>@1KA&4 MQ'[2NXG MO>%\-./-%]@"PEALMQ=S45K((*OL:C>@=E]B*B 9/]U<2ERRZ\UR*>$:UY@, M@H81&+_D:2-!7*&;*9#M&WAD2Q;FMQA!U-[(%1PT#)OF>\C/(?U$4IQ$/7/* MQ1-R/!TVL$*0Q-)FW)8S(AJZCP54!_U14\RT(5N2FQGP-QP@J MP/'#^?F5!/B1(,I^ SR8Y6:1JKY[*PX/0\S7)G&?GC @M03[QLKBT;/KRPL3 M$(ADN'3F[(C))[0-I.FA[$:!Q+,"/28FE@/-I'2@'>$Z(6ZQMFD1=/QP/FP= M%)=)<)TU4D+'];3-JNZ4#R).N22K_ T.R%K]3+RFMND=#=HIH2B96CU H ?@ MZ)[G^09>8DQ?O-5?HW6ZU^W\V=B%'E-*EYBE%OG-H&ZP"M@R2<70(,1U >SP M7Z>+C\@3V"290(R5Z(!9KB4/F#2.FPW\5<"4Z_MML]P]\836)W[JGD>5<_K= M,Z.G7Z$(^/@E5I!\8M:VM5#N$I-5TL.0'6-BU\P<,L'PR,C,TE?I=?]E%UX@ MD7$FP(&V=0M5DYE MON2L>5(U!GZ"G!LN$-K/@MZ_H2"DI]-[X 8KF/(J]$017H":K@[BC+%2,.:I MRFY9IRMRA/D"%7?D'8F#N\.;RF)EB=<6[7R>D+1+YVU&'DQ#SZRQ$S&"6)>5 M8L^PXUHI F1"K=>U75=T\N7N W@!;"G[Q:<6""<$@_FD-A/%PYY[N9+[-\&\ M5&]/G3"R">3BNI(9Y1*R0?Y>Y5T;)X)F9A#+1>_0QD0/CR27C..,UA@EC'R% M.W96>+]Q*VT0T MY""C;I@".RZ6-*+??@(2GD:#_OCX1?2.68?ZKOPGD1,'FQ2'\6Q&AND]6)9/ MP3O9%M/(498=1S!%N'-.*!2KTQUB4#8LPVU&K*<3*=BT8][7^8VZ,+]KY+'9 M_%&5\D\8QXL[:UY\8T8>FWGA\<7,,8Z[P\=O]7$[T1,00]/HV4?)$..=K44NS%-VUR&C5OQ @"XIJ$6I@HK/L4$GU$+:HDHU#<:)%A$!7.-X] MJL6[4S#$.2R!*\308$3O4 F.KP3RZZIEV;+E=)$M!2^ )5:KQ6" !)W32UCW M)2D+G]C1Z,I"2$I/NQNX/[SUD7.1@$.RF\EKWE3&#Y;J$.+H;YO9K160@78W M2U'_C8%=C+;,7U"(03)8FE76Z]-!#8N%@<;6N$A>'->BI9=J#7!)H:S7+8!D M9+=CI0DO#VNOJYQI":ES'BIR2IF"C(80EVYST"\1A4TR33'E.":'IM0$ MB.V!ANE+? .-V9HHI[!!?--BLTTH^-@#@+1F'T3]$1W12D,PO +A\C3"S9J! MDR]&&CJ?(FJ%N5_8SC7+YIA"*II.X6TBN8KQO'!>)QA OYA1 U*.AP[PI"29-41?FF M4!&90.?YQRI$E">8YUUO48..V$Y6T.GDHX\#)$_6VB!3<]B)V![0,.YR18IR M1(8Z9ZLQ7#[&/DTQ*":CP)I]/Q6BF[ ]F <&)X4N$7)W"OH1S/FV(/N]X5I- M+]P?0[.N9P('N+.=DUZ%#WQK;#3 I>;HO=_BG#1Q/7J_T?WT]S38,;JK\_LB MFSKW<,*0:^AZ8 ]^B%&3EEI0!OR+Z"_F=Z7L)Z93>TUS7HC1X?9<7 M;XT]PA"[?X\@PCAH90F,*JUX0Q243IR! M!^@#*JYD?."_D4A@D^*,=U6L(<'A"4XR)P-1Y$\CB8%+BY<' @_LDP!G), ;]35X@RYWS)":1XK+05NF-@LIPNSQ;51&XN.L..Z<80HDR<8_#E:+!54');9UAG3UV2 MFNHF(%F,WB7BI*R.22Z;VVECXB('TZ,QK'&.*-)F(ZS4TFI=;&),HQMT(OX- M/8*">JPU?-@/?D_9 [CH0@;LG'.CI=<1LJ^0K_>AR3'U0G(N M"U]G\>X1VF9*:4QG-I:8*P12JB?WXZP,K80K'%.J!=-^.K.6(I3U$HI=H+AF M7_FD43@'0G@0<."R,%*PTZE[(Y*IPO$7_LB.2A8M<8LI\8L/>(#<.62W*&>T M\K<6AQ=?31@-2FMWK(L&@\TY$8'T2L93D!I,I=B-*;(4:\$*26,*\.6A\Z MBZ+XB:.O[43K)H<6A5WWS&7V%.0&8I;LMM,ET;BQ*&C(L^'_ 872M?13L9R M;'42E+6EZDU=VKXB-U](PO8N>C;QSXK-S1K%'D=4I/V2P*D;-&E909@1;F\X M/X]%5TI(EAPG"JS\*IG3V$C9LF+%$CTMEGZ-G,Y:P!K4VYN%M2]#)PX=6U', MO=2M;IW<)W #4-:PH&EA!H7'%0)Z%$4L/I09B)8HHC-ND.(S]!?*@S!V,YT-63%H M[_ PNXR& H,]K33 E])IO#!2JO8$\Y?&1&.84V)&@M%:F!Q[BX M;E3K@9]XGU2SY.?H!TZ*O4Z);-Z1D J<=,[QP&)?R @5$F.?00CZ*:6;.6I[COF.*0K,%Z MA!>E?3K^/:68&C4O64PE MJ"V.GO=/AC:+BQ^P_D;_].XSQN?=DXEI+_#^CN'NX@=B)N68'0ZHD#.[("$X M,=( YLXAQ!M7\A;%E8,IB)=;TV563C=+]'CBO8WY,QR1: 29H7CG4+\ I3J)7'!+MA2P@I+*?;KU\V#$* EY'*XX>8W\9 V=> ?1M'5B[ ME/3>TY@"1W8$/:,FO(Z0!^76J;'&F&\6G$EJQ!P^[;6-;IF6"6US;F?CJM&3 MZ/)H7 ,[*[K#T9 M[ :_;S!EO[W86":-TNVGQFA\B=#5[+ #\AL[%;-_AF.1SIYT+@2)*'0PK(._ M0BUWYE%&G< >.*+1!%E*]*]]$73\N?FU1A@4LH1:QXZIFB6U@HWJ^8$]H?O- MWBIOFIT\)'6-9*\%;U%.4/-SK*1(?H9DV@)7GLQZ?+XC<7YZJP36$Z>ZE1>] MD2"K0)@8Q9!AWW(QNW1;$Y7@4*G4$S+TD$D(;WP)C#36&1Z>!!*AP0IEW&I3 M]TGS;1FEATW&!@UFYL%-"K0B MZ!.2S2!\@F=#JG@ OB*DT.%<@HI:[, U&1.A$^F-[AYI^23ZT/A.$MWGI"M+ MQG*1FU#UG#' R,6.T?@;+?ADH$Z"252DA!@3(V/'N4X:&XXH$3F('35WA@S\ MB#T@&'U91D?/+CZ\>O?LF)(!W=\H5[@*CP 57A.# M7)8[RJ+#.]BEBUWA<,G63N.Z_)).-W0V/B",$E;^^A!"'J'%M#81?SNI:8-G'*R!(@EM9GW0"B.;H\?IYM&: M #[MLA)PO1(.$7\B\&S$R*Y\81(VZJ\*\OIIAV%%5 9U$?AEI\)@S22-T4+A M,OFK$1.X<1S$"/;\\B&ME+;N4C6M5-<,3%^3". MD46N$LD1@Y$LD@=,.A*41F*$$EFFGE?C&_M\33&P\(;L@NG+QCZX-:7FZ8R$ MCXP70=Y5]YL38\G)?4CV"X%A7Q;<$RYL@M3O'DA<918H3++ ML^5F23/1^ P";X+)#(X-6@"GLYB*G=8#0R7RE#.9,.V9$87(Z#. \<-T1CP- MZ_'WYL.4,#P6Q!"6J6P-KVE1EN)?X40&6P+!;TX,_15,?8(PO$F,+I7DI4+M#MFL^MYJL0+R27/ 5))H]E00SB MB\198SB5A=0R!';B96![N1K1_FD=H63!\^N7FO>'"2R_>(:.$1+P"%9F3'^L M;!JBV&Q=P^[M>$="#@(:X_E5^36@" MW=R-&,BL>F+ HG8MN1W?(FKQD(A%!=?>/U53 ^&^972C$B^K)P]V$XN\84M3 MGQ"L.Q_?,EV7A5$EG&*,&@F*@.4,1GR?2D5-)P)!U2(X]UQZ="I/DS\0D0[7 MDL*(3RD^A29",4W@X3&16JF2G1.XRTND<:ZM47ZIEL(26E0.&GROX&7#>MK5:.0R9LO-*_-UJ7?)3R*!IL]DF MU=>$7OKX>I+G3O2*S'I-.EIT MC>:\O@U(:M?=J0ER2<6119>(V\W-KF]XEU[?\#?5C<#J93K/FQXD#Q/"6+PD'CORG&66T=U3F-OG2$0$(;QIK'MPYG5&+VH#SJ%NG4:%(HK^G91%126PVEC7FX]F@ M7-^HC1 6O9C$K#GEH]**NP^S9\-I2T[(#F<(42:*9VNL"(8/W(E=V4*G:XOX M;7A\4H"Y>1:L3S>;Z_M.:%[SY#E $;4+<9_+-ER[ MH$42G; DBJ?X+\1U7 E3..NDCYSUE4T\?5T"Y2(V&+&!_O>.UHG=.$]^K!-R MN"J3:AX@UX26[5Z MYC:?3 P)%BBC,!E-X6;=W:T)S48.Q0%O*N-+<>F++:Z2HI9+P@0)) [1.(J6 M$\^\R4$OY.)9MUQBEK J*TJ,)/9"^$@<:)3=WI%"@U;U6QJ)FV^VR8L;-&&( M7DB!J/7$BY9518-(>EN4'*W'A2[>XBO1(.!-NLN@_W)Z)ZCC.3 Q/L1.53%" MV7 6V DYY5QTEE,H0$^7IM MY+6;':OKMQ@:;V9 L4*:G\2Y+FK>K GKVH5;'. K9E4;569"UE;LS:Q1KW)B MU:-(MQ><<[<<"_QD-DV-!%R@*:PHD[QDM#QAP"2HHKW%6*+L 4RD_$V;&J@* M$ZV8A(>:\$#ID))C(\4+2$J8,%4$IS PR01PH+'5[>/]3JRZWMQBE-6-*)O2;]!NT>N"\,%P\J=7L#9$OG7L1W0VP&G0QT@"UJ#6BQ M'*M3S+P+5+N^X=I(]I[G\#_SH MS'!T16RG),;BUY)09F+!O\4>;E9HIS!6C69MX1;.?=;I]6/?U"^\^G084GL= M4R9R(.]%8Y5 794KU!28%$8-4!V1@G9FE7(1!B-B)'ZC5N>"1IL,RJXHB5X< M]DEV<77#^2!+AC\CJH4\9PWH7!K++%9O9$(140V2!$,]A6+33^O,W* ="PW2 M;GB29&3*I6U<\[U_X'L6##EDKK8--H58Q6G_JLO>1=X-TTN_2Z:3CZGD\D8? MN8@!Z5EZR0_QDG_-8,*>D>G2#C[<@F=H-J[MVF*;2Y,W1=)2N':GP-N(-554 M7+U""(9'D"M0X,#8\R[6KW"@*69P=LW+S]\I-"CG%^R M/W&29YG6C6H$M\!HYPUX3*ESB$/R 7J8@9"FDWS8J5$D 0_]7)/0ZGJ[6Z?AH)9*V1VB= M+M0TSE7]-.>Y%; W^K)IO MT_*0TF2.@8<72[$4,]L0B7#.Z WM\_!M8K2I;"Y)AU9S#/B<\<.M*7LB,"Z& M_1IW*@IY.;(!CPN$1T?#84,,3<]&EWRB6+!Z9_:FQ?G\E+(.1E<4X_["1>9! M B/4>9[,$AKD6R0T??(XCB[?79Y'1Y<;=!_&T;ML-H,A7"85._W.Y_(8?;@Z MOXB.3.U(+.KW$/UWBO(FR W7L/YW*;YX7F7C>)> MMPO_BGW'^>8T/IM,O%_XFX\[RB5 Z>GPV@0GYZ-H[-X=-J-^G'W[ R^'\(W MI_'H;"1#-1AHSZ->-Y[ 6\_E/?AB&(]/N_Q+=W)* QOR+Z-X-!E@##C9D&[= M:C\2*_'"TMQSZ/T,>L=_^_TQM=/OC^CS9.!/D+\ATAO&PVX/I <_B@^.^WA MZX.NF<0I-$6$-XB',&YM@S^-8MQH_8X_?8,9&T;W4@'WPFQ(L@P-+)^@Q^V$ M='6\C.3+E*Q&_33NX:;TXF[_% 3_0,KL(ZWM74 MCL5@,C(!9FKVDE9J7VMLA@?\*?F]GF=OM;-W ^6M>N+1>#@X!B8PWF/H)$NQ M1<-4T_-&'G7LJNG. U_MC\;(9KKC?H!#&X8L-XXSB@_.*$)+B<,N%N$M:^V4+8[&3A M+8&MV!R"R.:IF4M1^3;'T3&\?)DZ*V?"CRP0+#+,A?(17B,RD?!^2?F@&KZ1 M4S60%E_&2!X.M3<1XZV\"LMN,+]9ZCH'^4@5=68<("D$A7\;@_X%MQ--A/S -)J'MJ[M]Q/(13TCA&HW@R[/-5#V*4 M[8=OX;IJ]UY!D( BHVO$7JL_<:E6XRM]XE!=K]D'U5^94M"-^8&!WP1[;J-5 MAC*)D-08'7I<+*3J8^NHC\V&KU)C(HHMET6NJ >V/%',^<48Q5E2)4$/9Q:K MM%V?5UBBS1(4\(1YFB'QPAEI$^8Y:$=O9W)BQ30.5J2W#1>8,(OS< MK%/,3XOKX::-8FC)*0..JN)1MM;VX;$]2JYW"XWD@@5P+$56JB>&,I2@Q8Y. M .,OX.,KG8]3*^=-'IZ-N^=1^YZ["[_2Q%MRO/@>%6*G)7EM'V5^[-J.=7*5 M70<4U9I+[^)"(<&:MFU*YQ M?3$5UX$K?NT[0![9$^6^:QX %>[".\H&,E]R#080M7$M8097<*>AF@GL=1R? MCKH-IGJ!XC"^=I\L\";;]3L1.*.N4-\.,;77P6HT0E^D;JO!U*VFLNCE:?O2 M],&*Y[G&O*/.:"#F9ZW?NV$K(+\\*D(B1>9'1[UCO#0G\7#<=?\X[<7]X<3^ M@<\%7B<#JZV-D@E,E@$/1%J"ER=@^41;SE,HP:M%2$!VQ K56\)UCS=E! MW.NA97W2[B.@G9$:8% Q/",*'<>C84B6667XW#5*F W=D$6C;4**\_:E MHXQ_8 ?UWO6E542:WOWA=[UQ]WM=KQ@69P!42<;!'NBXIWV1)6-'J5\0B)D- ML:'X!(EI4!,!W61)4RLS)@2#HO?\]&308PRPP,F*YK) MQ:!M-08@%9O(-%20B5V.)T70W!H9WMC+;#$4JA3QHV=WA)WN6=Z$0;G%DJQY M:NO9U\D1.S9QG_)8L7-WAVCQFT_L?#_A3R $ U.'+P8N*I_KNJ!)?.,A[SA9 MXJ..HQ]<-Z=-B5)+GD-F+4TXR!0'"FE/&(/QK;O?;4?';* LO/C_(T &@C_\ M#_K%MT&_$/05 V)MRCJ9+8N76"UL1& MKW6T6D441I6:D_5L?;\*:P7B*&"3Z@VI;9(+-DA1"'^KG0H0));,V)6S1!/N M MVNAB"-GPENG@R]>>R1=_8B,()V9*P4D_O=/B]@18!R00Z8,PI2W41UG_@O+Y\ M9@6#(-Y*)28 P:TK.*"00M4UP%%3"G L"PIP6*O=@#B^;$A;31(DFD=^44'$ M:I O)ILJYIPG:,P]0N$0-IY-5OIUVQ2;43B_*N6.0\J6\Z&$!H-SY2R?D\+$ MDZ*M2&6[. :8A)QV[)5/5$=1RYV)?D56\I10RF0]G%?A:]X0M_X;HK\(B@'E M*MR6$B>+VY5AL6#0D68@+BV2>Y) YR#REU+0CHCV%H1^X)L;[-,4#1(H:)Y^ M;;W=V;M3MBY*3GI\_\,U]7!U\?&[G^%_$OD=W6<@U@0!:^AQ^P,(K]2?K>5E M_0-8&R88L_:C4Y>"D7W8,_4D;"&"%HK5D$$+]AU=I3S[[1!#3:2X \ZJ.:#. MND/3>,I,$IV,[]?%.[KFDC#"\KSI(M0G=I$BW I-/C0K)S/3XCC7ZF%1/KO2 METD@!X&R0^4]R%2[;?JQN9@))ITC.AZQ\*:I.X0@!L,"T4?&1\2*T&0!7Z) M[I!B@>/-*G+W^Q'H?+QX-8%%( <0:,VJDBX3N/,POR*#<8$>^KA R@C,J)7 M[;$L*OI4"59&D\$)-:.4&JVR54IXCGCE$N_:3E:NC,RX$P@'24?)X:A&?#1% M0CAD14/+\ XQ%7,=7RX66M4J) :2%%%\"-\#8[%(&+ OR$7@T;WA 5IKP$XF M0>=B+2^"1D?@1S,;,?T)!C9+HG.M'$#2Y@R= 8CQGM)MX,X/7[X5;&Y!*A4YR2CK;R'"G M?*V&/\4BE&FM>D<8-Z591>!U*["1&$;2M!7?\-Z9X5!1:^3L1:<;T6],03!D M=&7:JA$Q;=G/-J%/=N^E&F)>J2'&$1"MPL02(I]S*TEK3J"BUDA0OE04,VLQ M9P^_$=U2!UN&TA184G2 ,5V=T>@/=-+-:E:;%<,]WIGM,\Q+;CD-B#-*DSYW M!YQJREC%:G0A>P&&0I$EHK1-"468/>?:#HX7RT),FG[89:TJAFEJ_;A*[1K) M!GAX@%J+RH$(-=Y\)?6IK[O8RTF5XX4NOJ.0N/D$B)2BV1.J!?.AI3Q\ULFZ%ZK0Q>- M\_^"@P<8&M*;93\>#7MF'OQI& _.['?\J75F&$ PBL2SL9?NL<2RC21^&-^K!,HW)]P??G0UP.2?P?UC.T_%$]>+3?O<8_QWV)QA><309GAYSH."X'TUZHZAF'(F.^O \;'K_E/X=G8Z. MHU?;G7[#,WQG<#HX)A"]X$F#KD_1V4># *(<#(YI[5IWR2P)_K#/3I@7A(?N M<%4::+X415D2)G#J]>50F6"3VQNFVG\TL86/= $A51FF!>(T3A[\#G9)H5\= MOGG0$I!2"#+=&UK6T)JRB.O52>.)$5/[,RE_ 0_F<<'7K]NF#5QL1-DF0XY^ M[9WV*?1+1[#"_R.%_BR=8%-;N4Y3";Z?02#_KW]\F4$C_S>,#CGEPM@ MIN%?7D4];&,PV:ATG44Z:DQWA9S0.,?'?0(9_JP\QA*)Z@XY]KL1\?U M$_38!]*<[ H-3W%B$W^V=@EZ7?C?_^MVC2&=B\C4&,+)>@X7UY7R@YM^*;MJ MXTXIN$P<"D9J,Z >,AAQ2:D=:WN4P)X$HM>^FW[GI]M177'MHQB9Y__ M:&'-1++@)@W'&'IQ>CJAS$3F6:%OZU[&E06QU,#E8JF'T(YJ..H@G':R[:T>HK,&IA(D\ M3A)F5JCNPO! DW(+<^I+EXRXK2.I#94&$HS!Y,27:K-$9][?D8D$>"J M&!10XW#DZ0I#4B$F(U(;1I3R.XD'DV'@1/TR ^SQ6) [$ .DY+I)/.GB'7]& M=WS#5V_!&R[O0W&ZC0>VA,8TGSW'^@OW!E1ZF0$-K#%+BXUB5VKO=0)5/DD] M4L[2SZ8DP5G+&H(/KLIL8J.HL8H&P$9+Q6^]\K% 2/Y MGTX1F6=N/5#P6*-RLT@5C.16\FO,A>$D.E#H[A<&6T3KZS*CT$9H^_KR IJ> M6PS@L(6(8>:-AWF-%8S%QZP*&R9#K2G#V;>/PC.4MBSXA<" "2IGSFYS6 +/ MNNJ"@;*?4L?UM,URT803S3?^VR;G.%UKV;=-[X'\PE-"Z2,5-P)CP$E\Q#F# MN'&,$L$.(1_J=3M_-GX;RB3EJS@0)OOI+MTK0P*#*IL7 F+5$GEBP>-[UTQY MP"RE0!1[L!#EM9$UB_OM0-^XGF%:G_BI>^Y!>;IG1CF.UFOBX^=I!$\CDOG^ M@;)E:@*2U1?#V%\&W@U']K[ @F@FMVSO91=>(/X1XVWDV.5VJB)S"*8-KX1( M. 78 PZ^$/LV9[T1_:D\9AD:^M!,1@^3-OM,"YZ^BQ=Y$BH:82;EW!37!K^. MO2%:D 4!P+06B\8.&[!-B]"/$&^T/&:CPX4;7+Z(R9H'E"T@!UK,E<&]NN . M["JY ?:J9A!$BG !HXR<7$G.O%WSI&H,_ 0Y-UP@$==CQ(=N*"+@Z?0>N,'$ MK5(A#(:D'E6'<\98*;A89;EBWQI/%7*$^4)ABBV\ICC9<[PV%DX*E+@$W6*6 M2L\$)" Y5YCGM& '1K/(?=#8$9N /3^\2T'=#H7,<%",R6"(*2AI6?V1\B_6 MCT]JT^314>F_)S2A>"-\>YH(18GNTY7DDCPS"FVQ.*/ZM(*X"RI '?P0$1(5 MX13.>LGW&G?LK/!^XU;:(*+SD$E3]Q:P:)CFOGD1XC;19V*&(.*<7W\&$><7 MKU^CX0FS&>D/>[ LGX)WLBVFD:,L._XERT^8L LZOI6MRQVN 8G(9>/]2 M1,^D,!,GSR&06VDP"FID45GD/N"2=>WC,^?":#9L0_NL_RY@[IY(\73(5!8T M\?)$!D!R HE !J-X4YFP$U,3*';P.>A.1VB E0./@DB+@O2^-I GZ HIOI%$^=I[0,])IY/LA'I8H:)NC# X4UAH1(6*\^EZ M0[#6R&5:/:W)W 0+ MX"UU0O817]-L5/*!.&I6-S "#NGD%RB>0(JE9"/45?ICU6(I$_0 EIO$:G' M&JL*.MO,.'" !/2_-DYW)!-C ,!P4I>G4E3P1B/2@(>LL!S HPE2LS&VNI

UJDLAMX"9DUZD#WSG M;+3H(N?CN$4/6H]VHK;=6FYBL&/"/%;H0ND<&WQ IIKQV4I";-YS^O[%_.XX ME9")U]TX'W+AXRZN%&2/3-%$)&)1\.6\!$L3\GM:E:XH M]1VLH&B, D^KFFA-!]^B8.*!0KD#5/^M"R&2UFYJ1\UL7']C>(S54W%X/-9W M_ZD1UNXH3T>@0!A/NH#?*8I!($\AP-HT=2%F;40[OH.^BI*S:)R=7R5K9.PD MM)DP"7@1WLP+-SZ2V9]S6%S) P>'_ O[O-_9)VXVR&*:=G<$;Y!H0-6#(U.$ M@1(E*T,PIOB5S?G2,BI68W-Z1&D8WA M[-PY(I3B)E44D2N1[89CC.$Q :V2' Z1D"M*MJ1H3NJ/DL.,T7B%\-*SC=B7 M NRT'GQ13ZFJ#*?^&;@*[)$#OV["5LW-Q3ALUGYB"%'+"%.\GH>:+^E=($@F M)ME#DS^X5)*4919A5%;'B>HVT\94'JG" !=ZXQQ1&JT!-_=#>ARAJTS6&I2- M<-4::0Z7ZE2=+U*5@Q9=R(!$L<+=8"YS3D9[]B/ !D*KIG@HQZ^[S)<#H&LH MDS)XK1'BA-%@$@J]C&EQP;YLKA^L(MD#A 4Z5%Y;)JF9B"-A.D"NAD*MY/Z( M2*^\#I4.9,/^/A#+(DE["].*G:+/A;F.D'T9RR\#4>[Q[A MR*TOC#UB$FX8@)7\Z-R/LS*T$JYHC=$R-D':F&M0UN-,:$KS\%57&H5S((0' M 0:3A<*-X%!2;TC M8Q>H'PV'3/XI2.1$H-Q$N2NVOBFZMUM\$D;@UY+,U8C.>\M+H=3E@/(:GHE< ME>3EO8RVJ&52=3U-N,'ZUTJ,%&XKP:6T.FB[Z"R*XB=.G;(3#45/!-1]W3.7 MV5-R#(A9LMM.ERX:MU-S3_E.0!UUS>T4Q1N0K4Z"LK8$8->E[2M%F&Q(V-Y% M7X5+-NM^I3.156!)K2#,@?JV##EQ"_1(0 $1K>V$!,IQF 3R,-GGRL$]"@* W:CR<*! M:>&%IHJX5.!F#@\P.4N'^/[2<9BE7^X2NH).W. VZMT!H:$&*4A"?R',=F-U MT]D4N>X='F:7T>#^^5K/5 ,97&/;EFHU*LBVF+WJ'J:&_:0)#E:FIAX#\'Y]"M$4T%PP6BP9M!4#*&EW)7DA$0#@_(HMY N2TM4(=>8 M5RF,Q:EX(,/*N*PPB)%KS[L;FPJ.%,KA['(%6\PA'3/**G4PMD$GD0">J0E) M%P!A?N)]4LV2GZ,?&$W@.B4J8OQ18*QS2DTNQ-R0$80*Q8 OLI^H!"*&2Z/H M9G22';6ULXK!BNG%0)7MF.LGVSO!::]1V;N.HU''M:EM@5HJMNY"XOHJS+ ) MK5)2_37-P[2@-10"/6I18ZZIY4_'2>MS]1Y:26NL*U.J/2ERK<=0U2%!(A7; M%4Q91YP5F=CJ%;T_5^J>VG],<4CT8+7" ]H['?\>Q^5%7TL)3;_2>!H,E#:) MF^@2'OZ^^5(XDMKD3)Y7C=IA'I#S\_[)T,67P@>L#] _O?N,T45I"[V_8[B[ M^(%833F.AH,RP$.Q-JM)3,KIYLE>B'Q&I]E MTS4'3$F95.D+1X4)K(_08EFM'8 75WB;2VJU5R%<.=0OP"E,Q1 OC(#09+*9 MP,F0P'[7^PMXSM0KHY%U^NC'S8<C6M@9T676W/] KP?!0>$:@S>5J:#\+N9!SU \8C&HG&> M/SI"2?-E,\' >MAN[^FTN3/#3AWACJL#NR$.VRCW2:I!B$Z)B#TPU 1OR Y\ M6BF6D+A0B?B M(6D] :H$*E=^911IW 'A+%+&-!7")R[8N@\L_-KS7"H# B5$)V3-4LJ15L M5.T/[ G=;_96>=/LY"&I:R1[+7B+?D_F)>_4"DOSC]> M7N,WZJN,HZN3MR=1C^)PQS%RLE4B&1,PDD7R@"'X*6=_$O.4$ ]U@1@C]>=K M"F6#-T3B,7U9)V3B5/^9IS.*8+$ &?BNVL&=4"E.=<'M6F3+C!6:%U'O6&NS M,YZ?"\=#5GEBZC?)]"O%.D4.1%;'P M&6S",66.+0QRU4+"H>" (_+%?)@2AL<"F<'&&3IO@IY9EF+HY+!> M!R'$T1E)#>8R,K9P S9)I0QDCQ4TK K7]0:Q)!.8P>D"D=IPNI<27 =T2V(M M="O1V\2)R#=&T4K)(^)=TX)RN"3&-=@R18; G#Q$ME\KI'-")0N9>V==$DO MR+F1<-[V8+1_X'0H'>?\^J5FUF"(^"\> V_N=#S6E1G3'RN;Z",6&-=,,_?N M8M-8K>I\,IM5+7'U<63"D= CI:, 'KY(IN*4]IPG_)K0&?JP&@%.6?7$:"3M M6L*^OT5(TB'A2"P#')(,I5$NWS)T28D7%QXWS&PBS*:N&:N%%]:=64*9KLO" MR,0&#<^&>2$^)Y5+@=\[4E/.NA?5> B\A)BL7UP%<2G7#K@*Y8P0N^-4 Z8) M/#PF#"-5LG.B\GB)-(AM"U2#1KPQ+2I7#K[7\%/INZ9J6UM>:&R#T +!\[7] MOM%<:EL$VDWSTX4A[9=UEEK15W%FJ:[H)VEDE=ULDTQGXJHL?*:324IWL%2Q M%MPFXZ)]]>HG/>MW-=FNI$F MR, <1S9_.VXW'KF>GEUFSX;UN&[249OQ>=ZT!WM9UT97U?@(H2(8@ WNKZO% M:B+A$P -:<),DZJGM\O&AB M1Z;49!/:.Q15X,N."%4>B(Y&^81L'0TKA5U+Q[Y#7@AFXKI_H6WGVIC9W$DT MVT)ZW#F=49L7C?.HVYH8 _+O:5D@X>7I;>(;P64^MM@S^R"-I\.&_XFF2Z+; MG#*^:,7=A]E.Z;0E)V2':9,HDT UL( GU[:JY")0S$IM$;\-CX^7(' 6K(SV6S':\\TMWC; 22>MDNB$)=%@E47E MK),^4BA9.AD4XZ;$;N6/RF6!%$^ZFC+)3O+KL,./UYX"33G)5$#=Z$'OCN! W^Q M +'$2E)O4++AS+/HI7C6S>,T./XT[HY/W XMC*>K;:K5E5-5U;^N/-(KZZ5N M?#_Q)['CCE:(\#3-X*QZ6#,^U*.#9AU(>34[5M=O,>[5S( \_YI\P('LFIY1 M$]:U"Q>__2MF51M59@)05NR;J%&OHUMLVEJ), )MRG*)"\9 M+4\KAQT;:U4!5F&C%)-C+!/M(AY3Y%FDJ<5+"A%%!YJ ."?-U M4#C5*>C]3JRZWMQBG-1M")O2;]!NT>N"\9&A)1I6YO M(+$%)L750FP&W09T@"TN!&BQ['DO9MX%JEW#ZQL73U6">7#_]5HG\L6P4PJ8 ML5X! _+3K#BB1BRFRK*V,'9TGK\!5\1V2F(L?BW9(B;0\UOL(57EM%8-X-P& M.8H!1UHX]UFGUX\CSWT@O/IT&%)['5,FD#7309E5Y1$+P[B(EN[.M9\&!/#GS'A79ZS1OEDCDS +%9O M9 *+4 V2["$]A>(G2.O,G+;6N?-I-SQ)DCDF5^5P>O MH=D4@:PMMKDT>5,DYIQK4PGRA5A31<75*X00.B2I'04.#%Q/9[?LJ11TO;ML MY66C>5>K5T&G-#-X^^;EAX\42)#S2_8GSN JT[I1C7*IN3S-K)[ CXT'EV?7 M4: 0=]12LX9B(,DDQLL@7O-'(4OCA32$R4YU_RB)@]SD 98X!#\\CRD(60KI MMY(*7T>QZ_=_14)O>GA8H/KH2"1'GQCHH_XL**#)[6U)%A%/'-LKZ(*"M]J@ MZ#U<10I@F-G.2! 3N8^2%96"F4O9W$535\C6VQ']+U#&#C_@_BR7^G M*#7"[7\-ZW^7XHOG5<9]7< =DAR?F&JQ]2B2K\%G_O6+H+RCU-80F=BR*'I0 M?BME49YK893G\IZ+O\[E49[+^P:0_4HL0;#[\1G!,O?C?G_< M@(9W)^B Q0_C81?KQ>/P&3@>7A]TS21J(/+:A@LIK]^U SZ-Q[XRJ5G3[ MIR#W!]+AX,=!?#8\DZ4\R]G;"T,<3BY&<"S")&\,4W ?1@SPI@:X7$@_\@,#B9I'= M2L@35A>I2 4#\CREI1A,1B9.22T=TDKM:W7'SUQ93!*T/&?.:F?O!A]558.C M\7!P#!L_WF/H=/&R$JL%Y?R11QV[:LK6X!#V1V,DK>ZXO[M>1/VPAD<5.](D M.G=H'WB@O#I//LWFUK>+KC.I"; .,Y75Z*TBD%G<#] M08B.4++J'C391RG_UAAS ]2X)C<)&LHBFFTT.@_#S',!<"Y*RJB)7?P]U&)I MJ?RDR#I(0UD\)@M&=B-09$,60$#)PEN"] O67*Z,5.Z?4)Z:8:Z:IL@A7HP# MC.&>9N5,%(N%&D0 HL4];Y2L$6G:O%]4&[2J8V" 5/\W*:-)BR]C)$.YFBU* MM/!7T6I35AO!XW!39LQ2U[G2QQ2ACV8MHL)^< 5=Q]]3P\7$\A)/7.)JC>#+L\Y5QVG/Z86Y>/ZCO M%2@#*#*Z)GR>-AW"P6VO!XYJ((9I"2MRHPF9&G1R\^H19ON<<&I$6/U]5FVV.!9\L;# WGB-7/- T![ I&O#;^[9!S=-SE:U9!XKH#<402"E1_' MIZ-N4XK!Q&9\#91&<3"TK/845/S-@N$N\:74>8DASU#X$V5%=R;8G??F.G15 M-P41+Z''O[4/%FK.-423*OE=&F[7]KWK$06>]JC(.A1(2L7BX"!-XN&XZ_YQ MVHO[PXG] Y\+O$X$:8&M,X%7,$GG[F+M:]CT@IP"B']!#^^6K;=%+H(!AUZ4 MG!L>D[/2*S#5%$#UU!O5E/'BS0\.0T".RO20 >U-@5ACBIRCCILJY![=18_L M8>W)OWWC<17]L4DA#DU99C200*Z&LL MJWB7>8/39O$L=R$T@INMKG#BI28WW!E[K<=5 M^_O?='W>LA\4=\ST0E4.XP'+#H-X-$:* ^$)P=W=,'4NOPH+*O]S8G Z/Z8_^"%C] MMBVIEY#;1AH!D..]2((C+P-O?]NK5-H'V75ZA\5*2> ;C_#8 %%,QO:)LIBG M5$U'L+B*S1KE?C6/1?,4WA[$O1X:?B;=OL2.]D9 !"-5^5!L/"-2&\>C85.< M<0MR7K@%.5O9$W#/WW#[#J]S\=1MOF;0'O$#PO&F\I C..(?KS^SZ/_Q M^ASNO[.S"!GP%7X[&" KA0\O/U3 =2?1>'2ZY]Y2V:VU=3U=*+8^5U%K.*\\+\WFJR&T%G4C&LX,@7)0UWAZ\!T;>JP_0V5^/&$ZAG#T;Z# 74P MO-=] M6<@2UY?HT(9TEETOJ.1B.X)/L]>(K)P7F5; 1G$S$OCZBI8">5F978 MGQBA&T\(9H>CW8E.!(=5&BP7M4>=R-7B>IX<:UM>Y)TI+LJ"LYG]:MQ\=_EK MHQEP]3?\MKM6WUG' :/+'/:R-BAV<-/E8_/TMT M),--L%_-VV U)E3^M9G(K7LKH71 A;*9J5<425.36@@[2-')=D[V7T1,DH3L MR84UHFT0-6WID27=,[F]T(IR)H6'^VS)-&PJ[IV=LEW3?M6?C/"K@?,5JF#P MU=#Y"CV%?60F$G6H!E%]HC>(AV=#X46:+LP;)I#\581Z77PZ4JT@([UE9O.! MM:VCTWC<.SOFB48?G",@,QO'O<&P02@^"U9)O4XGOLRSH8Q :V D+F%O,RQSZI@X?<11HJ0<-_77B"X' M;)N#RWS$U 27[DE M$\C.ZE1."2[)-991-1&+:/Z=*(4W-H[TM;-!P#S!X1FQ7X_>YO2I#\$%/MG' MYJ,X=L;W]/74&D8D$9R-[8 4!#0N>5JU\!P!G#:B.-GN!7G "ZS\9PQ3D=VK M;%!*^1L+2I$ #7Y'W+L2FL%OB:?WPA0(LE>8XIZ\8$L^&]B\6?9C5&-T'OQI M&*/&8J\._-0Z,Y1-1_$8QC&,S^!Z@:&-^]C&<-B'00]ZIQBF F+!/@HP-M:/ M!Z $C\XPU.5L,$8EJ=L#X0+N/;A5)K(\>GJF6V:-8QE-^C"\$3"1WIAD:OCN M;(#+.8'_PW*>CB<:<]P"KP+WU1GZ[8Y />]WC_'?87^"M_01L*5C]N3!33WI MC:(:J L(^/ \;'K_E/X=G8+0_VJ[ 6UXAN\,3@?'!)80/&G/Z8KESJ'9WF!P M3&O7NDM>Z;9]=L*\(, R.\Q^QB.B\N )3;V^'.HU!W7?Q%E4^X\FMJ*&"R8B M.=^\0(E3J$[0[=K8Y4ZSA2OA$]>KD\83_9;[,RE_ 0_F<<'76\UKP,5&%%8T M9/=T[[3O&"G& XX.X]_ZD_%>1JE:$0SRX6-8 _3=0YR8DA.54##G_.HF=D3# MPN$W20A\?OY4K66\_=8^4ZW9)_96OK3OZ!Q6"31#6(W?VR]?1O#([PWG='ZY M "X=_N55U,,V!B/GR[UG%@(VQS0>$]UADU8T0,E)/W*F#R2%GG))JSS79C^Z M!8E#FGL@4,ZN$,AL,+&)/UN[!#U0K;>1CMFLFUIT)6ADR5["T@]N=+ 6LBQ3 M%ZQ/4H,,D*3)'),!2P0A^@EV>PGVMA?+6)SH4#\:E&(_.=ZS$>/9%L>Y(_#+ M75D4]CH+*O4N]K(G+_$;64I!Q@FT:Y9VA_GC;>/EG;3FQ7$?Y$S*#%*'B]"H MT "'S]P#W-XRR9U3^D?+NP9;A.T+Z$ Z/9U0^"^S_="W#?0I#W:FC@$55'U: MK#NY9[VA9,AV*)ROCHI_:<),U5=?AT^ &0^C'TL@JPZBL@7+R-@1*B]S"CL@ M4Q8%'Z9YC_EIH B[=2;TI4LV&>E(:D.E@;17J/SH("M=85;!JZ=GC%02]E=1 M=$OV=ZJJT+Q7;E"?9T,@)JKK>B3ZE7Z@>R)%$EQS#=Y^O7T5'SU$5 M@/WXI/M1;[/GW4O-'JWV_X[^3W3Q MZC\[XUYOZ'W7.B=]J-[KNPR.RAI=)VJWXH/>6,I-:>PF*RJ_C6;6I7D;A#I, M F;E&=%=@: :AB*@2_R^_O6GY*=TEK0.\:4BH2=)C[U0H[%JX1V]SPNBT&\CS#-YM$D/#^W(B2@N<_P_SL%[ M#-2[;+783ISO#29HO;#(_XFVSK'^HI>\UG@X>&.W;;/>X3$5E&(M6@3X^J/] MX4FWVY"R0T)#6V>GXU +H13'3M1,9M3G#N=7[6UMVRXC4;=-AR3KMA])RF[[ M<=NB 3'L['G'^UL'MJOOKQBWFCVOL6+Y4QOQ[$ZNG=[L64N[VPE_GV7=V<+6 MA=WY]I-G%CXA%WZZB-&+#S\??BY9ZZ];4\GV&_.Y10'S?!S-(3OYEZSZWR\4[Z+3[34NINT)>+%L7_TU#1KXY>?1@TD$YL'A M-;_\F07F[-Z@FSB>D-1O_YSNQ+O_ 9G3R.JVAXW8=SK M+9[1>IO)EZUMODM+. '."Y],V1L6JN9HAG/H0HQ);T&R1?>XC0W[Y7J@:1$: M'/&DO3N^YHBTW4/^8"' H)-*,-H"DM>(XXB?WO/>ROU$/M=A*+61GH''$&W,@ ?YB'=,15A/OAWR+Q>-7&=&G MA^(W,2(B],Y+BCVQHVLGO?(61(.*3@>Z XT5_9N[!)I!)D;-!/US>M?9K&K8 ML*5*2U-C798, (FSHVS+KQWH-89 I;?9M,8EOSWIUV^+K]SIK^ XO_+(#Z/1 MJZ)<%^V"7^WG_=F$<1^0PU%*3H4\)(.PJVA;QUNY07&/T"];;B/,K2$QVI47 MR[;(0Q..W7!-=%M,%XT1D+M.N;!RT['B&"_'EL-S$7T[LM!FCOU[VG,!P%R6E+:]NF57-8>N]I\@!J-\+I M?TBWW@;UMCZO.J W81/2U/ZO;M&+L^4-Z(+;650#+:9#)&KKAS;A9 ZW\->; MP*&^L^ RCAJY32UD? M^+WI-^!9;9Q4"7(D=@(\]EF)_C\$^2T!9K/5.M@84 MX,-MI/'0C"T7@]!%;21A,MD"7M%^QV\))6 M-7L[D,F6^SP,:G(PB9M R,.WVVO3--F>3]\Z!H4$>>LBDQX\G ;T2.L#^R"/ M-#8*/>.-$]Z&+M(:/ 37_B( ,_>G?]_DQC9WAB&6R6)!%$=&RH9#V5A;&8SA M@X QM.V^"VKBC=,-^+IYC(+@)VC]W7YX9<'%UULS+3?LHMUN*)+F?9%W,(!Y M0^=SOVE-1J&6?'R*+9$<4\E0OR^X#J[DU#1#!H,#WCYK1!IWZPW?0G7T>9:].;$F3T>QBI_PW,Y\X@MMVG6'5H@8#W-+WG@LT M"A^NO=K=MBH$0<-8-)^W7]O;:=[AB.H'L\&]+6?!&[V[OU?>_FY[CQZ1KVAV MVPFAY 2@2#HE0&!?LUH6&]4-[KHM*)/1QGFC#3<\NV\SC$DPS/=K>CAHB[ZZ MB^W;U9M\JW7J]28M"_7D+O9?J&_1Q;:%VB*4M_YT*9G.AVL=K:GFKKU1P]>-X%NU-;FI9A;= M^D"(ML"DMBE-IRW3=6,IVIYYG=Z<1/W)UF="<9OS]1]^USN=?*^8?EOZ[G?U MX<8DDMPVW/;0]J7:IIPQ]A#FL4:4!!<5T^EF!:?H$8Y36W?V\KO99(L9!=\0 MGL$,[]N6V7YD"'X"'6NL!(8V8[W(3('!;-1N2$U//?P!MZ!=>T/M#AH.\VV( MYBUJD!RM)FY9EE--K88^50/VVI*QY2$[;7E.0VJX?B&G9]]BYEW.%9*D-N)= MNH#%)JO@ K:V:268I4O.<=K35TI &U-#6X\,%YO4$X%Y:=\66P3.ET59&T%7_%(3X;#SDXX@V MN$L-2_30O> ,7MZ1H.^N?6(":]@Y&)ZS89X2A,ZA)O/WAT&?= U@\>L[[@E: MZCC8W3XS]3!$ZPV,0YQY]R2VMKEK/\D7>J70I4U QL,/W/[XH_N_Z6-';5VB M6!-W$?Q"L!4/790:BB&OBC:V=T:3OW-!*T,(W3/P8",@'D/E ]\- M\- ]_5 M03[#3"(,\MF4HT-0GV%I^T,[BZP?GJ?Q)?T)_V",]C>TF$X#!9= MK]6ST999=\B06QLY8 &?TL:!PSPDT^P?U>YA^W=(RP>L]3=J]A^X3-_R$#R- M"<+UCJ8#LO 0)X0[CXKQH88M!N"60J#Z '1A% MSN.(KQUO,7\,@X:&KYC'RW:E_RS45=#\\A7]MZ.+]-H,-D_MZM46YTVHJT%P M $$RP,)9'@:["WH/]JWM_:Y/>T4&2#)FT?GQ8B,/$\6*@X< \$VOB78QG.# M^?CU@_&A'=OMMK7.O\V MS#@:=-&/-3ICE$4%K6R/TZ^_/Z;W)T]^__)GU):A"9C #\"4UAK,I,"/+3B: M?ZK;N=N4[V8*3Z?=1KY=1?<V L;L/5UL!7JB'5X+3)3=IPAUTN M@IE=?PFEB3BA?ZU9'?5W-E7G-DE6_Y]]%]\XS^F?X'O?5=7Z3_\74$L#!!0 M ( %.&J% TE=)Q40( +H+ - >&POL!NF:I"*AJL8+@87A9[[^["7;Z 2_>";^*?@$'3X/ M_01Y K[8 QY!>Q(O3:+7;5H2Y8*/>W<.G4.3$<-@C6@,KQ$E*TE,5HX8H1OG MGAM'*JB00.FFT94#XZD?73AP(]-/'8<1+J2M[2JX[U4W?1+H1T8@H700.(?. MD4054@I+?J,'=K)U_A0"G;W<5%IA(=$FF"_@F& ?NLA*R S+H4P >U<249P; M.9(4I7DJ47DFJ)1@VL@(*@1'5D.?T1D:FV)*[\V/[6N^PVYSX.:8+?$A,"IZ M4Z^Z,\==\ZWD;9IC;V,/XX**K(7ZV.CE<#LV/8?O),Y):\=M/@C0=%15=/.! MDH(S[!;SRX+!@063"/5U0"DD>=0\TRJI=F )P1I+1=)MSW>)JB5N5=].;7ZH MYOD1:G[I]UQ@CB6BVZ)U[__/;_D?*SZ_^'/)]E]E*O@%-9JC\PA$+HY!9'@, M(H^B)R__LDBO.QNW#N"=XW?P@E5#J"*\DUN2+,-.C[G_Q/"+N5C1G4-P/(4U M7J&5ODCO\'5NAG/44'5GEFB#,1SMST9X$ ZSE@,BAJ-]BS/2L'>VX'A;3WX M4$L#!!0 ( %.&J% 0F[H#'P4 +DJ / >&PO=V]R:V)O;VLN>&UL MQ9I=;^(X%$#_BL73K+0LY(MVJE*I+3/=2K,SJ'3[NC*)"58=F[&=MC._?NVP M=&Y:N-J7*YX@CN,<'.QSKYWS9V,?E\8\LI=&:3<=K+W?G(U&KER+AKL_S$;H M<&9E;,-].+3UR&VLX)5;"^$;-4K'X\FHX5(/+LYW;!! MBF?WZWP\9#Q4>!+W?#D=C >,M]Y\ELH+.^->W%C3;J2NIX-DP%;2.K^(]^YJ M-E++1OX457?DUN;Y3V/E3Z,]5XO2&J6ZJ^*)[J)P!_=:\B"LEV6OHN?+.QY8 MIX/).#3X))U<2B7]C^F@^Z[$(/R*$?@973_L/K>=>&;_3S>:U4J68F;*MA': M;_O1"A7OKMU:;MR :=Z(Z>#:/ G+YKP6$3O%R]FU%97T[$N8742O)S%9),2V6+1+)[ZWH1+[ M]/1VW&*"2(@-@6JL%ZTDF"X28E_L$1G[$)(3)=QO,(#&S)$2F^.]T_8B8A)) MJ5.1-W+;"XAF(<0:.6"Y'2?$Q'R2$OMDO^WV]B9FF)38,)WNADN^C?.;T)+C M8.A 3$PS*7DRTC32;Q]TG'E"2N*EKH4NI0B="C$QS:3$FD%MV)LJ4TPU*;%J M$!O&YPXQ,?&DQ.(YD-RQ(;L7+[Z%F)AX4F+QX'Z$B7*&N2 MUU;4$!/S3T;LG_V8<;S;$/K"Z3W#+)016V@_YF55=5_A$,K0U3!B"^W'?"V% MF)B%,O(\9Q_F7-BN-;@@D6$6RH@MM"=\"\\\F&@XDZKU$!.S4$9LH6NC%%\: MR^,& +NT(6VL_PN2XM0),3$+9<06>A=I#KL(Q.CNP$!,S$(9L87V8+X.<\5N M(29FH8S80H?"XB%;A-8KN/"-62@GMM"!L'C(;G5,>B$F9J&_N[EW++XL7WM(R_BWNRJ5>HZE'W37PR/Y5T; MN[=&+_X%4$L#!!0 ( %.&J%"WT,(/* ( *4F : >&PO7W)E;',O M=V]R:V)O;VLN>&UL+G)E;'/%V3<\LL9/W_*I'H]=6YIC7U9OYU-;-E4S MCOV7$,JVR>>ZW'5];J=?]MUPKL?IZW (?;U]K0\YR'J=PC"?43T_S6>N7G:; M:GC9Q6KUHQX.>=Q4X>T4?G7#:VER'DNX7.+=M&"ZY;W/_[.^V^^/V_RUV_X\ MYW;\H.+O@BI\'"3+04(/TN4@I0?9E!< QG7_"2$-5_K"+B.?*\C #ORQ8Z [,@W.P*T(U_M"-B.?+LL-GK71PS9?;P%Z"U]O 7H+7V\!>@M? M;P%Z"U]O 7H+7V\!>@M?;P%Z"U]O!7HK7V\%>BM?;P5ZZPW.2M!A"5]O!7HK M7V\%>BM?;P5Z*U]O!7HK7V\%>BM?;P5Z*U]O WH;7V\#>AM?;P-Z&U]O WK; M#AM?;P-Z&U]O WH;7V\#>AM?;P-Z&U]O!WH[7V\'>CM?;P=Z M.U]O!WH[7V\'>OL-WE6BEY5\O1WH[7R]'>CM?+T=Z.U\O1WH[7R]$] [\?5. M0._$USL!O1-?[P3T3GR]$] [\?5.,[U+4P]Y]WT45Y_@U02P,$% @ 4X:H4-Z? MG^?R 0 !B8 !, !;0V]N=&5N=%]4>7!E&ULS=K+3L,P$ 707ZFR M18WK5WB(=@-L 0E^P"33)FH26[8+Y>]QPD,"%:F(5KJ;ILDX,S>I=5:]?'QU M%";;KNW#/*MC=!>,A;*FSH3<.NI396E]9V(Z]2OF3+DV*V)B-BM8:?M(?9S& MH4>VN+RFI=FT<7+U?GUH/<^,]\*]B8./A?V_]<#D$2 X)DD.!Y- @.0J0'*<@.&PO=&AE M;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( %.&J%"' =@E-0, #H/ 8 M " ?@( !X;"]W;W)K1"9[H$ " & & @ %C# >&PO=V]R M:W-H965T&UL4$L! A0#% @ 4X:H4,H^&S4\ @ P < M !@ ( !4Q$ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 4X:H4+C.*?QE! X!4 !@ ( ! M)QL 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M4X:H4."T\ JT 0 T@, !@ ( !E2, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 4X:H4" N FJU 0 T@, !D M ( ![3( 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ 4X:H4)YV4Y+4 0 G 0 !D ( ! M!3D 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ 4X:H4.09Q2>Y 0 T@, !D ( ![#X 'AL+W=O&PO=V]R:W-H965T-" !X M;"]W;W)K&UL4$L! A0#% @ 4X:H4)=O5O_A M 0 04 !D ( !WT0 'AL+W=OL! !F!0 &0 M@ 'W1@ >&PO=V]R:W-H965T&UL4$L! A0#% @ 4X:H4!A7W70P @ W@8 !D M ( !%$L 'AL+W=OD1J'\" !"0 &0 @ %[30 >&PO=V]R M:W-H965T&UL M4$L! A0#% @ 4X:H4.A!MT#Y 0 ;@4 !D ( !5%0 M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M4X:H4))/2L9' P ,1$ !D ( !]%H 'AL+W=O&UL4$L! A0#% @ 4X:H4"D6+FT% @ MZ04 !D ( !YF< 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 4X:H4#6P$]7R 0 904 !D M ( !?6X 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ 4X:H4-Q<,VO\ 0 <04 !D ( !974 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 4X:H M4'VEHZD8 @ @ 4 !D ( !E7\ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 4X:H4+]9=C3! 0 AP0 M !D ( !PX@ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 4X:H4"'O!O[; 0 *@4 !D M ( !MH\ 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ 4X:H4/"KGS0R!@ 6"4 !D ( !\I4 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ 4X:H4(9[ MUJ*[ 0 $P0 !D ( !OJ$ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ 4X:H4,(,%Z=0 @ $ @ !D M ( !7:@ 'AL+W=O&PO M=V]R:W-H965TETP$ M + $ 9 " >BL !X;"]W;W)K&UL4$L! A0#% @ 4X:H4 X_=6VV;P \\X! !0 ( ! M\JX 'AL+W-H87)E9%-T&UL4$L! A0#% @ 4X:H4#25TG%1 M @ N@L T ( !VAX! 'AL+W-T>6QE&PO=V]R M:V)O;VLN>&UL4$L! A0#% @ 4X:H4+?0P@\H @ I28 !H M ( !HB8! 'AL+U]R96QS+W=O